[PATCH v2 1/6] serial: imx: only set DMA rx-ing when DMA starts

Romain Perier romain.perier at collabora.com
Thu Jul 6 01:31:38 PDT 2017


Hello,


Le 05/07/2017 à 15:29, Uwe Kleine-König a écrit :
> Hello,
>
> On Wed, Jul 05, 2017 at 03:07:01PM +0200, Romain Perier wrote:
>> From: Nandor Han <nandor.han at ge.com>
>>
>> Avoid the situation when `dma_is_rxing` could incorrectly signal that
>> DMA RX channel is receiving data in case DMA preparation or sg mapping
>> fails.
>>
>> This commit fixes the issues by moving the assignment of dma_is_rxing
>> out of imx_disable_rx_int(), then the variable is set to 1 from
>> start_rx_dma() only when the preparation is correctly done.
> I'd write:
>
> 	There are a few issues with setting dma_is_rxing to 1 in
> 	imx_disable_rx_int:
>
> 	 - Currently always after imx_disable_rx_int() the function
> 	   start_rx_dma() is called. This dependency isn't obvious though.
> 	 - start_rx_dma() does error checking and might exit without enabling
> 	   DMA but keeping dma_is_rxing 1.
>
> 	So the more natural place for setting dma_is_rxing to 1 is in
> 	start_rx_dma after all errors are checked.
>
> If you use this, there is nothing left of Nandor Han's patch and you can
> drop his authorship.
>
> Best regards
> Uwe
>
Ok, will do. No other feedback for the rest of the series ? (just to
know if I send a v3 or If I wait a bit...)

Thanks,
Romain




More information about the linux-arm-kernel mailing list