diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-16 19:15:25 +0200 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-06-16 22:48:09 +0200 |
commit | d645f4dad056a98089df904294f66b96d04e91b6 (patch) | |
tree | 993ec9d0c64dac6fb4e1214f213220fbc0e29f63 /drivers/firewire/net.c | |
parent | 29ad14cddd6246d17ff22f496363dfd6b3de8964 (diff) |
firewire: core: fix iso context shutdown on card removal
If isochronous contexts existed when firewire-ohci was unloaded, the
core iso shutdown functions crashed with NULL dereferences, and buffers
etc. weren't released.
How the fix works: We first copy the card driver's iso shutdown hooks
into the dummy driver, then fw_destroy_nodes notifies upper layers of
devices going away, these should shut down (including their iso
contexts), wait_for_completion(&card->done) will be triggered after
upper layers gave up all fw_device references, after which the card
driver's shutdown proceeds.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/net.c')
0 files changed, 0 insertions, 0 deletions