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

From: Hans Verkuil
Date: Fri Feb 05 2021 - 17:39:39 EST


On 05/02/2021 14:53, Andrew Lunn wrote:
> 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.

Since few people use the pwc driver anymore, and certainly not on non-intel
devices, I am happy with Matwey's patch as is merged in our media tree for
5.12.

I'll mark Takashi's patch as Obsolete in patchwork as well.

I might have an SBC with a chipidea, if so, I'll give it a quick spin.

Regards,

Hans