public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* wbinvd
@ 2007-10-26  9:33 Andi Kleen
  0 siblings, 0 replies; only message in thread
From: Andi Kleen @ 2007-10-26  9:33 UTC (permalink / raw)
  To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f; +Cc: avi-atKUWr5tajBWk0Htik3J/w


[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/

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-10-26  9:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-26  9:33 wbinvd Andi Kleen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox