Commit 1b34e974 authored by Stefan Richter's avatar Stefan Richter

firewire: fw-sbp2: always enable IRQs before calling command ORB callback

On IOMMU-less noncoherent architectures, orb->callback will memcpy the
whole SCSI command buffer for READ-like SCSI commands.  It is therefore
friendlier to enable IRQs before the call, like before patch "Add
ref-counting for sbp2 orbs".
Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
Acked-by: default avatarKristian Høgsberg <krh@redhat.com>
parent 930e4b7f
...@@ -361,11 +361,12 @@ complete_transaction(struct fw_card *card, int rcode, ...@@ -361,11 +361,12 @@ complete_transaction(struct fw_card *card, int rcode,
orb->rcode = rcode; orb->rcode = rcode;
if (orb->rcode != RCODE_COMPLETE) { if (orb->rcode != RCODE_COMPLETE) {
list_del(&orb->link); list_del(&orb->link);
spin_unlock_irqrestore(&card->lock, flags);
orb->callback(orb, NULL); orb->callback(orb, NULL);
} else {
spin_unlock_irqrestore(&card->lock, flags);
} }
spin_unlock_irqrestore(&card->lock, flags);
kref_put(&orb->kref, free_orb); kref_put(&orb->kref, free_orb);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment