Messages in this thread | | | Date | Tue, 10 Jan 2006 17:27:56 +0300 | From | Oleg Nesterov <> | Subject | Re: [PATCH 2/5] rcu: don't check ->donelist in __rcu_pending() |
| |
Srivatsa Vaddagiri wrote: > > On Mon, Jan 09, 2006 at 11:59:33AM -0800, Paul E. McKenney wrote: > > Hmmm... So your thought is that __rcu_offline_cpu() moves nxtlist and > > curlist, but not donelist, but then returns to rcu_offline_cpu(), which > > might well do the tasklet_kill_immediate() before the tasklet completed > > processing all of donelist. > > > > Seems plausible to me. If true, your patch adding the following statement > > to the ed of __rcu_offline_cpu seems like a reasonable fix: > > > > rcu_move_batch(this_rdp, rdp->donelist, rdp->donetail); > > > > Vatsa, is there something that Oleg and I are missing? > > I think this should take care of the CPU Hotplug bug, with the caveat > that the callbacks on ->donelist will wait for additional grace period before > being invoked (which seems ok). > > Oleg, do you want to resend the patch after some testing?
Sure. The problem is that I have no idea how to test this change. However, the patch seems "obviously correct", so I am sending it.
Srivatsa, I am sorry, I forgot to add you on CC: list while re-sending these cleanups. I hope you can see them on lkml.
Oleg. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |