aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/netxen/netxen_nic_main.c
diff options
context:
space:
mode:
authorDhananjay Phadke <dhananjay@netxen.com>2009-05-05 15:05:07 -0400
committerDavid S. Miller <davem@davemloft.net>2009-05-06 18:33:36 -0400
commit5cf4d323f8864dab818d500ec74f2fcb9ad5bf89 (patch)
tree5f90365023b2b7a78852be460b770c5ae8731723 /drivers/net/netxen/netxen_nic_main.c
parent22527864ed7ee6c50f3c4d4b03c83c963caf5c0b (diff)
netxen: fix mac list management
o use standard linked list api for mac addr list management in NX3031. o release mac addresses in firmware in dev close(). Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/netxen/netxen_nic_main.c')
-rw-r--r--drivers/net/netxen/netxen_nic_main.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c
index 6a496b1909eb..a5577f8b6c0a 100644
--- a/drivers/net/netxen/netxen_nic_main.c
+++ b/drivers/net/netxen/netxen_nic_main.c
@@ -815,6 +815,9 @@ netxen_nic_down(struct netxen_adapter *adapter, struct net_device *netdev)
815 if (adapter->stop_port) 815 if (adapter->stop_port)
816 adapter->stop_port(adapter); 816 adapter->stop_port(adapter);
817 817
818 if (NX_IS_REVISION_P3(adapter->ahw.revision_id))
819 netxen_p3_free_mac_list(adapter);
820
818 netxen_release_tx_buffers(adapter); 821 netxen_release_tx_buffers(adapter);
819 822
820 FLUSH_SCHEDULED_WORK(); 823 FLUSH_SCHEDULED_WORK();
@@ -961,6 +964,7 @@ netxen_nic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
961 964
962 rwlock_init(&adapter->adapter_lock); 965 rwlock_init(&adapter->adapter_lock);
963 spin_lock_init(&adapter->tx_clean_lock); 966 spin_lock_init(&adapter->tx_clean_lock);
967 INIT_LIST_HEAD(&adapter->mac_list);
964 968
965 err = netxen_setup_pci_map(adapter); 969 err = netxen_setup_pci_map(adapter);
966 if (err) 970 if (err)
@@ -1114,9 +1118,6 @@ static void __devexit netxen_nic_remove(struct pci_dev *pdev)
1114 1118
1115 if (adapter->is_up == NETXEN_ADAPTER_UP_MAGIC) { 1119 if (adapter->is_up == NETXEN_ADAPTER_UP_MAGIC) {
1116 netxen_nic_detach(adapter); 1120 netxen_nic_detach(adapter);
1117
1118 if (NX_IS_REVISION_P3(adapter->ahw.revision_id))
1119 netxen_p3_free_mac_list(adapter);
1120 } 1121 }
1121 1122
1122 if (adapter->portnum == 0) 1123 if (adapter->portnum == 0)