Thread (55 messages) 55 messages, 10 authors, 2015-03-09
STALE4140d

[RFC/RFT PATCH 0/3] arm64: KVM: work around incoherency with uncached guest mappings

From: Andrew Jones <hidden>
Date: 2015-03-02 17:05:19
Also in: kvm, kvmarm

On Mon, Mar 02, 2015 at 05:55:44PM +0100, Laszlo Ersek wrote:
On 03/02/15 17:47, Paolo Bonzini wrote:
quoted
Also, we may want to invalidate the cache for dirty pages before
returning the dirty bitmap, and probably should do that directly in
KVM_GET_DIRTY_LOG.
"I agree."

If KVM_GET_DIRTY_LOG is supposed to be atomic fetch and clear (from
userspace's aspect), then the cache invalidation should be an atomic
part of it too (from the same aspect).

(Sorry if I just said something incredibly stupid.)
With the path I'm headed down, all cache maintenance operations will
be done before exiting to userspace (and after returning). I was
actually already letting a feature creep into this PoC by setting
KVM_MEM_LOG_DIRTY_PAGES when we see KVM_MEM_INCOHERENT has been set,
and the region isn't readonly. The dirty log would then be used by
KVM internally to know exactly which pages need to be invalidated
before the exit.

drew
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help