Re: [PATCH 00/46] Use dmaenginem_async_device_register to simplify code

From: Huang Shijie
Date: Sat Aug 04 2018 - 21:03:58 EST


On Fri, Aug 03, 2018 at 11:20:49AM +0300, Peter Ujfalusi wrote:
> Hi,
>
> On 2018-08-03 10:19, Huang Shijie wrote:
> > All the patches are using dmaenginem_async_device_register to simplify code
> > except the last one:
> > dmaengine: add COMPILE_TEST for the drivers
> >
> > I use the last one to do the compiler test.
> > There are still 20 drivers which do not use the dmaenginem_async_device_register.
> > Let me take a rest, if this patch set is accepted, I will do the rest.
>
> I think for most of the drivers this series is going to open a race
> which is essentially:
>
> prior:
> _remove()
> {
> ...
> dma_async_device_register()
> /* Free resources, disable HW, etc */

If these resources are managed by the devm_* APIs.
We can use the dmaenginem_async_device_register().

The Devres will release all the things in the following order:
................................................
dma_async_device_unregister()
/* Free resources, disable HW, etc */
................................................


Thanks
Huang Shijie