Re: PROBLEM: ARM-dma-mapping-fix-for-speculative-prefetching causeOOPS

From: Russell King
Date: Thu Jul 07 2011 - 05:39:53 EST


On Fri, Jul 01, 2011 at 12:54:09PM +0800, Qin Dehua wrote:
> The followings are messages of the three tests:
> ====== RUN 1 ======
> kernel BUG at drivers/md/raid5.c:3978!

So they are BUG_ON()s after all...

Could you try commenting out:

+ if (dir != DMA_TO_DEVICE)
+ outer_inv_range(paddr, paddr + size);

in ___dma_page_dev_to_cpu and:

+ if (dir != DMA_TO_DEVICE) {
+ unsigned long paddr = __pa(kaddr);
+ outer_inv_range(paddr, paddr + size);
+ }

in ___dma_single_dev_to_cpu please - and put a BUG_ON(dir == DMA_BIDIRECTIONAL)
in their place (because that won't be handled correctly with that change.)

Thanks.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/