Skip to content

Commit

Permalink
firewire: fix resetting of bus manager retry counter
Browse files Browse the repository at this point in the history
An earlier change, maybe long ago, removed the copying of self_id_count
into card->self_id_count.  Since then each bus reset cleared
card->bm_retries even when it shouldn't.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
  • Loading branch information
Stefan Richter committed Jan 4, 2009
1 parent 0fa1986 commit d6f95a3
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 9 deletions.
14 changes: 6 additions & 8 deletions drivers/firewire/fw-topology.c
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,9 @@ report_lost_node(struct fw_card *card,
{
fw_node_event(card, node, FW_NODE_DESTROYED);
fw_node_put(node);

/* Topology has changed - reset bus manager retry counter */
card->bm_retries = 0;
}

static void
Expand All @@ -374,6 +377,9 @@ report_found_node(struct fw_card *card,
}

fw_node_event(card, node, FW_NODE_CREATED);

/* Topology has changed - reset bus manager retry counter */
card->bm_retries = 0;
}

void fw_destroy_nodes(struct fw_card *card)
Expand Down Expand Up @@ -514,14 +520,6 @@ fw_core_handle_bus_reset(struct fw_card *card,

spin_lock_irqsave(&card->lock, flags);

/*
* If the new topology has a different self_id_count the topology
* changed, either nodes were added or removed. In that case we
* reset the IRM reset counter.
*/
if (card->self_id_count != self_id_count)
card->bm_retries = 0;

card->node_id = node_id;
/*
* Update node_id before generation to prevent anybody from using
Expand Down
1 change: 0 additions & 1 deletion drivers/firewire/fw-transaction.h
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,6 @@ struct fw_card {
* We need to store up to 4 self ID for a maximum of 63
* devices plus 3 words for the topology map header.
*/
int self_id_count;
u32 topology_map[252 + 3];
u32 broadcast_channel;

Expand Down

0 comments on commit d6f95a3

Please sign in to comment.