[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAAJw_ZtpubRhSF3K=B91oHXMPaTX6jGNLZn+e6ks83JS92k=bw@mail.gmail.com>
Date: Wed, 9 Jan 2013 01:17:16 +0800
From: Jeff Chua <jeff.chua.linux@...il.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: lkml <linux-kernel@...r.kernel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jonathan Corbet <corbet@....net>
Subject: Re: 2nd attempt: help with dma_alloc_coherent() + dma_free_coherent()
On Wed, Jan 9, 2013 at 12:39 AM, Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
> On Tue, Jan 8, 2013 at 7:51 AM, Jeff Chua <jeff.chua.linux@...il.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 majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists