summaryrefslogtreecommitdiffstats
path: root/drivers/firewire/core.h
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2010-04-19 17:29:14 +0200
committerStefan Richter <stefanr@s5r6.in-berlin.de>2010-04-19 20:00:44 +0200
commit7906054f0d597246178b3154adca76de29913aa5 (patch)
tree0645ad88ab8ad5cd98ce3cef95655ccc5bca0ef8 /drivers/firewire/core.h
parentedd5bdaf128e04066caac84fcb21377197ea0d64 (diff)
firewire: core: make transaction label allocation more robust
If one request is so long-lived that it does not get a response before the following 63 requests, its bit in tlabel_mask is still set when the next request tries to allocate a transaction label for that number. In this state, while the first request is not completed or timed out, no new requests can be submitted. To fix this, skip over any label still in use, and do not error out unless we have entirely run out of labels. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire/core.h')
0 files changed, 0 insertions, 0 deletions