> From: Razvan Cojocaru [mailto:rcojoc...@bitdefender.com]
> Sent: Friday, February 16, 2018 6:22 PM
> The emulation layers of Xen lack PCID support, and as we only offer
> PCID to HAP guests, all writes to CR3 are handled by hardware,
> except when introspection is involved. Consequently, trying to set
> CR3 when the noflush bit is set in hvm_set_cr3() leads to domain
> crashes. The workaround is to clear the noflush bit in
> hvm_set_cr3(). CR3 values in hvm_monitor_cr() are also sanitized.
> Additionally, a bool parameter now propagates to
> {svm,vmx}_update_guest_cr(), so that no flushes occur when
> the bit was set.

Above message is not very clear for people who didn't follow
previous discussions, e.g. why lacking PCID support in emulation 
layer would lead to domain crash? and why noflush trick can 
avoid the situation? Can you help elaborate it?

btw I didn't see any place setting the new macro 
(X86_CR3_NOFLUSH). just check and clear. 


Xen-devel mailing list

Reply via email to