linux/arch/arm
Santosh Shilimkar da1b94e6a6 ARM: OMAP: Fix for possible race condition in omap_free_dma()
Fix the possible race condition in omap_free_dma(). Function omap_free_dma()
sets the dev_id = -1 and then accesses the channel afterwards to clear it.
But setting the dev_id=-1 makes the channel available for allocation again.
So it is possible someone else can grab it and results are unpredictable.
To avod this DMA channle is cleared first and then the dev_id = -1 is set.

Thanks to McNeil, Sean <sean.mcneil@ti.com> for ointing out this issue.

Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2009-04-23 11:10:40 -07:00
..
boot arm: allow usage of string functions in linux/string.h 2009-03-31 13:05:36 +10:30
common [ARM] 5455/1: Fix IRQ noise from VIC code 2009-04-16 21:29:46 +01:00
configs Merge branch 'defconfig-s3c2410' of git://aeryn.fluff.org.uk/bjdooks/linux 2009-04-17 21:35:56 +01:00
include/asm [ARM] 5450/1: Flush only the needed range when unmapping a VMA 2009-04-15 10:01:02 +01:00
kernel Separate out common fstatat code into vfs_fstatat 2009-04-20 23:02:51 -04:00
lib Merge branch 'clps7500' into devel 2008-11-27 12:39:43 +00:00
mach-aaec2000 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-at91 clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-clps711x [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-davinci clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-ebsa110 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-ep93xx [ARM] 5451/1: ep93xx:core.c: build warning fix 2009-04-15 10:01:03 +01:00
mach-footbridge [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-gemini [ARM] arch_reset() now takes a second parameter 2009-03-30 10:40:12 +01:00
mach-h720x [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-imx clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-integrator [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-iop13xx dma-mapping: replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64) 2009-04-07 08:31:10 -07:00
mach-iop32x [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-iop33x [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-ixp4xx clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-ixp23xx [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-ixp2000 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-kirkwood dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
mach-ks8695 Merge branch 'highmem' into devel 2009-03-24 22:47:45 +00:00
mach-l7200 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-lh7a40x [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-loki [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-mmp [ARM] arch_reset() now takes a second parameter 2009-03-30 10:40:12 +01:00
mach-msm clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-mv78xx0 Merge branch 'master' of git://git.marvell.com/orion into devel 2009-03-19 23:10:40 +00:00
mach-mx1 MX1ADS: remove I2C ifdefs 2009-04-16 12:57:15 +02:00
mach-mx2 imx21: activate i2c 2009-04-16 12:57:13 +02:00
mach-mx3 mx31ads: Mark as having full regulatoion constraints with 1133-EV1 board 2009-04-16 13:03:56 +02:00
mach-netx clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-ns9xxx clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-omap1 clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-omap2 clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-orion5x dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
mach-pnx4008 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-pxa clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-realview clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-rpc [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-s3c24a0/include/mach [ARM] S3C: Make IRQ_EINT sleep control common 2009-03-08 12:35:36 +00:00
mach-s3c2400 [ARM] remove a common set of __virt_to_bus definitions 2008-11-28 15:36:49 +00:00
mach-s3c2410 i2c-s3c2410: Simplify bus frequency calculation 2009-04-07 10:18:33 +01:00
mach-s3c2412 [ARM] JIVE: Fix sparse warnings about items which should be static 2009-04-17 12:42:24 +01:00
mach-s3c2440 [ARM] Osiris: Fix double initialisation in machine block 2009-04-17 12:42:24 +01:00
mach-s3c2442 [ARM] Arrange for platforms to select appropriate CPU support 2008-11-27 12:38:00 +00:00
mach-s3c2443 S3C24XX: Move and update IIS headers 2009-03-05 12:00:59 +00:00
mach-s3c6400 Merge branch 'next-s3c64xx-regs' of git://aeryn.fluff.org.uk/bjdooks/linux into devel 2009-03-26 22:46:22 +00:00
mach-s3c6410 [ARM] SMDK6410: Request GPIOs for LCD power control 2009-04-15 14:46:03 +01:00
mach-sa1100 [ARM] collie: fix two minor formatting nits 2009-03-25 10:15:00 +00:00
mach-shark [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mach-versatile clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
mach-w90x900 [ARM] pass reboot command line to arch_reset() 2009-03-19 16:20:24 +00:00
mm [ARM] pxa: Add support for suspend on PalmTX, T5 and LD 2009-04-04 10:26:34 +08:00
nwfpe [ARM] Convert asm/uaccess.h to linux/uaccess.h 2008-09-06 11:35:55 +01:00
oprofile Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm 2009-03-28 14:03:14 -07:00
plat-iop dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
plat-mxc clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
plat-omap ARM: OMAP: Fix for possible race condition in omap_free_dma() 2009-04-23 11:10:40 -07:00
plat-orion clocksource: pass clocksource to read() callback 2009-04-21 13:41:47 -07:00
plat-pxa [ARM] pxa: build arch/arm/plat-pxa/mfp.c only when PXA3xx or ARCH_MMP defined 2009-03-26 21:30:11 +08:00
plat-s3c [ARM] S3C: Fix sparse warning from missing 's3c_device_hwmon' 2009-04-17 12:42:24 +01:00
plat-s3c24xx [ARM] S3C24XX: ADC: Check pending queue before freeing adc client 2009-04-17 12:46:36 +01:00
plat-s3c64xx [ARM] S3C64XX: add AHB_CON and SPCON register address definitions 2009-03-10 16:33:42 +00:00
tools [ARM] update mach-types 2009-03-23 16:12:37 -04:00
vfp [ARM] 5440/1: Fix VFP state corruption due to preemption during VFP exceptions 2009-04-01 22:17:50 +01:00
Kconfig Merge branch 'for-rmk' of git://gitorious.org/linux-gemini/mainline into devel 2009-03-26 23:10:11 +00:00
Kconfig-nommu [ARM] 4532/1: allow configuration of processor ID 2007-10-12 23:43:02 +01:00
Kconfig.debug [ARM] 5412/1: XSCALE: add ice dcc support 2009-02-27 20:57:46 +00:00
Makefile Merge branch 'for-rmk' of git://gitorious.org/linux-gemini/mainline into devel 2009-03-26 23:10:11 +00:00