Am 12.08.2011 um 05:33 schrieb David Gibson [off-list ref]:
On Tue, Aug 09, 2011 at 06:31:47PM +0200, Alexander Graf wrote:
quoted
PAPR defines hypercalls as SC1 instructions. Using these, the guest modif=
ies
quoted
page tables and does other privileged operations that it wouldn't be allo=
wed
quoted
to do in supervisor mode.
=20
This patch adds support for PR KVM to trap these instructions and route t=
hem
quoted
through the same PAPR hypercall interface that we already use for HV styl=
e
quoted
KVM.
=20
This will work on a powermac or bare metal host. Unfortunately, it's
not enough on a pSeries LPAR host - the sc 1 instruction from the
guest problem state will go direct to the hypervisor, which will
return an error rather than trapping to the guest kernel.
=20
The only way around this I can see is for qemu to search for and patch
up sc 1 instructions to something else. Obviously that would also
need some kernel support, and probably a capability to let it know if
it's necessary.
Well I'd like to keep Qemu out of the patching business, so the guest kernel=
would have to patch itself. But yes, PHyP guests can't run this target yet :=
). I'll take a stab at that too, but one continent at a time! ;)
Alex
=20