linux/drivers/infiniband/ulp/ipoib
Roland Dreier 31c02e2157 IPoIB: Avoid using stale last_send counter when reaping AHs
The comparisons of priv->tx_tail to ah->last_send in ipoib_free_ah()
and ipoib_post_receive() are slightly unsafe, because priv->tx_lock is
not held and hence a stale value of ah->last_send might be used, which
would lead to freeing an AH before the driver was really done with it.
The simple way to fix this is to the optimization of early free from
ipoib_free_ah() and unconditionally queue AHs for reaping, and then
take priv->tx_lock in __ipoib_reap_ah().

Signed-off-by: Roland Dreier <rolandd@cisco.com>
2006-06-17 20:37:34 -07:00
..
ipoib_fs.c IB: simplify static rate encoding 2006-04-10 09:43:47 -07:00
ipoib_ib.c IPoIB: Avoid using stale last_send counter when reaping AHs 2006-06-17 20:37:34 -07:00
ipoib_main.c IPoIB: Use spin_lock_irq() instead of spin_lock_irqsave() 2006-04-10 09:43:59 -07:00
ipoib_multicast.c IPoIB: Wait for join to finish before freeing mcast struct 2006-04-10 09:43:58 -07:00
ipoib_verbs.c IPoIB: Make send and receive queue sizes tunable 2006-04-10 09:43:58 -07:00
ipoib_vlan.c IPoIB: Free child interfaces properly 2006-05-09 22:54:59 -07:00
ipoib.h IPoIB: Make send and receive queue sizes tunable 2006-04-10 09:43:58 -07:00
Kconfig IPoIB: Always build debugging code unless CONFIG_EMBEDDED=y 2006-04-02 14:39:19 -07:00
Makefile [PATCH] IB: move include files to include/rdma 2005-08-26 20:37:38 -07:00