firewire: Only free ORBs that completed the initial transaction.
authorKristian Høgsberg <krh@redhat.com>
Tue, 10 Apr 2007 22:11:20 +0000 (18:11 -0400)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Wed, 11 Apr 2007 22:18:57 +0000 (00:18 +0200)
commit12f26aa1b172a32604fedcb98d68c7aef268d6ad
treeefa6fff9b9ae825c7a99a97279f973e8966bad3b
parentfbb5423c1df99c846677480ce44588176352f7d9
firewire: Only free ORBs that completed the initial transaction.

In some situations we can receive the ORB status write before we
have received the ORB pointer write response.  When this happens,
we assume that the fw_transaction is finished and free the ORB
struct containing the fw_transaction.

This fix make the status write logic only accept status writes
for ORBs where the initial ORB pointer write transaction finished.

Signed-off-by: Kristian Høgsberg <krh@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/fw-sbp2.c