init_kprobes() takes too much time during boot up

Russell King - ARM Linux linux at arm.linux.org.uk
Tue Jan 3 04:09:24 EST 2012


On Fri, Dec 23, 2011 at 11:54:09AM +0000, Jon Medhurst (Tixy) wrote:
> Does Linux have some general IPI interface we could use to synchronize
> CPU rather than stop_machine? All we need to do is interrupt other cores
> and make them wait until we write a new instruction to memory and do a
> cache flush and relevant barrier instructions.

Maybe smp_call_function().  I'm not sure whether making the called
function spin until the calling CPU sets a flag is a good idea though -
that sounds like it could cause lockups by preventing other IPIs
happening.  Bear in mind that calling flush_* functions from IPIs is
not a good idea because they'll want to IPI themselves - you have to
use the local_flush_* stuff instead.



More information about the linux-arm-kernel mailing list