On Wed, 2006-08-23 at 01:44 -0700, Zachary Amsden wrote: > Arjan van de Ven wrote: > >> Since this code is so rather, um, custom, I was going to reimplement > >> stop_machine in the module. > >> > > > > that sounds like a big mistake. I assume you want your VMI module to be > > part of mainline for one. > > > > And this is the sort of thing that if we want to support it, we better > > support it inside the main kernel, eg provide an api to modules to use > > it, rather than having each module hack their own.... > > > > Yes, after discussion with Rusty, it appears that beefing up > stop_machine_run is the right way to go. And it has benefits for > non-paravirt code as well, such as allowing plug-in kprobes or oprofile > extension modules to be loaded without having to deal with a debug > exception or NMI during module load/unload. it's more than stop_machine; If we do allow this I think this has to be a register_virtualization() function that does the lot. In common code.