summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-tegra/tegra2_clocks.c
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2011-01-05 14:24:12 -0700
committerColin Cross <ccross@android.com>2011-02-19 14:35:52 -0800
commit499ef7a5c48ea9fe8034b61de304ce9f6b753fe7 (patch)
treef1ca0f89104dab39f3152a06d7b797ed181a17d8 /arch/arm/mach-tegra/tegra2_clocks.c
parentfe92a026e30050d5c79b2d41274211550a14cb04 (diff)
downloadop-kernel-dev-499ef7a5c48ea9fe8034b61de304ce9f6b753fe7.zip
op-kernel-dev-499ef7a5c48ea9fe8034b61de304ce9f6b753fe7.tar.gz
ARM: tegra: Prevent requeuing in-progress DMA requests
If a request already in the queue is passed to tegra_dma_enqueue_req, tegra_dma_req.node->{next,prev} will end up pointing to itself instead of at tegra_dma_channel.list, which is the way a the end-of-list should be set up. When the DMA request completes and is list_del'd, the list head will still point at it, yet the node's next/prev will contain the list poison values. When the next DMA request completes, a kernel panic will occur when those poison values are dereferenced. This makes the DMA driver more robust in the face of buggy clients. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Colin Cross <ccross@android.com>
Diffstat (limited to 'arch/arm/mach-tegra/tegra2_clocks.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud