firewire: core: use separate timeout for each transaction
authorClemens Ladisch <clemens@ladisch.de>
Tue, 27 Apr 2010 07:07:00 +0000 (09:07 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Tue, 18 May 2010 22:26:30 +0000 (00:26 +0200)
commit5c40cbfefa828208c671e2f58789e4dd04f79563
treeaa7c38eb0c9e19ee0153a1764b24c67abaf5746d
parent753a8970f68594ea69c5fc13fbca18dbd9402996
firewire: core: use separate timeout for each transaction

Using a single timeout for all transaction that need to be flushed does
not work if the submission of new transactions can defer the timeout
indefinitely into the future.  We need to have timeouts that do not
change due to other transactions; the simplest way to do this is with a
separate timer for each transaction.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (+ one lockdep annotation)
drivers/firewire/core-card.c
drivers/firewire/core-transaction.c
drivers/firewire/core.h
include/linux/firewire.h