diff options
author | Roland Dreier <rolandd@cisco.com> | 2005-10-29 13:54:40 -0700 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2005-10-29 13:54:40 -0700 |
commit | a20583a7c2e35d80b1dfc1f60c9729498838725e (patch) | |
tree | e7fbd856e7522b65d309e9dfd425541d8f45a0bd /drivers | |
parent | affcd50546d4788b7849e2b2e2ec7bc50d64c5f8 (diff) | |
download | op-kernel-dev-a20583a7c2e35d80b1dfc1f60c9729498838725e.zip op-kernel-dev-a20583a7c2e35d80b1dfc1f60c9729498838725e.tar.gz |
[IPoIB] use spin_trylock_irqsave()
Use spin_trylock_irqsave() in ipoib_start_xmit() instead of
reinventing it out of local_irq_save(), spin_trylock() and
local_irq_restore().
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers')
-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 cd4f423..273d5f4 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) struct ipoib_neigh *neigh; unsigned long flags; - local_irq_save(flags); - if (!spin_trylock(&priv->tx_lock)) { - local_irq_restore(flags); + if (!spin_trylock_irqsave(&priv->tx_lock, flags)) return NETDEV_TX_LOCKED; - } /* * Check if our queue is stopped. Since we have the LLTX bit |