Re: [PATCH v3 5/5] mips/kvm: Fix ABI by moving manipulation of CP0registers to KVM_{G,S}ET_MSRS

From: David Daney
Date: Tue May 21 2013 - 12:21:27 EST


On 05/21/2013 08:37 AM, Gleb Natapov wrote:
On Mon, May 20, 2013 at 02:01:26PM -0700, David Daney wrote:
From: David Daney <david.daney@xxxxxxxxxx>

Because not all 256 CP0 registers are ever implemented, we need a
different method of manipulating them. Use the
KVM_GET_MSRS/KVM_SET_MSRS mechanism as x86 does for its MSRs.

Have you looked at KVM_(GET|SET)_ONE_REG interface (not used by x86, but is
used bu arm/ppc/s390). It looks like it is more suitable for your case.
Actually you can use it instead of KVM_(GET|SET)_REGS for all registers.

Yes, I suppose it could be used. One problem it has is that there is no way to query the set of supported registers. Also you have to make multiple calls to set multiple registers, which involves vcpu_{load,put} for each register.

We will definitely implement it for all the FP and General Purpose registers.


Code related to implementing KVM_GET_MSRS/KVM_SET_MSRS is consolidated


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/