diff options
Diffstat (limited to 'drivers/net/sungem.c')
-rw-r--r-- | drivers/net/sungem.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 61640b99b705..b571a1babab9 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -1034,10 +1034,8 @@ static netdev_tx_t gem_start_xmit(struct sk_buff *skb, | |||
1034 | (csum_stuff_off << 21)); | 1034 | (csum_stuff_off << 21)); |
1035 | } | 1035 | } |
1036 | 1036 | ||
1037 | local_irq_save(flags); | 1037 | if (!spin_trylock_irqsave(&gp->tx_lock, flags)) { |
1038 | if (!spin_trylock(&gp->tx_lock)) { | ||
1039 | /* Tell upper layer to requeue */ | 1038 | /* Tell upper layer to requeue */ |
1040 | local_irq_restore(flags); | ||
1041 | return NETDEV_TX_LOCKED; | 1039 | return NETDEV_TX_LOCKED; |
1042 | } | 1040 | } |
1043 | /* We raced with gem_do_stop() */ | 1041 | /* We raced with gem_do_stop() */ |