summaryrefslogtreecommitdiffstats
path: root/drivers/net/isa-skeleton.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-07-16 20:21:24 -0700
committerDavid S. Miller <davem@davemloft.net>2009-07-16 20:21:24 -0700
commitda8120355e80ddaf534adb8ed910871d97512d56 (patch)
tree9958a6c33e29b5af5faccf6650e98729151618a2 /drivers/net/isa-skeleton.c
parentc86ae82605ef92594a0de809a8c588ae955fed63 (diff)
parent7fefe6a88494b00b151b5ca7bb84daaa781bbca7 (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/wireless/orinoco/main.c
Diffstat (limited to 'drivers/net/isa-skeleton.c')
-rw-r--r--drivers/net/isa-skeleton.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/isa-skeleton.c b/drivers/net/isa-skeleton.c
index 86d2300af37..9706e64e367 100644
--- a/drivers/net/isa-skeleton.c
+++ b/drivers/net/isa-skeleton.c
@@ -430,7 +430,8 @@ static int net_send_packet(struct sk_buff *skb, struct net_device *dev)
* hardware interrupt handler. Queue flow control is
* thus managed under this lock as well.
*/
- spin_lock_irq(&np->lock);
+ unsigned long flags;
+ spin_lock_irqsave(&np->lock, flags);
add_to_tx_ring(np, skb, length);
dev->trans_start = jiffies;
@@ -446,7 +447,7 @@ static int net_send_packet(struct sk_buff *skb, struct net_device *dev)
* is when the transmit statistics are updated.
*/
- spin_unlock_irq(&np->lock);
+ spin_unlock_irqrestore(&np->lock, flags);
#else
/* This is the case for older hardware which takes
* a single transmit buffer at a time, and it is