[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <53CCD2DF.4010307@collabora.co.uk>
Date: Mon, 21 Jul 2014 10:44:15 +0200
From: Javier Martinez Canillas <javier.martinez@...labora.co.uk>
To: Lars-Peter Clausen <lars@...afoo.de>,
Dan Williams <dan.j.williams@...el.com>
CC: Vinod Koul <vinod.koul@...el.com>, dmaengine@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/1] dmaengine: pl330: Check if the DMA descriptor is
NULL
On 07/21/2014 10:22 AM, Lars-Peter Clausen wrote:
> On 07/20/2014 07:58 PM, Javier Martinez Canillas wrote:
>>
>> If this should not really happen and this patch is only a workaround since the
>> bug is elsewhere, please give me some hints and I'll try to fix it properly. I'm
>> not familiar with the PL330 DMA controller but just found what was the NULL
>> pointer being dereferenced and looked at your changes to see what was different now.
>
> I think the patch is fine as a quick workaround since it is simple and the
> previous commit broke previously working code.
>
Agreed, it matches what the old code was doing and other code is relying on this
behavior so works as a quick fix to avoid the current kernel oops.
> The long term fix is to stop calling dma_pl330_rqcb() from
> pl330_release_channel(). The first thing is you wouldn't expect any transfer
> to be active when the channel is released. And even if it was by accident we
> should not call the descriptor callback, but rather but it just back onto
> the descriptor pool.
Thanks a lot for the clarification. I thought it was something along the lines
of not calling the callback from pl330_release_channel() but preferred to not
change anything that I could not completely understand its side effects.
I'll study the driver more deeply and try to come up with a patch on top of this
one that fixes the actual cause rather than the consequence.
>
> - Lars
>
Best regards,
Javier
--
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