Mathieu Desnoyers wrote:
Yes, kprobes is case 1: atomic update. And we don't even have to bother about Intel's erratum. This one is ok. That's mainly the alternatives/paravirt code I worry about.
Paravirt and alternatives should all be ok because they are done before SMP bringup and with NMIs disabled. NMI watchdog is not setup until smp_prepare_cpus/check_nmi_watchdog, which happens way later, not during parse_args/setup_nmi_watchdog, which just decides which type of watchdog to setup.
I originally considered the NMI problem for paravirt-ops patching done during module load, and found that I would need to modify stop_machine_run to have an architecture specific callout to mask and unmask NMIs. I didn't imagine that would be very popular, and VMI was the only paravirt-ops that were considering module load time patching, so I flushed it.
You get some other nasty issues as well with run-time switching, like missing early init calls (in particular, we would have to go to some heroics to retake the land surrounding the APIC local timer interrupt).
Zach - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/