diff options
author | John Baldwin <jhb@FreeBSD.org> | 2021-05-21 00:16:23 +0000 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2021-05-28 23:47:31 +0000 |
commit | 677cb9722a64d3f944d3e374e0ef1bb0e45644b5 (patch) | |
tree | 5c6b872da79fd9629fc3c8d98c48e406de6fae75 | |
parent | f949967c8eb3ab5e5a965e3cf07a726dfdc81263 (diff) | |
download | src-677cb9722a64d3f944d3e374e0ef1bb0e45644b5.tar.gz src-677cb9722a64d3f944d3e374e0ef1bb0e45644b5.zip |
cxgbe tom: Free pending iSCSI mbufs on connection shutdown.
If an iSCSI connection is shutdown abruptly (e.g. by a RST from the
peer), pending iSCSI PDUs and page pod work requests can be in the
ulp_pduq when the final CPL is received indicating the death of the
connection.
Reported by: Jithesh Arakkan @ Chelsio
-rw-r--r-- | sys/dev/cxgbe/tom/t4_tom.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/cxgbe/tom/t4_tom.c b/sys/dev/cxgbe/tom/t4_tom.c index 97693ab74000..1c9999be339d 100644 --- a/sys/dev/cxgbe/tom/t4_tom.c +++ b/sys/dev/cxgbe/tom/t4_tom.c @@ -1024,6 +1024,7 @@ final_cpl_received(struct toepcb *toep) tls_detach(toep); toep->inp = NULL; toep->flags &= ~TPF_CPL_PENDING; + mbufq_drain(&toep->ulp_pduq); mbufq_drain(&toep->ulp_pdu_reclaimq); if (!(toep->flags & TPF_ATTACHED)) |