aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2007-08-29 13:40:28 -0400
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-10-16 18:00:07 -0400
commitab88ca488b8af66c3defa165874e81e695319a19 (patch)
tree0f798dacb2c16317a15b043697ae2e74384ff319
parente524f616f59722bc7f93eb1fd79d3bbdcdf4f894 (diff)
firewire: fw-ohci: missing dma_unmap_single
at_context_queue_packet() didn't clean up in an early exit path. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Kristian Høgsberg <krh@redhat.com>
-rw-r--r--drivers/firewire/fw-ohci.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c
index a33374825526..ec70c9f91171 100644
--- a/drivers/firewire/fw-ohci.c
+++ b/drivers/firewire/fw-ohci.c
@@ -680,6 +680,9 @@ at_context_queue_packet(struct context *ctx, struct fw_packet *packet)
680 680
681 /* FIXME: Document how the locking works. */ 681 /* FIXME: Document how the locking works. */
682 if (ohci->generation != packet->generation) { 682 if (ohci->generation != packet->generation) {
683 if (packet->payload_length > 0)
684 dma_unmap_single(ohci->card.device, payload_bus,
685 packet->payload_length, DMA_TO_DEVICE);
683 packet->ack = RCODE_GENERATION; 686 packet->ack = RCODE_GENERATION;
684 return -1; 687 return -1;
685 } 688 }