Re: [PATCH v2 0/3] Kernel handling of Dynamic Logical Partitioning

2009-11-30 Thread Nathan Fontenot

Eric W. Biederman wrote:

Nathan Fontenot nf...@austin.ibm.com writes:


version 2 of the patch set with updates from comments.

The Dynamic Logical Partitioning (DLPAR) capabilities of the powerpc pseries
platform allows for the addition and removal of resources (i.e. cpus,
memory, pci devices) from a partition. The removal of a resource involves
removing the resource's node from the device tree and then returning the
resource to firmware via the rtas set-indicator call.  To add a resource, it
is first obtained from firmware via the rtas set-indicator call and then a
new device tree node is created using the ibm,configure-coinnector rtas call
and added to the device tree.

The following set of patches implements the needed infrastructure to have the
kernel handle the DLPAR addition and removal of cpus (other DLPAR'able items to
follow in future patches).  The framework for this is to create a set of
probe/release sysfs files that will facilitate arch-specific call-outs to handle
addition and removal of cpus to the system.


How does this differ from /sys/devices/system/cpu/cpuX/online ?

From the descriptions it appears that we already have what you are trying to
add and you just need to tie it into DLPAR on ppc.



The DLPAR and hotplug operations need to be kept separate for ppc.  One big 
reason
for this is that DLPAR operations on ppc are driven from the Hardware Management
Console (HMC).  It is (almost always) not possible to DLPAR add a resource (i.e.
cpu, memory,pcie device) from the OS.  There are HMC = firmware interactions
that must occur to make the resource available to the partition.

Second is that there are times when one would want to hotplug add/remove
a cpu but not dlpar add/remove it.

When a resource is DLPAR removed, the OS has no knowledge that the resource exists. 
Likewise, this allows the addition of resources from the HMC after the system is booted.

This is a feature of ppc partitions that allows for the dynamic movement of 
resources
between partitions.

-Nathan Fontenot
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


Re: [PATCH v2 0/3] Kernel handling of Dynamic Logical Partitioning

2009-11-27 Thread Eric W. Biederman
Nathan Fontenot nf...@austin.ibm.com writes:

 version 2 of the patch set with updates from comments.

 The Dynamic Logical Partitioning (DLPAR) capabilities of the powerpc pseries
 platform allows for the addition and removal of resources (i.e. cpus,
 memory, pci devices) from a partition. The removal of a resource involves
 removing the resource's node from the device tree and then returning the
 resource to firmware via the rtas set-indicator call.  To add a resource, it
 is first obtained from firmware via the rtas set-indicator call and then a
 new device tree node is created using the ibm,configure-coinnector rtas call
 and added to the device tree.

 The following set of patches implements the needed infrastructure to have the
 kernel handle the DLPAR addition and removal of cpus (other DLPAR'able items 
 to
 follow in future patches).  The framework for this is to create a set of
 probe/release sysfs files that will facilitate arch-specific call-outs to 
 handle
 addition and removal of cpus to the system.

How does this differ from /sys/devices/system/cpu/cpuX/online ?

From the descriptions it appears that we already have what you are trying to
add and you just need to tie it into DLPAR on ppc.

Eric
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


[PATCH v2 0/3] Kernel handling of Dynamic Logical Partitioning

2009-11-24 Thread Nathan Fontenot

version 2 of the patch set with updates from comments.

The Dynamic Logical Partitioning (DLPAR) capabilities of the powerpc pseries
platform allows for the addition and removal of resources (i.e. cpus,
memory, pci devices) from a partition. The removal of a resource involves
removing the resource's node from the device tree and then returning the
resource to firmware via the rtas set-indicator call.  To add a resource, it
is first obtained from firmware via the rtas set-indicator call and then a
new device tree node is created using the ibm,configure-coinnector rtas call
and added to the device tree.

The following set of patches implements the needed infrastructure to have the
kernel handle the DLPAR addition and removal of cpus (other DLPAR'able items to 
follow in future patches).  The framework for this is to create a set of probe/release 
sysfs files that will facilitate arch-specific call-outs to handle addition and 
removal of cpus to the system.


-Nathan Fontenot

1/3 - powerpc/pseries kernel DLPAR infrastructure
2/3 - Create probe/release sysfs files and the powerpc handlers
3/3 - powerpc/pseries CPU DLPAR handling 

arch/powerpc/Kconfig|4 
arch/powerpc/include/asm/machdep.h  |5 
arch/powerpc/include/asm/pSeries_reconfig.h |1 
arch/powerpc/kernel/smp.c   |   17 
arch/powerpc/kernel/sysfs.c |   19 +
arch/powerpc/platforms/pseries/Makefile |2 
arch/powerpc/platforms/pseries/dlpar.c  |  500 +++-
arch/powerpc/platforms/pseries/reconfig.c   |2 
drivers/base/cpu.c  |   33 +

include/linux/cpu.h |4
10 files changed, 581 insertions(+), 6 deletions(-)
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev