summaryrefslogtreecommitdiff
path: root/drivers/firewire/core-card.c
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2009-06-14 11:45:27 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2009-06-14 14:26:29 +0200
commit5a124d382ea5c97be43c779e4f481455e0287654 (patch)
treed77069fe1456932f4ce2872dc6b1f963cb8662c5 /drivers/firewire/core-card.c
parentf91e3bd842ec6f5cea245993926ee8ff26250467 (diff)
downloadlwn-5a124d382ea5c97be43c779e4f481455e0287654.tar.gz
lwn-5a124d382ea5c97be43c779e4f481455e0287654.zip
firewire: net: allow for unordered unit discovery
Decouple the creation and destruction of the net_device from the order of discovery and removal of nodes with RFC 2734 unit directories since there is no reliable order. The net_device is now created when the first RFC 2734 unit on a card is discovered, and destroyed when the last RFC 2734 unit on a card went away. This includes all remote units as well as the local unit, which is therefore tracked as a peer now too. Also, locking around the list of peers is slightly extended to guard against peer removal. As a side effect, fwnet_peer.pdg_lock has become superfluous and is deleted. Peer data (max_rec, speed, node ID, generation) are updated more carefully. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/core-card.c')
-rw-r--r--drivers/firewire/core-card.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/firewire/core-card.c b/drivers/firewire/core-card.c
index 8c45e43da7c5..667603ac14b1 100644
--- a/drivers/firewire/core-card.c
+++ b/drivers/firewire/core-card.c
@@ -429,8 +429,6 @@ void fw_card_initialize(struct fw_card *card,
card->local_node = NULL;
INIT_DELAYED_WORK(&card->work, fw_card_bm_work);
- card->netdev = NULL;
- INIT_LIST_HEAD(&card->peer_list);
}
EXPORT_SYMBOL(fw_card_initialize);