]> git.droids-corp.org - dpdk.git/commitdiff
vhost: raise error on fdset-thread creation
authorTonghao Zhang <xiangxia.m.yue@gmail.com>
Fri, 23 Mar 2018 02:18:50 +0000 (19:18 -0700)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 30 Mar 2018 12:08:44 +0000 (14:08 +0200)
When first call the 'rte_vhost_driver_start', the
fdset_event_dispatch thread should be created successfully.
Because the vhost uses it to poll socket events for vhost
server or clients. Without it, for example, vhost will not
get the connection event.

This patch returns err code directly when created not successful.

Signed-off-by: Tonghao Zhang <xiangxia.m.yue@gmail.com>
Reviewed-by: Jianfeng Tan <jianfeng.tan@intel.com>
lib/librte_vhost/socket.c

index 992c7aa1caedb00a8a4b894cf0fabc1c9985c255..5e24230c025507fb5a7443f169d2b0b0fd148d5b 100644 (file)
@@ -852,9 +852,11 @@ rte_vhost_driver_start(const char *path)
        if (fdset_tid == 0) {
                int ret = pthread_create(&fdset_tid, NULL, fdset_event_dispatch,
                                     &vhost_user.fdset);
-               if (ret != 0)
+               if (ret != 0) {
                        RTE_LOG(ERR, VHOST_CONFIG,
                                "failed to create fdset handling thread");
+                       return -1;
+               }
        }
 
        if (vsocket->is_server)