• David Gibson's avatar
    [PATCH] ppc64: tweaks to ppc64 cpu sysfs information · 64ec66bb
    David Gibson authored
    Currently the ppc64 sysfs code registers an entry for each possible cpu in
    sysfs, rather than just online cpus.  That makes sense, since the sysfs
    entries are needed to control onlining of the cpus.  However, this is done
    even if CONFIG_HOTPLUG_CPU is not set, or if it is not a hotplug capable
    (DLPAR) machine, which is a bit misleading.  Secondly it also registers all
    the other sysfs entries (mostly performance monitoring controls) on all
    possible cpus, although they are quite meaningless on non-online cpus.
    
    This patch alters the code to only register sysfs directories at boot for
    cpus which are either online or could be onlined (cpu is possible, and
    CONFIG_HOTPLUG_CPU and an lpar machine).  Furthermore, the entries apart
    from 'online' itself and 'physical_id' are only registered for online CPUs
    (and deregistered again if a cpu goes offline).
    
    Currently the ppc64 sysfs code registers an entry for each possible cpu in
    sysfs, rather than just online cpus.  That makes sense, since the sysfs
    entries are needed to control onlining of the cpus.  However, this is done
    even if CONFIG_HOTPLUG_CPU is not set, or if it is not a hotplug capable
    (DLPAR) machine, which is a bit misleading.  Secondly it also registers all
    the other sysfs entries (mostly performance monitoring controls) on all
    possible cpus, although they are quite meaningless on non-online cpus.
    
    This patch alters the code to only register sysfs directories at boot for
    cpus which are either online or could be onlined (cpu is possible, and
    CONFIG_HOTPLUG_CPU and an lpar machine).  Furthermore, the entries apart
    from 'online' itself and 'physical_id' are only registered for online CPUs
    (and deregistered again if a cpu goes offline).
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    64ec66bb
sysfs.c 10 KB