diff options
Diffstat (limited to 'drivers/infiniband/ulp')
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_main.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c index cae026c4ebe8..362610d870e4 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c | |||
@@ -692,9 +692,10 @@ static int ipoib_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
692 | goto out; | 692 | goto out; |
693 | } | 693 | } |
694 | } else if (neigh->ah) { | 694 | } else if (neigh->ah) { |
695 | if (unlikely(memcmp(&neigh->dgid.raw, | 695 | if (unlikely((memcmp(&neigh->dgid.raw, |
696 | skb->dst->neighbour->ha + 4, | 696 | skb->dst->neighbour->ha + 4, |
697 | sizeof(union ib_gid)))) { | 697 | sizeof(union ib_gid))) || |
698 | (neigh->dev != dev))) { | ||
698 | spin_lock(&priv->lock); | 699 | spin_lock(&priv->lock); |
699 | /* | 700 | /* |
700 | * It's safe to call ipoib_put_ah() inside | 701 | * It's safe to call ipoib_put_ah() inside |