Skip to content
  • Mike Travis's avatar
    cpumask: add sysfs displays for configured and disabled cpu maps · e057d7ae
    Mike Travis authored
    
    
    Impact: add new sysfs files.
    
    Add sysfs files "kernel_max" and "offline" to display the max CPU index
    allowed (NR_CPUS-1), and the map of cpus that are offline.
    
    Cpus can be offlined via HOTPLUG, disabled by the BIOS ACPI tables, or
    if they exceed the number of cpus allowed by the NR_CPUS config option,
    or the "maxcpus=NUM" kernel start parameter.
    
    The "possible_cpus=NUM" parameter can also extend the number of possible
    cpus allowed, in which case the cpus not present at startup will be
    in the offline state.  (These cpus can be HOTPLUGGED ON after system
    startup [pending a follow-on patch to provide the capability via the
    /sys/devices/sys/cpu/cpuN/online mechanism to bring them online.])
    
    By design, the "offlined cpus > possible cpus" display will always
    use the following formats:
    
      * all possible cpus online:   "x$"    or "x-y$"
      * some possible cpus offline: ".*,x$" or ".*,x-y$"
    
    where:
      x == number of possible cpus (nr_cpu_ids); and
      y == number of cpus >= NR_CPUS or maxcpus (if y > x).
    
    One use of this feature is for distros to select (or configure) the
    appropriate kernel to install for the resident system.
    
    Notes:
      * cpus offlined <= possible cpus will be printed for all architectures.
      * cpus offlined >  possible cpus will only be printed for arches that
      	set 'total_cpus' [X86 only in this patch].
    
    Based on tip/cpus4096 + .../rusty/linux-2.6-for-ingo.git/master +
    	 x86-only-patches sent 12/15.
    
    Signed-off-by: default avatarMike Travis <travis@sgi.com>
    Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
    e057d7ae