Re: [PATCH] dmaengine: virt-dma: fix completion list manipulation

From: Robert Jarzmik
Date: Tue Mar 03 2015 - 06:55:17 EST


Lars-Peter Clausen <lars@xxxxxxxxxx> writes:

> On 03/03/2015 11:27 AM, Robert Jarzmik wrote:
>> I still think that their use of virt-dma is incorrect, ie. that at one point in
>> time a virtual descriptor has to be on exactly one list of virt-dma (excepting
>> transient critical sections).
>
> Well the drivers conform to the current expected behavior. It might be worth
> changing that, but you need to modify all the driver to conform to the new
> semantics, rather than just changing the API.
>
> Requiring that the descriptor is always on one of the virt-dma list is to
> restrictive. Some DMA controllers are able to submit multiple descriptors at the
> same time, these typically have a separate list to manage to active
> descriptors.

Ah, so your understanding of the virt-dma API is that the virtual descriptors
might be out of virt-dma linked lists. In that case, I must rethink this over,
as I was thinking the "multiple active descriptors" case was relying on all
these descriptors being on the desc_issued list, and the "multiple simultaneous
active" list was not in virtual descriptor but in the dmaengine driver's one.

Anyway, I'll drop this patch for now, as nobody else seems to care about
virt-dma semantics, and I won't modify the API if the pros and cons I see do
look equivalent (which is the case right now).

Cheers.

--
Robert
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/