Messages in this thread | | | Date | Thu, 1 May 2008 16:08:59 -0400 | From | Mathieu Desnoyers <> | Subject | Re: [PATCH] Fix SMP alternatives : use mutex instead of spinlock, text_poke is sleepable |
| |
* Linus Torvalds (torvalds@linux-foundation.org) wrote: > > > On Thu, 1 May 2008, Mathieu Desnoyers wrote: > > > > Yep. I think using a mutex should fix it. There is no reason to use a > > spinlock rather than a mutex here. > > Is there any reason to do any locking what-so-ever? > > If this code could possibly race with something else, that sounds like a > bug in itself, no? > > Linus
The smp_alt mutex taken in alternatives_smp_module_add/alternatives_smp_module_del seems required because this code will run at module load/free, even in SMP context (not within stop_machine_run).
As for alternatives_smp_switch, which is called when switching between UP and SMP, always in UP context, I guess we should assume it could be executed concurrently wrt the module_load/free, even in UP on a CONFIG_PREEMPT kernel.
Mathieu
-- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
| |