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

Re: [Xen-devel] [PATCH] xenpaging: handle evict failures



At 14:36 +0200 on 11 Oct (1318343770), Olaf Hering wrote:
> xenpaging: handle evict failures
> 
> Evict of a nominated gfn must fail if some other process mapped the
> page without checking the p2mt of that gfn first.
> Add a check to cancel eviction if the page usage count is not 1.
> 
> Handle the possible eviction failure in the page-in paths.
> After nominate and before evict, something may check the p2mt and call
> populate. Handle this case and let the gfn enter the page-in path. The
> gfn may still be connected to a mfn, so there is no need to allocate a
> new page in prep.
> 
> Adjust do_mmu_update to return -ENOENT only if the gfn has entered the
> page-in path and if it is not yet connected to a mfn. Otherwise
> linux_privcmd_map_foreign_bulk() may loop forever.
> 
> Add MEM_EVENT_FLAG_EVICT_FAIL to inform pager that a page-in request for
> a possible not-evicted page was sent. xenpaging does currently not need
> that flag because failure to evict a gfn will be caught.
> 
> Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>

This doesn't completely close off that race condition (that will require
the p2m refcounting that's being discussed in another thread) but it's a
big improvement so I've applied it.

Cheers,

Tim.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.