[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] No need for the rcu-nohz patch any more, as rcupdate.c was



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 80890ad194b130af654d8c70b5bf334c96ecf846
# Parent  e9c1d88ab5d01784419d05e181e922bcf95aada2
No need for the rcu-nohz patch any more, as rcupdate.c was
made tickless-mode aware long ago. We do need to be a bit
more careful about ordering in stop_hz_timer() though.

Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>

diff -r e9c1d88ab5d0 -r 80890ad194b1 
linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c
--- a/linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c  Tue Jan 31 22:49:59 2006
+++ b/linux-2.6-xen-sparse/arch/i386/kernel/time-xen.c  Tue Jan 31 23:20:29 2006
@@ -850,8 +850,9 @@
        unsigned int cpu = smp_processor_id();
        unsigned long j;
        
-       /* s390 does this /before/ checking rcu_pending(). We copy them. */
+       /* We must do this /before/ checking rcu_pending(). */
        cpu_set(cpu, nohz_cpu_mask);
+       smp_mb();
 
        /* Leave ourselves in 'tick mode' if rcu or softirq pending. */
        if (rcu_pending(cpu) || local_softirq_pending()) {
diff -r e9c1d88ab5d0 -r 80890ad194b1 patches/linux-2.6.14/rcu-nohz.patch
--- a/patches/linux-2.6.14/rcu-nohz.patch       Tue Jan 31 22:49:59 2006
+++ /dev/null   Tue Jan 31 23:20:29 2006
@@ -1,16 +0,0 @@
-diff -pru ../pristine-linux-2.6.14/kernel/rcupdate.c ./kernel/rcupdate.c
---- ../pristine-linux-2.6.14/kernel/rcupdate.c 2005-10-28 01:02:08.000000000 
+0100
-+++ ./kernel/rcupdate.c        2006-01-31 16:04:36.000000000 +0000
-@@ -227,8 +227,11 @@ static void rcu_start_batch(struct rcu_c
-  */
- static void cpu_quiet(int cpu, struct rcu_ctrlblk *rcp, struct rcu_state *rsp)
- {
-+      cpumask_t mask;
-+
-       cpu_clear(cpu, rsp->cpumask);
--      if (cpus_empty(rsp->cpumask)) {
-+      cpus_andnot(mask, rsp->cpumask, nohz_cpu_mask);
-+      if (cpus_empty(mask)) {
-               /* batch completed ! */
-               rcp->completed = rcp->cur;
-               rcu_start_batch(rcp, rsp, 0);

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.