linux/drivers/dma
Per Forlin 70a207ad4d dmaengine/ste_dma40: fix Oops due to double free of client descriptor
The client list may exist in two lists at the same time. This makes free
fail since the same desc is freed multiple times. Remove desc from
client list when adding it to the pending queue. Move free of client owned
descriptors from free_dma() to terminate_all().

Unable to handle kernel paging request at virtual address 00100104
pgd = dea8c000
[00100104] *pgd=1ea62831, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1] PREEMPT SMP
Modules linked in:
CPU: 0    Not tainted  (3.1.0-rc3+ #58)
PC is at d40_free_chan_resources+0x64/0x330

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2011-09-05 17:11:21 +05:30
..
ioat ioat: fix xor_idx_to_desc 2011-08-03 22:25:06 -07:00
ipu Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma 2011-08-01 13:46:37 -10:00
ppc4xx Merge branch 'old_next' into next 2011-04-06 11:51:12 +05:30
amba-pl08x.c Merge branch 'next' into v3.1-rc4 2011-09-02 16:43:44 +05:30
at_hdmac_regs.h dmaengine: at_hdmac: add wrappers for testing channel state 2011-08-19 18:39:59 +05:30
at_hdmac.c dmaengine: at_hdmac: fix way to specify cyclic capability 2011-08-19 18:40:04 +05:30
coh901318_lli.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
coh901318_lli.h tree-wide: Assorted spelling fixes 2010-02-09 11:13:56 +01:00
coh901318.c Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma 2011-08-01 13:46:37 -10:00
dmaengine.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2011-08-04 16:43:43 -10:00
dmatest.c dmatest: make dmatest threads freezable 2011-08-29 18:01:27 +05:30
dw_dmac_regs.h dmaengine/dw_dmac: Update maintainer-ship 2011-05-25 18:30:37 +05:30
dw_dmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2011-05-28 12:35:15 -07:00
ep93xx_dma.c dma/ep93xx_dma.c: local symbols should be static 2011-06-16 09:47:49 +05:30
fsldma.c dt/fsldma: fix build warning caused by of_platform_device changes 2011-04-10 23:34:38 -07:00
fsldma.h fsldma: fix controller lockups 2011-03-11 17:52:36 -08:00
imx-dma.c ARM i.MX dma: Fix burstsize settings 2011-07-07 09:55:50 +02:00
imx-sdma.c dmaengine i.MX SDMA: use request_firmware_nowait 2011-08-29 20:08:53 +05:30
intel_mid_dma_regs.h Fix common misspellings 2011-03-31 11:26:23 -03:00
intel_mid_dma.c dma: intel_mid_dma: remove redundant pci_set_drvdata calls 2011-07-26 15:33:27 +05:30
iop-adma.c dma: use BUG_ON correctly in iop-adma.c, v4 2011-03-31 11:07:40 +05:30
iovlock.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
Kconfig dmaengine: add ep93xx DMA support 2011-06-08 15:10:44 -06:00
Makefile dmaengine: add ep93xx DMA support 2011-06-08 15:10:44 -06:00
mpc512x_dma.c Fix common misspellings 2011-03-31 11:26:23 -03:00
mv_xor.c dma: mv_xor: use resource_size() 2011-07-14 03:32:31 +05:30
mv_xor.h mv_xor: implement a private tx_list 2009-09-08 17:53:03 -07:00
mxs-dma.c mxs-dma: enable CLKGATE before accessing registers 2011-08-16 18:33:42 +05:30
pch_dma.c pch_dma: Fix CTL register access issue 2011-07-25 19:11:12 +05:30
pl330.c dmaengine: pl330: make platform data optional 2011-07-26 15:32:52 +05:30
shdma.c Merge branch 'common/dma' into sh-latest 2011-06-21 17:59:05 +09:00
shdma.h dmaengine: shdma: add chcr_ie_bit 2011-06-21 17:56:01 +09:00
ste_dma40_ll.c dma40: cyclic xfer support 2011-01-30 22:27:21 -08:00
ste_dma40_ll.h dmaengine/ste_dma40: use AMBA PrimeCell helper macros 2011-07-14 04:09:10 +05:30
ste_dma40.c dmaengine/ste_dma40: fix Oops due to double free of client descriptor 2011-09-05 17:11:21 +05:30
timb_dma.c mfd: Use mfd cell platform_data for timberdale cells platform bits 2011-05-26 19:45:05 +02:00
TODO dmaengine: remove ste_dma40 from issue_pending TODO 2011-07-14 04:02:08 +05:30
txx9dmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2010-05-21 17:05:46 -07:00
txx9dmac.h txx9dmac: implement a private tx_list 2009-09-08 17:53:03 -07:00