Re: [PATCH] KVM: x86: Prevent L0 VMM from modifying L2 VM registers via ioctl

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 15 May 2024 13:08:39 +0200 Paolo wrote:
> On 5/15/24 10:06, Liang Chen wrote:
>> In a nested VM environment, a vCPU can run either an L1 or L2 VM. If the
>> L0 VMM tries to configure L1 VM registers via the KVM_SET_REGS ioctl while
>> the vCPU is running an L2 VM, it may inadvertently modify the L2 VM's
>> registers, corrupting the L2 VM. To avoid this error, registers should be
>> treated as read-only when the vCPU is actively running an L2 VM.
>
> No, this is intentional.  The L0 hypervisor has full control on the CPU
> registers, no matter if the VM is in guest mode or not.

We have a very similar issue and we already discussed it in these two
threads [1, 2]. Our proposed solution is to introduce a flag in
kvm_run to make userspace aware of exits with L2 state.

Julian


[1] https://lore.kernel.org/kvm/20240416123558.212040-1-julian.stecklina@xxxxxxxxxxxxxxxxxxxxx/T/#m2eebd2ab30a86622aea3732112150851ac0768fe
[2] https://lore.kernel.org/kvm/20240508132502.184428-1-julian.stecklina@xxxxxxxxxxxxxxxxxxxxx/T/#u





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux