Commit 4f4f3975 authored by Dariusz Stojaczyk's avatar Dariusz Stojaczyk Committed by Jim Harris
Browse files

vhost: use full path when unregistering sockets on shutdown



This patch properly closes sockets on shutdown.
Previous rte_vhost_driver_unregister calls were returning
immediately due to inexistent sockets at given paths.

Change-Id: I5e4d64f04fc8b6bef914c2eb4c4d2220be9ca9ec
Signed-off-by: default avatarDariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/377165


Tested-by: default avatarSPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
parent 9f8efd87
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -712,6 +712,7 @@ static void *
session_shutdown(void *arg)
{
	struct spdk_vhost_dev *vdev = NULL;
	char path[PATH_MAX];
	int i;

	for (i = 0; i < MAX_VHOST_DEVICES; i++) {
@@ -719,7 +720,15 @@ session_shutdown(void *arg)
		if (vdev == NULL) {
			continue;
		}
		rte_vhost_driver_unregister(vdev->name);

		if (snprintf(path, sizeof(path), "%s%s", dev_dirname, vdev->name) >= (int)sizeof(path)) {
			SPDK_ERRLOG("Resulting socket path for controller %s is too long: %s%s\n", vdev->name, dev_dirname,
				    vdev->name);
			assert(false);
			continue;
		}

		rte_vhost_driver_unregister(path);
	}

	SPDK_NOTICELOG("Exiting\n");