HomeFreeBSD

cxgbei: Better handle new tasks and transfers when disconnecting.

Description

cxgbei: Better handle new tasks and transfers when disconnecting.

If the connection is in the process of disconnecting, ic_socket can be
NULL. For icl_cxgbei_conn_transfer_setup(), lock the connection and
check ic_socket before using it. For icl_cxgbei_conn_task_setup(),
the caller already holds the connection lock, so assert it and bail
early with ECONNRESET if the connection is disconnecting.

Reported by: Jithesh Arakkan @ Chelsio
Fixes: f949967c8eb3 cxgbei: Fix a race between transfer setup and a peer reset.

(cherry picked from commit abc273a2901b116cc98a1fb506c75ac1b0a14cd3)

Details

Provenance
jhbAuthored on Jun 18 2021, 11:15 PM
Parents
rG0d4f552d49d2: cxgbe tom: Free pending iSCSI mbufs on connection shutdown.
Branches
Unknown
Tags
Unknown