firewire: fw-ohci: plug dma memory leak in AR handler
authorJarod Wilson <jwilson@redhat.com>
Tue, 25 Mar 2008 20:47:16 +0000 (16:47 -0400)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Thu, 27 Mar 2008 20:01:14 +0000 (21:01 +0100)
commit6b84236d37ef602d1e4f52b27162c20394e83359
tree0e383a32e66f7866fb5ac574acfa408b59e2d8cf
parent05dda977f2574c3341abef9b74c27d2b362e1e3a
firewire: fw-ohci: plug dma memory leak in AR handler

There's an ugly little memory leak in firewire-ohci's
ar_context_tasklet(), where we're not freeing up some of the memory we
use for each ar_buffer, due to a moving pointer. The problem has been
there for a while, but didn't get noticed until after converting the AR
routines over to use coherent DMA and I started running into I/O stall-
outs with the following message output repeatedly to the console:

PCI-DMA: Out of IOMMU space for 53248 bytes at device 0000:04:09.0

Plugging this leak is definitely necessary, but unfortunately, isn't the
entire answer to my problem, it only increases the amount of I/O that I
can do before hitting the problem. Still working on tracking down the
root cause..

Signed-off-by: Jarod Wilson <jwilson@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/fw-ohci.c