Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+3 −2
Original line number Original line Diff line number Diff line
@@ -361,10 +361,11 @@ 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);
}
}