Re: new text patching for review

From: Zachary Amsden
Date: Thu Jul 19 2007 - 21:27:33 EST


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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/