File 5537a7eb-libxl-fd-events2.patch of Package xen.6117

Referencs: bsc#955104 bsc#959552 bsc#993665 bsc#959330 bsc#990500

commit 0ade02ba3a74f4e5461d471c3e0fbcde4a00119e
Author: Ian Jackson <ian.jackson@eu.citrix.com>
Date:   Thu Apr 16 19:23:27 2015 +0100

    libxl: fd events: Break out fd_occurs
    
    No functional change, only code motion.
    
    Currently, contrary to this function's name, there are two sites where
    efd->func() is called so one of them doesn't go through here just yet.
    That will be dealt with in the next commit.
    
    Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
    CC: Jim Fehlig <jfehlig@suse.com>
    CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Tested-by: Jim Fehlig <jfehlig@suse.com>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>

Index: xen-4.5.5-testing/tools/libxl/libxl_event.c
===================================================================
--- xen-4.5.5-testing.orig/tools/libxl/libxl_event.c
+++ xen-4.5.5-testing/tools/libxl/libxl_event.c
@@ -1127,6 +1127,14 @@ static int afterpoll_check_fd(libxl__pol
     return revents;
 }
 
+static void fd_occurs(libxl__egc *egc, libxl__ev_fd *efd, short revents)
+{
+    DBG("ev_fd=%p occurs fd=%d events=%x revents=%x",
+        efd, efd->fd, efd->events, revents);
+
+    efd->func(egc, efd, efd->fd, efd->events, revents);
+}
+
 static void afterpoll_internal(libxl__egc *egc, libxl__poller *poller,
                                int nfds, const struct pollfd *fds,
                                struct timeval now)
@@ -1189,10 +1197,7 @@ static void afterpoll_internal(libxl__eg
         break;
 
     found_fd_event:
-        DBG("ev_fd=%p occurs fd=%d events=%x revents=%x",
-            efd, efd->fd, efd->events, revents);
-
-        efd->func(egc, efd, efd->fd, efd->events, revents);
+        fd_occurs(egc, efd, revents);
     }
 
     if (afterpoll_check_fd(poller,fds,nfds, poller->wakeup_pipe[0],POLLIN)) {
openSUSE Build Service is sponsored by