• Linus Torvalds's avatar
    cpu hotplug: simplify and hopefully fix locking · aa953877
    Linus Torvalds authored
    The CPU hotplug locking was quite messy, with a recursive lock to
    handle the fact that both the actual up/down sequence wanted to
    protect itself from being re-entered, but the callbacks that it
    called also tended to want to protect themselves from CPU events.
    
    This splits the lock into two (one to serialize the whole hotplug
    sequence, the other to protect against the CPU present bitmaps
    changing). The latter still allows recursive usage because some
    subsystems (ondemand policy for cpufreq at least) had already gotten
    too used to the lax locking, but the locking mistakes are hopefully
    now less fundamental, and we now warn about recursive lock usage
    when we see it, in the hope that it can be fixed.
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    aa953877
cpu.c 4.89 KB