diff options
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_main.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c index cd4f42328dbe..273d5f418a67 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c | |||
@@ -551,11 +551,8 @@ static int ipoib_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
551 | struct ipoib_neigh *neigh; | 551 | struct ipoib_neigh *neigh; |
552 | unsigned long flags; | 552 | unsigned long flags; |
553 | 553 | ||
554 | local_irq_save(flags); | 554 | if (!spin_trylock_irqsave(&priv->tx_lock, flags)) |
555 | if (!spin_trylock(&priv->tx_lock)) { | ||
556 | local_irq_restore(flags); | ||
557 | return NETDEV_TX_LOCKED; | 555 | return NETDEV_TX_LOCKED; |
558 | } | ||
559 | 556 | ||
560 | /* | 557 | /* |
561 | * Check if our queue is stopped. Since we have the LLTX bit | 558 | * Check if our queue is stopped. Since we have the LLTX bit |