mirror of
https://github.com/torvalds/linux.git
synced 2026-05-12 16:18:45 +02:00
Revert "firewire: core: disable bus management work temporarily during updating topology"
This reverts commit abe7159125.
The bus manager work item acquires the spin lock of fw_card again, thus
no need to serialize it against fw_core_handle_bus_reset().
Link: https://lore.kernel.org/r/20250924131823.262136-3-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
This commit is contained in:
parent
a6176b7b2a
commit
e216c49b3e
|
|
@ -460,14 +460,8 @@ void fw_core_handle_bus_reset(struct fw_card *card, int node_id, int generation,
|
|||
{
|
||||
struct fw_node *local_node;
|
||||
|
||||
might_sleep();
|
||||
|
||||
trace_bus_reset_handle(card->index, generation, node_id, bm_abdicate, self_ids, self_id_count);
|
||||
|
||||
// Disable bus management work during updating the cache of bus topology, since the work
|
||||
// accesses to some members of fw_card.
|
||||
disable_delayed_work_sync(&card->bm_work);
|
||||
|
||||
scoped_guard(spinlock, &card->lock) {
|
||||
// If the selfID buffer is not the immediate successor of the
|
||||
// previously processed one, we cannot reliably compare the
|
||||
|
|
@ -501,8 +495,6 @@ void fw_core_handle_bus_reset(struct fw_card *card, int node_id, int generation,
|
|||
}
|
||||
}
|
||||
|
||||
enable_delayed_work(&card->bm_work);
|
||||
|
||||
fw_schedule_bm_work(card, 0);
|
||||
|
||||
// Just used by transaction layer.
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user