]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blame - src/patches/suse-2.6.27.39/patches.drivers/netxen-hold-tx-lock-while-sending-firmware-commands.patch
Fix oinkmaster patch.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.39 / patches.drivers / netxen-hold-tx-lock-while-sending-firmware-commands.patch
CommitLineData
2cb7cef9
BS
1From 03e678ee968ae54b79c1580c2935895bd863ad95 Mon Sep 17 00:00:00 2001
2From: Dhananjay Phadke <dhananjay@netxen.com>
3Date: Wed, 14 Jan 2009 20:49:43 -0800
4Subject: netxen: hold tx lock while sending firmware commands
5Acked-by: Karsten Keil <kkeil@novell.com>
6Reference: bnc#472416
7
8Some firmware commands like mac address addition/deletion are sent
9on the transmit ring. So need to hold the tx lock before touching
10tx producer/consumer indices.
11
12Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
13Signed-off-by: David S. Miller <davem@davemloft.net>
14---
15 drivers/net/netxen/netxen_nic_hw.c | 4 ++++
16 1 files changed, 4 insertions(+), 0 deletions(-)
17
18diff --git a/drivers/net/netxen/netxen_nic_hw.c b/drivers/net/netxen/netxen_nic_hw.c
19index e2d2a2f..821cff6 100644
20--- a/drivers/net/netxen/netxen_nic_hw.c
21+++ b/drivers/net/netxen/netxen_nic_hw.c
22@@ -503,6 +503,8 @@ netxen_send_cmd_descs(struct netxen_adapter *adapter,
23
24 i = 0;
25
26+ netif_tx_lock_bh(adapter->netdev);
27+
28 producer = adapter->cmd_producer;
29 do {
30 cmd_desc = &cmd_desc_arr[i];
31@@ -527,6 +529,8 @@ netxen_send_cmd_descs(struct netxen_adapter *adapter,
32
33 netxen_nic_update_cmd_producer(adapter, adapter->cmd_producer);
34
35+ netif_tx_unlock_bh(adapter->netdev);
36+
37 return 0;
38 }
39
40--
411.5.6.4
42