lkml.org 
[lkml]   [2011]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v3 1/2] cpumask: introduce cpumask for hotpluggable CPUs
    From
    Date
    On Thu, 2011-08-11 at 12:54 -0700, Mike Turquette wrote:
    > On some platforms it is possible to have some CPUs which support CPU
    > hotplug and some which do not. Currently the prescence of an 'online'
    > sysfs entry in userspace is adequate for applications to know that a CPU
    > supports hotplug, but there is no convenient way to make the same
    > determination in the kernel.
    >
    > To better model this relationship this patch introduces a new cpumask to
    > track CPUs that support CPU hotplug operations.
    >
    > This new cpumask is populated at boot-time and remains static for the
    > life of the machine. Bits set in the mask indicate a CPU which supports
    > hotplug, but make no guarantees about whether that CPU is currently
    > online or not. Likewise a cleared bit in the mask indicates either a
    > CPU which cannot hotplug or a lack of a populated CPU.
    >
    > The purpose of this new cpumask is to aid kernel code which uses CPU to
    > take CPUs online and offline. Possible uses are as a thermal event
    > mitigation technique or as a power capping mechanism.

    Nacked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>

    the kernel really shouldn't be using hotplug for this (nor should
    userspace really). hot-unplugging random cpus wrecks things like
    cpusets. Furthermore hotplug does way too much work to use as a simple
    means to idle a cpu.

    Even the availability of this mask is wrong, since that implies the
    information is useful, which per the above it is not, the kernel
    shouldn't care about this full-stop.

    The only reason for the OS to unplug a CPU is imminent and unavoidable
    hardware failure. Thermal capping is not that (and yes ACPI-4.0 is a
    broken piece of shit).




    \
     
     \ /
      Last update: 2011-08-11 22:05    [W:2.296 / U:0.380 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site