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

Re: [Xen-devel] [PATCH] xen-mapcache: don't unmap locked entry during mapcache invalidation



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.


> Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
> ---
>   xen-mapcache.c |    3 +++
>   1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/xen-mapcache.c b/xen-mapcache.c
> index 585b559..6e7e5ab 100644
> --- a/xen-mapcache.c
> +++ b/xen-mapcache.c
> @@ -370,6 +370,9 @@ void xen_invalidate_map_cache(void)
>               continue;
>           }
> +     if (entry->lock > 0)
> +         continue;
> +
>           if (munmap(entry->vaddr_base, entry->size) != 0) {
>               perror("unmap fails");
>               exit(-1);
 
CODING_STYLE

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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