Re: [PATCH] mips/kvm: Fix ABI for compatibility with 64-bit guests.

Sanjay Lal
2013-05-06T23:21:37Z

On May 6, 2013, at 3:39 PM, David Daney wrote:

>
> /* for KVM_GET_REGS and KVM_SET_REGS */
> +/*
> + * If Config[AT] is zero (32-bit CPU), the register contents are
> + * stored in the lower 32-bits of the struct kvm_regs fields and sign
> + * extended to 64-bits.
> + */
> struct kvm_regs {
> - __u32 gprs[32];
> - __u32 hi;
> - __u32 lo;
> - __u32 pc;
> + /* out (KVM_GET_REGS) / in (KVM_SET_REGS) */
> + __u64 gpr[32];
> + __u64 hi, lo;
> + __u64 pc;
> +};
>
> - __u32 cp0reg[N_MIPS_COPROC_REGS][N_MIPS_COPROC_SEL];

Hi David, I'll try out the diff with QEMU and confirm that it works as expected. Could you just leave the GPR field in kvm_regs as "gprs". Its a minor change but avoids diffs that just replace "gprs" with "gpr".

Regards
Sanjay