Re: [PATCH] media: pwc: Fix the URB buffer allocation

From: Andrew Lunn
Date: Fri Feb 05 2021 - 18:59:54 EST


On Fri, Feb 05, 2021 at 02:42:23PM +0100, Takashi Iwai wrote:
> On Fri, 05 Feb 2021 14:13:02 +0100,
> Andrew Lunn wrote:
> >
> > Hi Takashi
> >
> > > Indeed, looks so. In most cases, this doesn't matter since both point
> > > to the same device object. In some cases like xhci-plat HCD, they
> > > differ. And sysdev might be a better choice from the consistency
> > > POV.
> > >
> > > But this brought an interesting question, too. eg. USB chipidea
> > > HCD uses platform devices for both controller and sysdev, and I
> > > couldn't find any DMA mask setup. So, no matter what to use, the uwc
> > > driver would be broken on this... Maybe it's just not covered.
> >
> > Did you do a git bisect to see what actually broke it? "1161db6776bd:
> > media: usb: pwc: Don't use coherent DMA buffers for ISO transfer"
> > introduced the code, not the regression. If we understand the
> > regression, that might give us the answer about chipidea.
>
> It's the recent DMA core change, the commit f959dcd6ddfd ("dma-direct:
> Fix potential NULL pointer dereference"). But basically it's a right
> fix, and the driver hitting this "regression" has been already broken
> but casually worked without setting a proper DMA mask.

So for the chipidea, it also just 'casually worked'. But now it
probably does not. But that is a separate chipidea issue. None of my
ARM systems use the chipidea IP core, so i cannot test anything.

Andrew