[lkml]   [2007]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[RFC PATCH 0/5] Refcount based Cpu Hotplug. V2
Hello everyone,

This is the version 2 of the refcount based cpu-hotplug "locking"

It incorporates the review comments from the first posting which
can be found here -->

Changes since v1:
- !CONFIG_HOTPLUG_CPU part is now handled correctly, thanks
to the patch from Paul Jackson.

- The cpu_hotplug_begin() uses a waitqueue instead of a completion struct
where a writer can wait while there are active readers in the system.

- Provided a new API's cpu_maps_update_begin(), cpu_maps_update_done()
for serializing the updates to cpu_present_map and cpu_online_map.
Thus threads which update the cpu_present_map should now call
cpu_maps_update_begin instead of lock_cpu_hotplug(), since they play the
role of writers.

- pseries_processor_add() , pseries_processor_remove() now use
cpu_maps_update_begin()/cpu_maps_update_done() in place of

- Replaced the workqueue_mutex with workqueue_lock, which is a spinlock
and guards the workqueues list.

- Updated Documentation/cpu-hotplug.txt to reflect get_online_cpus(),
put_online_cpus() in place of the old lock_cpu_hotplug(),

I'm Cc'ing the different subsystem maintainers who might be affected
by the changes in the patchstack. Especially if they rely on
lock_cpu_hotplug() to provide them protection for their local data
structures as well.

The patchstack which is based against 2.6.23-mm1 has behaved well
when it was stress tested with kernbench running while continuously
performing cpu-hotplug operations on i386, x86_64 and ppc64.

Awaiting your feedback.

Thanks and Regards
Gautham R Shenoy
Linux Technology Center
IBM India.
"Freedom comes with a price tag of responsibility, which is still a bargain,
because Freedom is priceless!"
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2007-10-24 07:55    [W:0.071 / U:19.444 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site