Commit e53d15a2 authored by Konrad Sztyber's avatar Konrad Sztyber Committed by Jim Harris
Browse files

nvmf/tcp: flush sockets when removing from a sock group



This will try to write out queued requests instead of outright aborting
them.  It's necessary for the host to receive a response when we send it
and disconnect the qpair immediately after that.

Signed-off-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I0257dd4455800b094c6ee8d1dacc7f8771e9c2ca
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/22760


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarBen Walker <ben@nvidia.com>
Reviewed-by: default avatarSeung yeon Shin <syeon.shin@samsung.com>
Community-CI: Mellanox Build Bot
parent 5b83ef1c
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -3295,6 +3295,9 @@ nvmf_tcp_poll_group_remove(struct spdk_nvmf_transport_poll_group *group,
	}
	TAILQ_REMOVE(&tgroup->qpairs, tqpair, link);

	/* Try to force out any pending writes */
	spdk_sock_flush(tqpair->sock);

	rc = spdk_sock_group_remove_sock(tgroup->sock_group, tqpair->sock);
	if (rc != 0) {
		SPDK_ERRLOG("Could not remove sock from sock_group: %s (%d)\n",