qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Xen-devel] [PATCH] xen-mapcache: don't unmap locked en


From: Tim Deegan
Subject: Re: [Qemu-devel] [Xen-devel] [PATCH] xen-mapcache: don't unmap locked entry during mapcache invalidation
Date: Thu, 15 Mar 2012 17:37:07 +0000
User-agent: Mutt/1.4.2.1i

At 10:32 -0700 on 15 Mar (1331807562), Andres Lagar-Cavilla wrote:
> > At 17:14 +0000 on 15 Mar (1331831693), Stefano Stabellini wrote:
> >> On Thu, 15 Mar 2012, Julien Grall wrote:
> >> > When an IOREQ_TYPE_INVALIDATE is sent to QEMU, it invalidates all
> >> entry
> >> > of the map cache even if it's locked.
> >> >
> >> > QEMU is not able to know that entry was invalidated, so when an IO
> >> > access is requested a segfault occured.
> >>
> >> The problem here is the long term mappings in QEMU that cannot easily be
> >> re-created.
> >> I am not sure whether this can cause any trouble to things like
> >> xenpaging.
> >
> > It causes some trouble to ballooning - a guest might try to return memory
> > to Xen only to find that Qemu won't let go of it.
> 
> That's the right causation (as opposed to invalidate cache being called
> after balloon).
> 
> All that will happen is that the balloon request will be (partially)
> failed. Up to the guest balloon driver to deal with it gracefully (and to
> not choose weird pages to balloon away in the first place!).

No - the balloon call will succeed, and the page will be removed from
the p2m and its ref dropped.  But the guest's memory usage won't drop
until qemu lets go of its mapping.

If qemu is liable to do this to a lot of memory, that's definitely a
problem.  But I suspect that in fact it won't do that.

Tim.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]