projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2527e68
)
IB/ipoib: Fix oops with ipoib_debug_mcast set
author
Or Gerlitz
<ogerlitz@voltaire.com>
Mon, 24 Jul 2006 07:42:00 +0000
(10:42 +0300)
committer
Roland Dreier
<rolandd@cisco.com>
Mon, 24 Jul 2006 16:18:07 +0000
(09:18 -0700)
Need to set mcast->ah before debug code dereferences it.
Signed-off-by: Or Gerlitz <ogerlitz@voltaire.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/ulp/ipoib/ipoib_multicast.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c
index ab40488182b3ef8f5e7166fb890e75effc4cef46..b5e6a7be603df5388fb5d03ba55e997142babbe1 100644
(file)
--- a/
drivers/infiniband/ulp/ipoib/ipoib_multicast.c
+++ b/
drivers/infiniband/ulp/ipoib/ipoib_multicast.c
@@
-264,6
+264,10
@@
static int ipoib_mcast_join_finish(struct ipoib_mcast *mcast,
if (!ah) {
ipoib_warn(priv, "ib_address_create failed\n");
} else {
+ spin_lock_irq(&priv->lock);
+ mcast->ah = ah;
+ spin_unlock_irq(&priv->lock);
+
ipoib_dbg_mcast(priv, "MGID " IPOIB_GID_FMT
" AV %p, LID 0x%04x, SL %d\n",
IPOIB_GID_ARG(mcast->mcmember.mgid),
@@
-271,10
+275,6
@@
static int ipoib_mcast_join_finish(struct ipoib_mcast *mcast,
be16_to_cpu(mcast->mcmember.mlid),
mcast->mcmember.sl);
}
-
- spin_lock_irq(&priv->lock);
- mcast->ah = ah;
- spin_unlock_irq(&priv->lock);
}
/* actually send any queued packets */