Re: [PATCH] dmaengine: switch from 'pci_' to 'dma_' API

From: Christophe JAILLET
Date: Mon Aug 23 2021 - 17:11:36 EST


Le 23/08/2021 à 21:47, Julia Lawall a écrit :


On Mon, 23 Aug 2021, Christophe JAILLET wrote:

Le 23/08/2021 à 09:29, Andy Shevchenko a écrit :
On Sun, Aug 22, 2021 at 02:40:22PM +0200, Christophe JAILLET wrote:
The wrappers in include/linux/pci-dma-compat.h should go away.

The patch has been generated with the coccinelle script below.

It has been hand modified to use 'dma_set_mask_and_coherent()' instead of
'pci_set_dma_mask()/pci_set_consistent_dma_mask()' when applicable.
This is less verbose.

It has been compile tested.

@@
expression e1, e2;
@@
- pci_set_consistent_dma_mask(e1, e2)
+ dma_set_coherent_mask(&e1->dev, e2)

Can we, please, replace this long noise in the commit message with a link to
a
script in coccinelle data base?

Hi,

There is no script in the coccinelle data base up to now, and there is no
point in adding one now.
The goal of these patches is to remove a deprecated API, so when the job will
be finished, this script would be of no use and would be removed.

However, I agree that the script as-is is noisy.

I'll replace it with a link to a message already available in lore.

You can perhaps include a script that represents a very typical case or
the specific case that is relevant to the patch.

julia


Hi julia,

I still have to post ~9 of such patches.
I'll try your proposal to only include relevant part of the script.
It should be do-able.

The most puzzling in the remaining files is:
drivers/char/xillybus/xillybus_pcie.c

In this driver, 'xilly_pci_direction()' looks odd and somewhat useless (but I'll let it more or less as-is. It may catch corner cases)

What puzzles me is "struct xilly_mapping" where the "void *" seems to
hold different kinds of pointer depending of the context.

I could add some casting but would prefer to avoid this and have a cleaner solution.

I've not look in detail yet but my first attempt were not very conclusive.



"message/fusion" has not been Acked yet.
All patches have been posted but there are huge and I can easily understand that reviewing them is complex because of the GFP_KERNEL I introduce. Only one has been merged yet.
Moreover, according to -next logs, no single other patch has been merged since end of June.

CJ