[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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |