]> git.droids-corp.org - dpdk.git/blobdiff - lib/librte_vhost/fd_man.c
vhost: check poll error code
[dpdk.git] / lib / librte_vhost / fd_man.c
index 2ceacc9abd768c8bec9c90f6856f684a4c899ac1..4c6fed41899981b64bb8fdc5799735a4c661aa98 100644 (file)
@@ -222,6 +222,7 @@ fdset_event_dispatch(void *arg)
        int remove1, remove2;
        int need_shrink;
        struct fdset *pfdset = arg;
+       int val;
 
        if (pfdset == NULL)
                return NULL;
@@ -239,7 +240,9 @@ fdset_event_dispatch(void *arg)
                numfds = pfdset->num;
                pthread_mutex_unlock(&pfdset->fd_mutex);
 
-               poll(pfdset->rwfds, numfds, 1000 /* millisecs */);
+               val = poll(pfdset->rwfds, numfds, 1000 /* millisecs */);
+               if (val < 0)
+                       continue;
 
                need_shrink = 0;
                for (i = 0; i < numfds; i++) {