]> git.karo-electronics.de Git - karo-tx-linux.git/commit
IPoIB: Test for NULL broadcast object in ipiob_mcast_join_finish()
authorJack Morgenstein <jackm@dev.mellanox.co.il>
Sat, 24 May 2008 17:40:21 +0000 (17:40 +0000)
committerChris Wright <chrisw@sous-sol.org>
Mon, 9 Jun 2008 18:27:02 +0000 (11:27 -0700)
commitfdeb373e553c6feedfba6ffd005f837b5fef3622
tree072060508a679171b065f5bcbbe6ea2de1e63f8d
parent687b21a34349aea5f9cf9bab07e7a981500d8a67
IPoIB: Test for NULL broadcast object in ipiob_mcast_join_finish()

upstream commit: e1d50dce5af77cb6d33555af70e2b8748dd84009

We saw a kernel oops in our regression testing when a multicast "join
finish" occurred just after the interface was -- this is
<https://bugs.openfabrics.org/show_bug.cgi?id=1040>.  The test
randomly causes the HCA physical port to go down then up.

The cause of this is that ipoib_mcast_join_finish() processing happen
just after ipoib_mcast_dev_flush() was invoked (in which case the
broadcast pointer is NULL).  This patch tests for and handles the case
where priv->broadcast is NULL.

Cc: <stable@kernel.org>
Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
drivers/infiniband/ulp/ipoib/ipoib_multicast.c