I'd be pretty surprised if one was able to write a bug like that. You mean
the CPU sends an IPI to itself and then loops around until it has serviced
that IPI? And this works? Wow.
And on_each_cpu() can call the handler function twice?
hm
That would be a big bug, and surely we would already have picked it up.
<looks>
argh, mainline's x86_64 smp_call_function() doesn't do the check. We've
had *heaps* of bugs in i386 where people were running smp_call_foo() under
local_irq_disable(). I wonder how many there are in x86_64?
I think we should correct all bugs ;)
-