On Thu, 10 Dec 2020 14:54:08 +1100 David Gibson wrote: > On Wed, Dec 09, 2020 at 06:00:52PM +0100, Greg Kurz wrote: > > kvm_handle_nmi() directly calls spapr_mce_req_event() which is machine > > level code. Apart from being ugly, this forces spapr_mce_req_event() > > to rely on qdev_get_machine() to get a pointer to the machine state. > > This is a bit unfortunate since POWER CPUs have a backlink to the > > virtual hypervisor, which happens to be the machine itself with > > sPAPR. > > > > Turn spapr_mce_req_event() into a PPC virtual hypervisor operation, > > and adapt kvm_handle_nmi() to call it as such. > > > > Signed-off-by: Greg Kurz > > I have somewhat mixed thoughts on this. Putting it in vhyp makes a > certain sense. But on the other hand, the MCE event from KVM is an > explicitly PAPR specific interface, so it can't really go to any other > implementation. > True. Same thing goest for the hypercalls actually. So I guess it's better to keep this dependency explicit, as long as we don't have to support non-PAPR KVM guests. Please ignore this patch.