All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juergen Gross <jgross@suse.com>
To: xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>, Ian Jackson <iwj@xenproject.org>,
	Wei Liu <wl@xen.org>
Subject: [PATCH v11 01/27] tools/libxenevtchn: switch to standard xen coding style
Date: Thu, 14 Jan 2021 16:37:37 +0100	[thread overview]
Message-ID: <20210114153803.2591-2-jgross@suse.com> (raw)
In-Reply-To: <20210114153803.2591-1-jgross@suse.com>

There is a mixture of different styles in libxenevtchn. Use the
standard xen style only.

No functional change.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
V11:
- new patch
---
 tools/libs/evtchn/core.c    | 24 +++++----
 tools/libs/evtchn/freebsd.c | 25 +++++++---
 tools/libs/evtchn/linux.c   |  4 ++
 tools/libs/evtchn/minios.c  | 98 +++++++++++++++++++++++++++----------
 tools/libs/evtchn/netbsd.c  | 22 ++++++---
 tools/libs/evtchn/solaris.c | 12 +++--
 6 files changed, 131 insertions(+), 54 deletions(-)

diff --git a/tools/libs/evtchn/core.c b/tools/libs/evtchn/core.c
index aff6ecfaa0..5008810f4f 100644
--- a/tools/libs/evtchn/core.c
+++ b/tools/libs/evtchn/core.c
@@ -18,10 +18,11 @@
 
 #include "private.h"
 
-static int all_restrict_cb(Xentoolcore__Active_Handle *ah, domid_t domid) {
+static int all_restrict_cb(Xentoolcore__Active_Handle *ah, domid_t domid)
+{
     xenevtchn_handle *xce = CONTAINER_OF(ah, *xce, tc_ah);
 
-    if (xce->fd < 0)
+    if ( xce->fd < 0 )
         /* just in case */
         return 0;
 
@@ -33,7 +34,8 @@ xenevtchn_handle *xenevtchn_open(xentoollog_logger *logger, unsigned open_flags)
     xenevtchn_handle *xce = malloc(sizeof(*xce));
     int rc;
 
-    if (!xce) return NULL;
+    if ( !xce )
+        return NULL;
 
     xce->fd = -1;
     xce->logger = logger;
@@ -42,23 +44,26 @@ xenevtchn_handle *xenevtchn_open(xentoollog_logger *logger, unsigned open_flags)
     xce->tc_ah.restrict_callback = all_restrict_cb;
     xentoolcore__register_active_handle(&xce->tc_ah);
 
-    if (!xce->logger) {
-        xce->logger = xce->logger_tofree =
-            (xentoollog_logger*)
+    if ( !xce->logger )
+    {
+        xce->logger = xce->logger_tofree = (xentoollog_logger *)
             xtl_createlogger_stdiostream(stderr, XTL_PROGRESS, 0);
-        if (!xce->logger) goto err;
+        if ( !xce->logger )
+            goto err;
     }
 
     rc = osdep_evtchn_open(xce);
-    if ( rc  < 0 ) goto err;
+    if ( rc  < 0 )
+        goto err;
 
     return xce;
 
-err:
+ err:
     xentoolcore__deregister_active_handle(&xce->tc_ah);
     osdep_evtchn_close(xce);
     xtl_logger_destroy(xce->logger_tofree);
     free(xce);
+
     return NULL;
 }
 
@@ -73,6 +78,7 @@ int xenevtchn_close(xenevtchn_handle *xce)
     rc = osdep_evtchn_close(xce);
     xtl_logger_destroy(xce->logger_tofree);
     free(xce);
+
     return rc;
 }
 
diff --git a/tools/libs/evtchn/freebsd.c b/tools/libs/evtchn/freebsd.c
index 6564ed4c44..554af122c8 100644
--- a/tools/libs/evtchn/freebsd.c
+++ b/tools/libs/evtchn/freebsd.c
@@ -34,9 +34,12 @@
 int osdep_evtchn_open(xenevtchn_handle *xce)
 {
     int fd = open(EVTCHN_DEV, O_RDWR|O_CLOEXEC);
+
     if ( fd == -1 )
         return -1;
+
     xce->fd = fd;
+
     return 0;
 }
 
@@ -51,6 +54,7 @@ int osdep_evtchn_close(xenevtchn_handle *xce)
 int osdep_evtchn_restrict(xenevtchn_handle *xce, domid_t domid)
 {
     errno = -EOPNOTSUPP;
+
     return -1;
 }
 
@@ -69,7 +73,8 @@ int xenevtchn_notify(xenevtchn_handle *xce, evtchn_port_t port)
     return ioctl(fd, IOCTL_EVTCHN_NOTIFY, &notify);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uint32_t domid)
+xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce,
+                                                      uint32_t domid)
 {
     int ret, fd = xce->fd;
     struct ioctl_evtchn_bind_unbound_port bind;
@@ -77,11 +82,13 @@ xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uin
     bind.remote_domain = domid;
 
     ret = ioctl(fd, IOCTL_EVTCHN_BIND_UNBOUND_PORT, &bind);
-    return ( ret == 0 ) ? bind.port : ret;
+
+    return ret ?: bind.port;
 }
 
-xenevtchn_port_or_error_t
-xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint32_t domid, evtchn_port_t remote_port)
+xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce,
+                                                     uint32_t domid,
+                                                     evtchn_port_t remote_port)
 {
     int ret, fd = xce->fd;
     struct ioctl_evtchn_bind_interdomain bind;
@@ -90,10 +97,12 @@ xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint32_t domid, evtchn_port_t
     bind.remote_port = remote_port;
 
     ret = ioctl(fd, IOCTL_EVTCHN_BIND_INTERDOMAIN, &bind);
-    return ( ret == 0 ) ? bind.port : ret;
+
+    return ret ?: bind.port;
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq)
+xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce,
+                                              unsigned int virq)
 {
     int ret, fd = xce->fd;
     struct ioctl_evtchn_bind_virq bind;
@@ -101,7 +110,8 @@ xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned in
     bind.virq = virq;
 
     ret = ioctl(fd, IOCTL_EVTCHN_BIND_VIRQ, &bind);
-    return ( ret == 0 ) ? bind.port : ret;
+
+    return ret ?: bind.port;
 }
 
 int xenevtchn_unbind(xenevtchn_handle *xce, evtchn_port_t port)
@@ -131,6 +141,7 @@ int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port)
 
     if ( write(fd, &port, sizeof(port)) != sizeof(port) )
         return -1;
+
     return 0;
 }
 
diff --git a/tools/libs/evtchn/linux.c b/tools/libs/evtchn/linux.c
index 17e64aea32..4582a58ec4 100644
--- a/tools/libs/evtchn/linux.c
+++ b/tools/libs/evtchn/linux.c
@@ -37,9 +37,12 @@
 int osdep_evtchn_open(xenevtchn_handle *xce)
 {
     int fd = open("/dev/xen/evtchn", O_RDWR|O_CLOEXEC);
+
     if ( fd == -1 )
         return -1;
+
     xce->fd = fd;
+
     return 0;
 }
 
@@ -135,6 +138,7 @@ int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port)
 
     if ( write(fd, &port, sizeof(port)) != sizeof(port) )
         return -1;
+
     return 0;
 }
 
diff --git a/tools/libs/evtchn/minios.c b/tools/libs/evtchn/minios.c
index 9cd7636fc5..8e9f77bb6b 100644
--- a/tools/libs/evtchn/minios.c
+++ b/tools/libs/evtchn/minios.c
@@ -43,22 +43,28 @@ extern void minios_evtchn_close_fd(int fd);
 extern struct wait_queue_head event_queue;
 
 /* XXX Note: This is not threadsafe */
-static struct evtchn_port_info* port_alloc(int fd) {
+static struct evtchn_port_info* port_alloc(int fd)
+{
     struct evtchn_port_info *port_info;
+
     port_info = malloc(sizeof(struct evtchn_port_info));
-    if (port_info == NULL)
+    if ( port_info == NULL )
         return NULL;
+
     port_info->pending = 0;
     port_info->port = -1;
     port_info->bound = 0;
 
     LIST_INSERT_HEAD(&files[fd].evtchn.ports, port_info, list);
+
     return port_info;
 }
 
-static void port_dealloc(struct evtchn_port_info *port_info) {
-    if (port_info->bound)
+static void port_dealloc(struct evtchn_port_info *port_info)
+{
+    if ( port_info->bound )
         unbind_evtchn(port_info->port);
+
     LIST_REMOVE(port_info, list);
     free(port_info);
 }
@@ -66,11 +72,14 @@ static void port_dealloc(struct evtchn_port_info *port_info) {
 int osdep_evtchn_open(xenevtchn_handle *xce)
 {
     int fd = alloc_fd(FTYPE_EVTCHN);
+
     if ( fd == -1 )
         return -1;
+
     LIST_INIT(&files[fd].evtchn.ports);
     xce->fd = fd;
     printf("evtchn_open() -> %d\n", fd);
+
     return 0;
 }
 
@@ -85,12 +94,14 @@ int osdep_evtchn_close(xenevtchn_handle *xce)
 int osdep_evtchn_restrict(xenevtchn_handle *xce, domid_t domid)
 {
     errno = -EOPNOTSUPP;
+
     return -1;
 }
 
 void minios_evtchn_close_fd(int fd)
 {
     struct evtchn_port_info *port_info, *tmp;
+
     LIST_FOREACH_SAFE(port_info, &files[fd].evtchn.ports, list, tmp)
         port_dealloc(port_info);
 
@@ -108,10 +119,12 @@ int xenevtchn_notify(xenevtchn_handle *xce, evtchn_port_t port)
 
     ret = notify_remote_via_evtchn(port);
 
-    if (ret < 0) {
+    if (ret < 0)
+    {
         errno = -ret;
         ret = -1;
     }
+
     return ret;
 }
 
@@ -119,12 +132,15 @@ static void evtchn_handler(evtchn_port_t port, struct pt_regs *regs, void *data)
 {
     int fd = (int)(intptr_t)data;
     struct evtchn_port_info *port_info;
+
     assert(files[fd].type == FTYPE_EVTCHN);
     mask_evtchn(port);
-    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) {
-        if (port_info->port == port)
+    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list)
+    {
+        if ( port_info->port == port )
             goto found;
     }
+
     printk("Unknown port for handle %d\n", fd);
     return;
 
@@ -134,7 +150,8 @@ static void evtchn_handler(evtchn_port_t port, struct pt_regs *regs, void *data)
     wake_up(&event_queue);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uint32_t domid)
+xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce,
+                                                      uint32_t domid)
 {
     int fd = xce->fd;
     struct evtchn_port_info *port_info;
@@ -143,26 +160,31 @@ xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uin
 
     assert(get_current() == main_thread);
     port_info = port_alloc(fd);
-    if (port_info == NULL)
+    if ( port_info == NULL )
         return -1;
 
     printf("xenevtchn_bind_unbound_port(%d)", domid);
-    ret = evtchn_alloc_unbound(domid, evtchn_handler, (void*)(intptr_t)fd, &port);
+    ret = evtchn_alloc_unbound(domid, evtchn_handler,
+                               (void *)(intptr_t)fd, &port);
     printf(" = %d\n", ret);
 
-    if (ret < 0) {
+    if ( ret < 0 )
+    {
         port_dealloc(port_info);
         errno = -ret;
         return -1;
     }
+
     port_info->bound = 1;
     port_info->port = port;
     unmask_evtchn(port);
+
     return port;
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint32_t domid,
-                                                  evtchn_port_t remote_port)
+xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce,
+                                                     uint32_t domid,
+                                                     evtchn_port_t remote_port)
 {
     int fd = xce->fd;
     struct evtchn_port_info *port_info;
@@ -171,21 +193,25 @@ xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint
 
     assert(get_current() == main_thread);
     port_info = port_alloc(fd);
-    if (port_info == NULL)
+    if ( port_info == NULL )
         return -1;
 
     printf("xenevtchn_bind_interdomain(%d, %"PRId32")", domid, remote_port);
-    ret = evtchn_bind_interdomain(domid, remote_port, evtchn_handler, (void*)(intptr_t)fd, &local_port);
+    ret = evtchn_bind_interdomain(domid, remote_port, evtchn_handler,
+                                  (void *)(intptr_t)fd, &local_port);
     printf(" = %d\n", ret);
 
-    if (ret < 0) {
+    if ( ret < 0 )
+    {
         port_dealloc(port_info);
         errno = -ret;
         return -1;
     }
+
     port_info->bound = 1;
     port_info->port = local_port;
     unmask_evtchn(local_port);
+
     return local_port;
 }
 
@@ -194,18 +220,24 @@ int xenevtchn_unbind(xenevtchn_handle *xce, evtchn_port_t port)
     int fd = xce->fd;
     struct evtchn_port_info *port_info;
 
-    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) {
-        if (port_info->port == port) {
+    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list)
+    {
+        if ( port_info->port == port )
+        {
             port_dealloc(port_info);
             return 0;
         }
     }
-    printf("Warning: couldn't find port %"PRId32" for xc handle %x\n", port, fd);
+
+    printf("Warning: couldn't find port %"PRId32" for xc handle %x\n",
+           port, fd);
     errno = EINVAL;
+
     return -1;
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq)
+xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce,
+                                              unsigned int virq)
 {
     int fd = xce->fd;
     struct evtchn_port_info *port_info;
@@ -213,21 +245,24 @@ xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned in
 
     assert(get_current() == main_thread);
     port_info = port_alloc(fd);
-    if (port_info == NULL)
+    if ( port_info == NULL )
         return -1;
 
     printf("xenevtchn_bind_virq(%d)", virq);
-    port = bind_virq(virq, evtchn_handler, (void*)(intptr_t)fd);
+    port = bind_virq(virq, evtchn_handler, (void *)(intptr_t)fd);
     printf(" = %d\n", port);
 
-    if (port < 0) {
+    if ( port < 0 )
+    {
         port_dealloc(port_info);
         errno = -port;
         return -1;
     }
+
     port_info->bound = 1;
     port_info->port = port;
     unmask_evtchn(port);
+
     return port;
 }
 
@@ -239,26 +274,35 @@ xenevtchn_port_or_error_t xenevtchn_pending(xenevtchn_handle *xce)
     evtchn_port_t ret = -1;
 
     local_irq_save(flags);
+
     files[fd].read = 0;
 
-    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) {
-        if (port_info->port != -1 && port_info->pending) {
-            if (ret == -1) {
+    LIST_FOREACH(port_info, &files[fd].evtchn.ports, list)
+    {
+        if ( port_info->port != -1 && port_info->pending )
+        {
+            if ( ret == -1 )
+            {
                 ret = port_info->port;
                 port_info->pending = 0;
-            } else {
+            }
+            else
+            {
                 files[fd].read = 1;
                 break;
             }
         }
     }
+
     local_irq_restore(flags);
+
     return ret;
 }
 
 int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port)
 {
     unmask_evtchn(port);
+
     return 0;
 }
 
diff --git a/tools/libs/evtchn/netbsd.c b/tools/libs/evtchn/netbsd.c
index 8b8545d2f9..53f9299ebb 100644
--- a/tools/libs/evtchn/netbsd.c
+++ b/tools/libs/evtchn/netbsd.c
@@ -34,9 +34,12 @@
 int osdep_evtchn_open(xenevtchn_handle *xce)
 {
     int fd = open(EVTCHN_DEV_NAME, O_NONBLOCK|O_RDWR);
+
     if ( fd == -1 )
         return -1;
+
     xce->fd = fd;
+
     return 0;
 }
 
@@ -51,6 +54,7 @@ int osdep_evtchn_close(xenevtchn_handle *xce)
 int osdep_evtchn_restrict(xenevtchn_handle *xce, domid_t domid)
 {
     errno = -EOPNOTSUPP;
+
     return -1;
 }
 
@@ -69,7 +73,8 @@ int xenevtchn_notify(xenevtchn_handle *xce, evtchn_port_t port)
     return ioctl(fd, IOCTL_EVTCHN_NOTIFY, &notify);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle * xce, uint32_t domid)
+xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce,
+                                                      uint32_t domid)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_unbound_port bind;
@@ -78,14 +83,15 @@ xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle * xce, ui
     bind.remote_domain = domid;
 
     ret = ioctl(fd, IOCTL_EVTCHN_BIND_UNBOUND_PORT, &bind);
-    if (ret == 0)
+    if ( ret == 0 )
         return bind.port;
     else
         return -1;
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint32_t domid,
-                                                  evtchn_port_t remote_port)
+xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce,
+                                                     uint32_t domid,
+                                                     evtchn_port_t remote_port)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_interdomain bind;
@@ -95,7 +101,7 @@ xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint
     bind.remote_port = remote_port;
 
     ret = ioctl(fd, IOCTL_EVTCHN_BIND_INTERDOMAIN, &bind);
-    if (ret == 0)
+    if ( ret == 0 )
         return bind.port;
     else
         return -1;
@@ -111,7 +117,8 @@ int xenevtchn_unbind(xenevtchn_handle *xce, evtchn_port_t port)
     return ioctl(fd, IOCTL_EVTCHN_UNBIND, &unbind);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq)
+xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce,
+                                              unsigned int virq)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_virq bind;
@@ -120,7 +127,7 @@ xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned in
     bind.virq = virq;
 
     err = ioctl(fd, IOCTL_EVTCHN_BIND_VIRQ, &bind);
-    if (err)
+    if ( err )
         return -1;
     else
         return bind.port;
@@ -140,6 +147,7 @@ xenevtchn_port_or_error_t xenevtchn_pending(xenevtchn_handle *xce)
 int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port)
 {
     int fd = xce->fd;
+
     return write_exact(fd, (char *)&port, sizeof(port));
 }
 
diff --git a/tools/libs/evtchn/solaris.c b/tools/libs/evtchn/solaris.c
index dd41f62a24..d87abc553c 100644
--- a/tools/libs/evtchn/solaris.c
+++ b/tools/libs/evtchn/solaris.c
@@ -72,7 +72,8 @@ int xenevtchn_notify(xenevtchn_handle *xce, evtchn_port_t port)
     return ioctl(fd, IOCTL_EVTCHN_NOTIFY, &notify);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uint32_t domid)
+xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce,
+                                                      uint32_t domid)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_unbound_port bind;
@@ -82,8 +83,9 @@ xenevtchn_port_or_error_t xenevtchn_bind_unbound_port(xenevtchn_handle *xce, uin
     return ioctl(fd, IOCTL_EVTCHN_BIND_UNBOUND_PORT, &bind);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint32_t domid,
-                                                  evtchn_port_t remote_port)
+xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce,
+                                                     uint32_t domid,
+                                                     evtchn_port_t remote_port)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_interdomain bind;
@@ -94,7 +96,8 @@ xenevtchn_port_or_error_t xenevtchn_bind_interdomain(xenevtchn_handle *xce, uint
     return ioctl(fd, IOCTL_EVTCHN_BIND_INTERDOMAIN, &bind);
 }
 
-xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce, unsigned int virq)
+xenevtchn_port_or_error_t xenevtchn_bind_virq(xenevtchn_handle *xce,
+                                              unsigned int virq)
 {
     int fd = xce->fd;
     struct ioctl_evtchn_bind_virq bind;
@@ -128,6 +131,7 @@ xenevtchn_port_or_error_t xenevtchn_pending(xenevtchn_handle *xce)
 int xenevtchn_unmask(xenevtchn_handle *xce, evtchn_port_t port)
 {
     int fd = xce->fd;
+
     return write_exact(fd, (char *)&port, sizeof(port));
 }
 
-- 
2.26.2



  reply	other threads:[~2021-01-14 15:38 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-14 15:37 [PATCH v11 00/27] tools/xenstore: support live update for xenstored Juergen Gross
2021-01-14 15:37 ` Juergen Gross [this message]
2021-01-14 19:07   ` [PATCH v11 01/27] tools/libxenevtchn: switch to standard xen coding style Andrew Cooper
2021-01-15  6:13     ` Jürgen Groß
2021-01-14 15:37 ` [PATCH v11 02/27] tools/libxenevtchn: rename open_flags to flags Juergen Gross
2021-01-14 19:22   ` Andrew Cooper
2021-01-15  6:14     ` Jürgen Groß
2021-01-14 15:37 ` [PATCH v11 03/27] tools/libxenevtchn: check xenevtchn_open() flags for not supported bits Juergen Gross
2021-01-14 19:24   ` Andrew Cooper
2021-01-15  6:19     ` Jürgen Groß
2021-01-14 15:37 ` [PATCH v11 04/27] tools/libxenevtchn: propagate xenevtchn_open() flags parameter Juergen Gross
2021-01-14 19:26   ` Andrew Cooper
2021-01-14 15:37 ` [PATCH v11 05/27] tools/libxenevtchn: add possibility to not close file descriptor on exec Juergen Gross
2021-01-15  1:01   ` Andrew Cooper
2021-01-15  7:11     ` Jürgen Groß
2021-01-14 15:37 ` [PATCH v11 06/27] tools/xenstore: refactor XS_CONTROL handling Juergen Gross
2021-01-14 15:37 ` [PATCH v11 07/27] tools/xenstore: add live update command to xenstore-control Juergen Gross
2021-01-14 15:37 ` [PATCH v11 08/27] tools/xenstore: add basic live-update command parsing Juergen Gross
2021-01-14 15:37 ` [PATCH v11 09/27] tools/xenstore: introduce live update status block Juergen Gross
2021-01-14 15:37 ` [PATCH v11 10/27] tools/xenstore: save new binary for live update Juergen Gross
2021-01-14 15:37 ` [PATCH v11 11/27] tools/xenstore: add command line handling " Juergen Gross
2021-01-14 15:37 ` [PATCH v11 12/27] tools/xenstore: add support for delaying execution of a xenstore request Juergen Gross
2021-01-14 15:37 ` [PATCH v11 13/27] tools/xenstore: add the basic framework for doing the live update Juergen Gross
2021-01-14 15:37 ` [PATCH v11 14/27] tools/xenstore: allow live update only with no transaction active Juergen Gross
2021-01-14 15:37 ` [PATCH v11 15/27] docs: update the xenstore migration stream documentation Juergen Gross
2021-01-14 15:37 ` [PATCH v11 16/27] tools/xenstore: add include file for state structure definitions Juergen Gross
2021-01-14 15:37 ` [PATCH v11 17/27] tools/xenstore: dump the xenstore state for live update Juergen Gross
2021-01-14 15:37 ` [PATCH v11 18/27] tools/xenstore: handle CLOEXEC flag for local files and pipes Juergen Gross
2021-01-14 15:37 ` [PATCH v11 19/27] tools/xenstore: split off domain introduction from do_introduce() Juergen Gross
2021-01-14 15:37 ` [PATCH v11 20/27] tools/xenstore: evaluate the live update flag when starting Juergen Gross
2021-01-14 15:37 ` [PATCH v11 21/27] tools/xenstore: read internal state when doing live upgrade Juergen Gross
2021-01-14 15:37 ` [PATCH v11 22/27] tools/xenstore: add reading global state for live update Juergen Gross
2021-01-14 15:37 ` [PATCH v11 23/27] tools/xenstore: add read connection " Juergen Gross
2021-01-14 15:38 ` [PATCH v11 24/27] tools/xenstore: add read node " Juergen Gross
2021-01-14 15:38 ` [PATCH v11 25/27] tools/xenstore: add read watch " Juergen Gross
2021-01-14 15:38 ` [PATCH v11 26/27] tools/xenstore: handle dying domains in " Juergen Gross
2021-01-14 15:38 ` [PATCH v11 27/27] tools/xenstore: activate new binary for " Juergen Gross
2021-01-14 16:48 ` [PATCH v11 00/27] tools/xenstore: support live update for xenstored Jürgen Groß

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210114153803.2591-2-jgross@suse.com \
    --to=jgross@suse.com \
    --cc=iwj@xenproject.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.