aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorStefan Bader <stefan.bader@canonical.com>2010-03-29 19:12:36 +0200
committerJohn Rigby <john.rigby@linaro.org>2011-09-12 09:02:13 -0600
commitf170e7640f82c8790966a321f4c530aaea238f31 (patch)
tree01b3e29c822650395a78caeebaf3402c2380afd8 /arch
parentb1441122727abe8c2a09d87dd6acc3b8568f82b9 (diff)
UBUNTU: SAUCE: (no-up) dma-mapping: Remove WARN_ON in dma_free_coherent
BugLink: http://bugs.launchpad.net/bugs/458201 Triggered by the following backtrace: WARNING: at /build/buildd/linux-2.6.32/arch/x86/include/asm/dma-mapping.h:154 ___free_dma_mem_cluster+0x102/0x110() [<ffffffff81064f9b>] warn_slowpath_common+0x7b/0xc0 [<ffffffff81064ff4>] warn_slowpath_null+0x14/0x20 [<ffffffff8139a2a2>] ___free_dma_mem_cluster+0x102/0x110 [<ffffffff8139a072>] __sym_mfree+0xd2/0x100 [<ffffffff8139a109>] __sym_mfree_dma+0x69/0x100 [<ffffffff8139245f>] sym_hcb_free+0x8f/0x1f0 This patch never will be accepted upstream because the WARN_ON is supposed to perevent driver development which is only compatible with x86 on x86 (ARM can sleep in that function). The right way to fix it would be to make the offending function use locks in the right way but that requires careful implementation. Signed-off-by: Stefan Bader <stefan.bader@canonical.com> Acked-by: Andy Whitcroft <apw@canonical.com> Signed-off-by: Andy Whitcroft <apw@canonical.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/include/asm/dma-mapping.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/arch/x86/include/asm/dma-mapping.h b/arch/x86/include/asm/dma-mapping.h
index d4c419f883a..e2ba5100305 100644
--- a/arch/x86/include/asm/dma-mapping.h
+++ b/arch/x86/include/asm/dma-mapping.h
@@ -144,8 +144,6 @@ static inline void dma_free_coherent(struct device *dev, size_t size,
{
struct dma_map_ops *ops = get_dma_ops(dev);
- WARN_ON(irqs_disabled()); /* for portability */
-
if (dma_release_from_coherent(dev, get_order(size), vaddr))
return;