[PATCH v3 0/3] cpu: pseries: Cpu offline states framework

Heiko Carstens heiko.carstens at de.ibm.com
Wed Sep 16 17:48:49 EST 2009


On Tue, Sep 15, 2009 at 08:28:34PM +0530, Balbir Singh wrote:
> * Peter Zijlstra <a.p.zijlstra at chello.nl> [2009-09-15 14:11:41]:
> 
> > On Tue, 2009-09-15 at 17:36 +0530, Gautham R Shenoy wrote:
> > > This patchset contains the offline state driver implemented for
> > > pSeries. For pSeries, we define three available_hotplug_states. They are:
> > > 
> > >         online: The processor is online.
> > > 
> > >         offline: This is the the default behaviour when the cpu is offlined
> > >         even in the absense of this driver. The CPU would call make an
> > >         rtas_stop_self() call and hand over the CPU back to the resource pool,
> > >         thereby effectively deallocating that vCPU from the LPAR.
> > >         NOTE: This would result in a configuration change to the LPAR
> > >         which is visible to the outside world.
> > > 
> > >         inactive: This cedes the vCPU to the hypervisor with a cede latency
> > >         specifier value 2.
> > >         NOTE: This option does not result in a configuration change
> > >         and the vCPU would be still entitled to the LPAR to which it earlier
> > >         belong to.
> > > 
> > > Any feedback on the patchset will be immensely valuable.
> > 
> > I still think its a layering violation... its the hypervisor manager
> > that should be bothered in what state an off-lined cpu is in. 
> >
> 
> From a design standpoint where we stand today is
> 
> 1. A cede indicates that the CPU is no longer needed and can be
> reassigned (remember we do dedicated CPU partitions in power)
> 2. What this patch is trying to do is to say "We don't need the
> CPU, but please don't reassign, put it to sleep"

FWIW, this sounds exactly like the same we have already on s390.
But back then I didn't consider adding a common code infrastructure
would make sense :)

Besides the "online" attribute we have an additional "configure"
attribute to which can only be written if the cpu is offline.
Writing a "0" to it would mean that you currently won't need the cpu
anymore and the hypervisor is free to reassign the cpu to a different
LPAR.
Writing a "1" to it means you want to use it. If there are enough
resources you will get it. If not.. bad luck.


More information about the Linuxppc-dev mailing list