On Wed, Jan 9, 2013 at 12:39 AM, Linus Torvalds <torva...@linux-foundation.org> wrote: > On Tue, Jan 8, 2013 at 7:51 AM, Jeff Chua <jeff.chua.li...@gmail.com> wrote: >> No response so far ... I'm sure someone know this stuff ... Thanks, Jeff. >> >> I'm trying to understand how this oops in the diva driver and it's just a >> simple dma_alloc_coherent() followed by dma_free_coherent(), but it oops. >> Why? > > Umm. You're using a NULL 'dev' pointer? > > iommu_no_mapping() will look if the device is a PCI device, and that's > where it oopses. > > Now, it looks like some users "know" that the device doesn't matter > (which is true on some platforms), but that's bogus. The device is how > you even find out what the rules for DMA access are (see for example > dma_set_mask() etc), so giving a NULL device is insane. > > Linus
Interesting, but there are 54 lines under the kernel directories that use "dma_alloc_coherent(NULL," followed by "dma_free_coherent(NULL," So, shouldn't they be fixed as well? ... unless they are so old that nobody cares anymore ... # find . -exec grep -H "dma_alloc_coherent(NULL" {} \; | wc -l 54 #find . -exec grep -H "dma_free_coherent(NULL" {} \; | wc -l 72 Thanks, Jeff -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/