Re: [PATCH] KVM: nVMX: Clear reserved bits of #DB exit qualification

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

 



On Fri, Sep 21, 2018 at 09:00:50AM -0700, Jim Mattson wrote:
> Even if the documentation is stale, backwards compatibility requires
> that bit 16 of the exit qualification (corresponding to DR6.RTM, per
> Figure 17-1 of the SDM, volume 3) must have the opposite polarity of
> DR6.RTM (just as bit 16 of the pending debug exceptions does). If
> DR6.RTM is set, then bit 16 of the exit qualification must be clear.
> Certainly, on hardware without TSX, it works this way. Now, perhaps if
> DR6.RTM is clear, then bit 16 of the exit qualification should be set.
> I can write a kvm-unit-test to find out, or you can ask around.
> 
> DR6.BT actually is an issue. As you point out, it will never be set in
> the exit qualification for a #DB exception. However, it may be set in
> DR6. Hence, when we try to infer the exit qualification from a
> prematurely modified DR6, bit 15 should be masked off.

Ah, right.  And after digging a bit more I'm pretty sure DR6.BT truly
is reserved-to-zero in exit qual from an architectural perspective,
though I have a sneaky suspicion that ucode doesn't explicitly zero
out the bit while transferring its internal state to exit qual.

Anyways, I agree that explicitly clearing DR6.BT is correct.



[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