summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorwanghanlin <wanghanlin@corp.netease.com>2021-06-29 16:01:55 +0800
committerFlorin Coras <florin.coras@gmail.com>2021-06-29 14:30:01 +0000
commitb940fd4d5a16b62a5aa09b924140a135fd06c6bb (patch)
treebf51cbf890e4eae764848f2a0798e5cc66691c7f /src
parent9e42cc285f9e212a94319a15df54df791b75bab9 (diff)
vcl: Don't use app_socket_api to notify VPP in parent when child exited
Type: fix Signed-off-by: wanghanlin <wanghanlin@corp.netease.com> Change-Id: Icd2fc3cc2d0a0a6060abfb262044cf9e09ab4ba2
Diffstat (limited to 'src')
-rw-r--r--src/vcl/vcl_locked.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/vcl/vcl_locked.c b/src/vcl/vcl_locked.c
index 30d5f5f67b0..e8f56c6c5fc 100644
--- a/src/vcl/vcl_locked.c
+++ b/src/vcl/vcl_locked.c
@@ -1530,7 +1530,11 @@ vls_cleanup_vcl_worker (vcl_worker_t * wrk)
/* Unshare sessions and also cleanup worker since child may have
* called _exit () and therefore vcl may not catch the event */
vls_unshare_vcl_worker_sessions (wrk);
- vcl_worker_cleanup (wrk, 1 /* notify vpp */ );
+
+ /* Since child may have exited and thereforce fd of vpp_app_socket_api
+ * may have been closed, so DONOT notify VPP.
+ */
+ vcl_worker_cleanup (wrk, vcm->cfg.vpp_app_socket_api ? 0 : 1);
vls_worker_free (vls_wrk);
}