[PATCH 0/5] firewire: fix crashes in workqueue jobs

From: Stefan Richter
Date: Sun Feb 24 2008 - 12:58:00 EST


Here come 3 fixes + 2 cleanups.

1/5 firewire: invalid pointers used in fw_card_bm_work
2/5 firewire: fix crash in automatic module unloading
3/5 firewire: remove superfluous reference counting
4/5 firewire: fw-sbp2: fix reference counting
5/5 firewire: refactor fw_unit reference counting

The main theme is that the firewire-core module has to stay loaded until
after all workqueue jobs of the core and of protocol drivers have been
finished. This is accomplished by tracking the sum of references to
instances of fw_device for each card. (As a side effect, we don't need
to count references to instances of fw_card anymore.)

drivers/firewire/fw-card.c | 99 ++++++++++++++++----------------------
drivers/firewire/fw-device.c | 21 ++------
drivers/firewire/fw-device.h | 35 ++++++++++---
drivers/firewire/fw-ohci.c | 8 +--
drivers/firewire/fw-sbp2.c | 9 ++-
drivers/firewire/fw-topology.c | 1
drivers/firewire/fw-transaction.h | 6 --
7 files changed, 89 insertions(+), 90 deletions(-)
--
Stefan Richter
-=====-==--- --=- ==---
http://arcgraph.de/sr/

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/