Re: [PATCH 0/2] KVM: x86: emulate fxsave and fxrstor

From: Laszlo Ersek
Date: Thu Oct 27 2016 - 13:01:16 EST


On 10/27/16 18:41, Radim KrÄmÃÅ wrote:
> 2016-10-26 23:40+0200, Laszlo Ersek:
>> On 10/26/16 22:50, Radim KrÄmÃÅ wrote:
>>> [1/2] adds the emulation (and could be split into two patches if you'd like),
>>> [2/2] just refactors the code.
>>>
>>> This should fix an issue that users are hitting. Laszlo found several reports:
>>> - https://bugs.launchpad.net/qemu/+bug/1623276
>>> - https://bugzilla.proxmox.com/show_bug.cgi?id=1182
>>> - https://bugs.archlinux.org/task/50778
>>>
>>> I have only tested it with a simple kvm-unit-tests, though. Reproducing the
>>> iPXE issue is on the way ...
>>>
>>>
>>> Radim KrÄmÃÅ (2):
>>> KVM: x86: emulate fxsave and fxrstor
>>> KVM: x86: save one bit in ctxt->d
>>>
>>> arch/x86/kvm/emulate.c | 110 ++++++++++++++++++++++++++++++++++++++++++-------
>>> 1 file changed, 94 insertions(+), 16 deletions(-)
>>>
>>
>> I was just about to post iPXE patches that would disable the FXSAVE /
>> FXRSTOR instructions in the CONFIG=qemu build (*), but you beat me to it
>> with the KVM emulation code ;)
>>
>> (*) If you look at the iPXE commit that added them, they are a
>> workaround for a Tivoli VMM bug; i.e., irrelevant for QEMU/KVM guests.
>>
>> ... Actually, those iPXE patches that conditionalize FXSAVE / FXRSTOR
>> may still make sense -- we can rebuild iPXE, and bundle the refreshed
>> binaries with QEMU v2.7.1, and swiftly at that. Whereas the KVM patches
>> could take more time to propagate to users?... Not sure. What do you
>> guys think?
>
> This series won't get into 4.9, so it would take almost half a year
> before the kernel trickles into experimental distros. And updating
> QEMU/iPXE isn't as dangerous as updating kernel, so I like the idea.
>
> I am just tempted to drop a KVM patch with positive diffstat that fixes
> something that doesn't really need fixing anymore. :)

Personally I can't argue either way; I'll just state that the iPXE
patches aren't a done deal yet, either... We're still waiting for
maintainer feedback.

Thank you, Radim!
Laszlo