IPoIB/cm: Fix ipoib_cm_dev_stop() cleanup when drain times out
authorPradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
Tue, 12 Feb 2008 23:00:59 +0000 (15:00 -0800)
committerRoland Dreier <rolandd@cisco.com>
Tue, 19 Feb 2008 18:25:11 +0000 (10:25 -0800)
commitec229e5e81b3cf757e5e8b6a8bd0b4f32fe52f8c
tree0a257aa06672c5212110390baafc09752f4ca425
parent9a4c8546f3e7c893888bccc2b3416d6214f2664a
IPoIB/cm: Fix ipoib_cm_dev_stop() cleanup when drain times out

Commit efcd9971 ("IPoIB/cm: Factor out ipoib_cm_free_rx_reap_list()")
introduced a bug in ipoib_cm_dev_stop() when the receive drain times
out.  In that case, the function moves all the pending rx stuff into a
private list but then calls ipoib_cm_free_rx_reap_list(), which
handles a different list.

Fix this by moving everything to the rx_reap_list that will actually
get freed up.

This fixes <https://bugs.openfabrics.org/show_bug.cgi?id=906>.

Signed-off-by: Pradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/ulp/ipoib/ipoib_cm.c