i just did some direct measurements of alternatives_smp_switch() itself:
alternatives took: 7374 usecs
alternatives took: 8775 usecs
alternatives took: 7498 usecs
alternatives took: 8776 usecs
that's on a ~2GHz Athlon64 X2 - so not the latest hw.
i also added a sysctl to turn alternatives patching on/off, and the CPU
offline+online cycle:
# alternatives on:
real 0m0.152s
real 0m0.172s
# alternatives off:
real 0m0.146s
real 0m0.168s
so it's measurable and it is in the few milliseconds range. (But there
seems to be strong dependency on the kernel image layout or some other
detail - compare these timings to my previous timings - they were
radically different.)
Ingo
--