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

Re: [Xen-devel] [PATCH v2] libs/gnttab: add FreeBSD handlers for the grant-table user-space device



On Wed, Feb 01, 2017 at 05:44:55PM +0000, Roger Pau Monne wrote:
[...]
> diff --git a/tools/libs/gnttab/private.h b/tools/libs/gnttab/private.h
> index d6c5594..1416194 100644
> --- a/tools/libs/gnttab/private.h
> +++ b/tools/libs/gnttab/private.h
> @@ -4,6 +4,16 @@
>  #include <xentoollog.h>
>  #include <xengnttab.h>
>  
> +/* Set of macros/defines used by both Linux and FreeBSD */
> +#define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & 
> ~((1UL<<(_w))-1))
> +
> +#define GTERROR(_l, _f...) xtl_log(_l, XTL_ERROR, errno, "gnttab", _f)
> +#define GSERROR(_l, _f...) xtl_log(_l, XTL_ERROR, errno, "gntshr", _f)
> +
> +#define PAGE_SHIFT           12
> +#define PAGE_SIZE            (1UL << PAGE_SHIFT)
> +#define PAGE_MASK            (~(PAGE_SIZE-1))
> +

Sigh, mini-os leaks PAGE_SIZE, so putting PAGE_SIZE here causes stubdom
build to fail.

In order to not block progress, I will squash in the following patch to
make stubdom build again.

---8<---
From 0f3a98f90939bf49670af3d3259d0a0abd746020 Mon Sep 17 00:00:00 2001
From: Wei Liu <wei.liu2@xxxxxxxxxx>
Date: Thu, 2 Feb 2017 12:23:38 +0000
Subject: [PATCH] xxx

---
 tools/libs/gnttab/freebsd.c | 4 ++++
 tools/libs/gnttab/linux.c   | 4 ++++
 tools/libs/gnttab/private.h | 4 ----
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/tools/libs/gnttab/freebsd.c b/tools/libs/gnttab/freebsd.c
index 25c3daef41..3eaa77235f 100644
--- a/tools/libs/gnttab/freebsd.c
+++ b/tools/libs/gnttab/freebsd.c
@@ -32,6 +32,10 @@
 
 #include "private.h"
 
+#define PAGE_SHIFT           12
+#define PAGE_SIZE            (1UL << PAGE_SHIFT)
+#define PAGE_MASK            (~(PAGE_SIZE-1))
+
 #define DEVXEN "/dev/xen/gntdev"
 
 int osdep_gnttab_open(xengnttab_handle *xgt)
diff --git a/tools/libs/gnttab/linux.c b/tools/libs/gnttab/linux.c
index 9d5dc74cc5..8347ddd3d9 100644
--- a/tools/libs/gnttab/linux.c
+++ b/tools/libs/gnttab/linux.c
@@ -35,6 +35,10 @@
 
 #include "private.h"
 
+#define PAGE_SHIFT           12
+#define PAGE_SIZE            (1UL << PAGE_SHIFT)
+#define PAGE_MASK            (~(PAGE_SIZE-1))
+
 #define DEVXEN "/dev/xen/"
 
 #ifndef O_CLOEXEC
diff --git a/tools/libs/gnttab/private.h b/tools/libs/gnttab/private.h
index 1416194f6b..3ce4205756 100644
--- a/tools/libs/gnttab/private.h
+++ b/tools/libs/gnttab/private.h
@@ -10,10 +10,6 @@
 #define GTERROR(_l, _f...) xtl_log(_l, XTL_ERROR, errno, "gnttab", _f)
 #define GSERROR(_l, _f...) xtl_log(_l, XTL_ERROR, errno, "gntshr", _f)
 
-#define PAGE_SHIFT           12
-#define PAGE_SIZE            (1UL << PAGE_SHIFT)
-#define PAGE_MASK            (~(PAGE_SIZE-1))
-
 struct xengntdev_handle {
     xentoollog_logger *logger, *logger_tofree;
     int fd;
-- 
2.11.0


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

 


Rackspace

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