> From: virtualization-bounces at lists.osdl.org > [mailto:virtualization-bounces at lists.osdl.org] On Behalf Of > Eric W. Biederman > > What I don't want to do is have a lot of variation in /sbin/kexec > for loading linux under different hypervisors for no particular > reason. That's very reasonable, but at the same time: What we don't want to do is have a lot of variation in our domain builder for loading different operating systems for no particular reason. And also, I think there are much better paravirtual approaches to kexec in a paravirtual environment: - kexec proper is best done by putting the image in memory and then having the control plane build a new domain using this image - kexec/kdump is best done by dumping the memory from the control plane And kexec of the control domain requires hypervisor support anyway. > We can easily stuff a hypervisor id in the parameter block. So > we can do: "paravirts[%esi->hypervisor]->init();" If you make %esi->hypervisor a 32bit ident and add a lookup of %esi->hypervisor by comparing it to paravirts.ident for each compiled in paravirts ops structure, then this starts to look quite good. If given the choice, I would still choose the per-hypervisor entry point though... Christian