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

[Xen-devel] [PATCH 1/2] tools/xenstored: Use XC_PAGE_SIZE rather than getpagesize()



From: Julien Grall <julien.grall@xxxxxxxxxx>

Linux may not use the same page granularity as Xen. This will result to
a domain crash because it will try to map more page than required.

As the xenstore page size willl always be equal to a Xen page size, use
XC_PAGE_SIZE.

Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
---
 tools/xenstore/xenstored_domain.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/xenstore/xenstored_domain.c 
b/tools/xenstore/xenstored_domain.c
index 6d0394d..0776e39 100644
--- a/tools/xenstore/xenstored_domain.c
+++ b/tools/xenstore/xenstored_domain.c
@@ -172,7 +172,7 @@ static void *map_interface(domid_t domid, unsigned long mfn)
                        GNTTAB_RESERVED_XENSTORE, PROT_READ|PROT_WRITE);
        } else {
                return xc_map_foreign_range(*xc_handle, domid,
-                       getpagesize(), PROT_READ|PROT_WRITE, mfn);
+                       XC_PAGE_SIZE, PROT_READ|PROT_WRITE, mfn);
        }
 }
 
@@ -181,7 +181,7 @@ static void unmap_interface(void *interface)
        if (*xcg_handle != NULL)
                xc_gnttab_munmap(*xcg_handle, interface, 1);
        else
-               munmap(interface, getpagesize());
+               munmap(interface, XC_PAGE_SIZE);
 }
 
 static int destroy_domain(void *_domain)
-- 
2.1.4


_______________________________________________
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®.