[no direct reply because gmane still breaks it]

WBINVD or CLFLUSH is also needed to safely change caching attributes
of pages that are already mapped. Since CLFLUSH is somewhat hard to use 
for this near all Linux kernels use WBINVD for this. Examples where this 
happens are  ioremap() using PAT, AGP allocations, 3d drivers.

For the PCI-E case typically CLFLUSH can be used instead of WBINVD too 
(on CPUs that support it) but again it's harder to use.

Another case where the kernel uses it is reboot but there you can
likely ignore it. But might be hard to distingush from legitimate
cases.

If you allow uncached pages in guests it is probably not safe to nop
completely (on SVM). You might be able to emulate it by doing CLFLUSH
on all guest mappings or rather on all mappings that alias an uncached
mapping. That might be even slower than wbinvd though, but should be
at least potentially preemptible.

-Andi

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to