Re: [RFC PATCH v2] Utilize the PCI API in the TTM framework.
From: Konrad Rzeszutek Wilk
Date: Tue Mar 22 2011 - 10:55:13 EST
On Tue, Mar 22, 2011 at 02:13:19PM +0100, Michel Dänzer wrote:
> On Mon, 2011-03-21 at 19:18 -0400, Konrad Rzeszutek Wilk wrote:
> > On Mon, Mar 21, 2011 at 02:11:07PM +0100, Michel Dänzer wrote:
> > > On Fre, 2011-01-07 at 12:11 -0500, Konrad Rzeszutek Wilk wrote:
> > > >
> > > > 1) The 'NULL' when doing dma_alloc_coherent is unsightly. I was toying
> > > > with modifying the TTM API to pass in 'struct device' or 'struct pci_device'
> > > > but figured it would make first sense to get your guys input before heading that route.
> > >
> > > It's worse than unsightly: It breaks TTM on PPC. See
> > > arch/powerpc/include/asm/dma-mapping.h: get_dma_ops() returns NULL if
> > > NULL is passed in for the device, and most of its callers BUG in that
> > > case. The exception being dma_supported(), so a possible solution might
> > > be to use that for checking if dma_alloc_coherent can be used.
> > >
> > > Dave, please prevent this change from entering mainline before there's a
> > > solution for this.
> > We do have a fix for it:
> > git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git devel/ttm.pci-api.v5
> > Can you tell me if that works for you?
> http://git.kernel.org/?p=linux/kernel/git/konrad/xen.git;a=commitdiff;h=02bbfbab7dd6a107ea2f5d6e882631cd31c72eda and http://git.kernel.org/?p=linux/kernel/git/konrad/xen.git;a=commitdiff;h=733301920082553b52ce4453493fe6abf6aa7d1a fix the problem.
Wheew. Good! What kind of hardware do you have that triggered this? When I implemented
this patchset I hadn't thought about PPC b/c..well I didn't have the hardware nor
did I think there were any ATI/Nvidia cards that worked with it. Can you give me
an idea of type of hardware this is and where I could purchase it?
Much appreciated and thank you for testing this!
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/