Commit 349f43c2 authored by Tomasz Kulasek's avatar Tomasz Kulasek Committed by Jim Harris
Browse files

sock: fix socket memory free



Memory for socket structure is allocated in the selected net
framework but freed in the libsocket on the higher level.

This patch moves memory free to the net framework implementation.

Change-Id: Ia3d4e1553a858a38beb390986e9af105778c12c7
Signed-off-by: default avatarTomasz Kulasek <tomaszx.kulasek@intel.com>
Reviewed-on: https://review.gerrithub.io/421587


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
parent 8680bea1
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -329,8 +329,14 @@ static int
spdk_posix_sock_close(struct spdk_sock *_sock)
{
	struct spdk_posix_sock *sock = __posix_sock(_sock);
	int rc;

	rc = close(sock->fd);
	if (rc == 0) {
		free(sock);
	}

	return close(sock->fd);
	return rc;
}

static ssize_t
+0 −1
Original line number Diff line number Diff line
@@ -111,7 +111,6 @@ spdk_sock_close(struct spdk_sock **sock)

	rc = (*sock)->net_impl->close(*sock);
	if (rc == 0) {
		free(*sock);
		*sock = NULL;
	}

+1 −0
Original line number Diff line number Diff line
@@ -346,6 +346,7 @@ spdk_vpp_sock_close(struct spdk_sock *_sock)
		errno = -rc;
		return -1;
	}
	free(sock);

	return 0;
}
+1 −0
Original line number Diff line number Diff line
@@ -144,6 +144,7 @@ spdk_ut_sock_close(struct spdk_sock *_sock)
	if (sock == g_ut_client_sock) {
		g_ut_client_sock = NULL;
	}
	free(_sock);

	return 0;
}