[PATCH] powerpc/kvmbook3s_hv: propagate H_SET_MODE to the host
Laurent Dufour
ldufour at linux.vnet.ibm.com
Fri Sep 27 18:14:15 EST 2013
On 26/09/2013 00:31, Paul Mackerras wrote:
> On Wed, Sep 25, 2013 at 02:10:27PM +0200, Laurent Dufour wrote:
>> Follow-up to Anton's H_SET_MODE patch, the host should be taken aware of
>> guest endianess change.
>>
>> The hcall H_SET_MODE is processed in kvm then in the host.
>>
>> Signed-off-by: Laurent Dufour <ldufour at linux.vnet.ibm.com>
>> ---
>> arch/powerpc/kvm/book3s_hv.c | 8 ++++++++
>> 1 file changed, 8 insertions(+)
>>
>> diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
>> index 998cad3..4a47c74 100644
>> --- a/arch/powerpc/kvm/book3s_hv.c
>> +++ b/arch/powerpc/kvm/book3s_hv.c
>> @@ -599,6 +599,14 @@ int kvmppc_pseries_do_hcall(struct kvm_vcpu *vcpu)
>> kvmppc_get_gpr(vcpu, 5),
>> kvmppc_get_gpr(vcpu, 6),
>> kvmppc_get_gpr(vcpu, 7));
>> + /*
>> + * If the hcall succeeded, we propagate it to the host.
>> + * This way, it will be aware of the endianess's change too.
>> + * The assumption is made that the hcall will succeed in the
>> + * host.
>> + */
>> + if (ret == H_SUCCESS)
>> + return RESUME_HOST;
>> break;
>
> The problem with this is that H_SET_MODE isn't just used for setting
> endianness; it also does breakpoint setting (DAWR/X and CIABR), which
> might happen very frequently, so we don't want them being punted up to
> userspace.
>
> Paul.
Hi Paul,
My mistake, the patch was based on a too old kernel missing yours and
Michael's latest patches on H_SET_MODE handling.
I'll propose a new one asap.
Thanks,
Laurent.
More information about the Linuxppc-dev
mailing list