Re: [cocci] [PATCH 1/7] coccinelle: remove obsolete pci_free_consistent.cocci
Julia Lawall <[email protected]>
| Newsgroups | fr.inria.cocci,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 24 Aug 2026, Sang-Heon Jeon wrote:
> pci_alloc_consistent() and pci_free_consistent() were removed by commit
> 7968778914e5 ("PCI: Remove the deprecated "pci-dma-compat.h" API").
Thanks.
There are a lot of other references to these things:
Documentation/scsi/ChangeLog.arcmsr:** 8.replace pci_alloc_consistent()/pci_free_consistent() with kmalloc()/kfree() in arcmsr_iop_message_xfer()
arch/alpha/kernel/pci_iommu.c: DBGA2("pci_free_consistent: [%llx,%zx] from %ps\n",
arch/sparc/kernel/ioport.c: * <zaitcev> Now, driver calls pci_free_consistent(with result of
drivers/net/fddi/defxx.h: char *kmalloced; /* pci_free_consistent this on unload */
drivers/parisc/ccio-dma.c: * This function implements the pci_free_consistent function.
drivers/scsi/3w-xxxx.c: 1.02.00.029 - Add missing pci_free_consistent() in tw_allocate_memory().
sound/pci/asihpi/hpios.h:Need all info for parameters to pci_free_consistent
Documentation/scsi/53c700.rst: used for the pci_alloc_consistent() and pci_map_*() functions.
Documentation/scsi/ChangeLog.arcmsr:** 8.replace pci_alloc_consistent()/pci_free_consistent() with kmalloc()/kfree() in arcmsr_iop_message_xfer()
Documentation/scsi/ChangeLog.megaraid_sas: pci_alloc_consistent replaced by dma_alloc_coherent. With this
Documentation/scsi/ChangeLog.megaraid_sas: > pci_alloc_consistent() just goes and assumes GFP_ATOMIC, whereas
arch/alpha/kernel/pci_iommu.c: printk(KERN_INFO "pci_alloc_consistent: "
arch/alpha/kernel/pci_iommu.c: DBGA2("pci_alloc_consistent: %zx -> [%p,%llx] from %ps\n",
arch/alpha/kernel/pci_iommu.c: be values that were returned from pci_alloc_consistent. SIZE must
arch/alpha/kernel/pci_iommu.c: be the same as what as passed into pci_alloc_consistent.
arch/powerpc/platforms/pseries/iommu.c: * a power of two (due to pci_alloc_consistent requirements).
arch/sparc/kernel/ioport.c: * <rth> zait: as long as pci_alloc_consistent produces something addressable,
drivers/misc/genwqe/card_utils.c: * page_list and pci_alloc_consistent for the sg_list.
drivers/net/wan/wanxl.c: * and pray pci_alloc_consistent() will use this info. It should
drivers/net/wan/wanxl.c: printk(KERN_DEBUG "wanXL %s: pci_alloc_consistent() returned memory"
drivers/parisc/ccio-dma.c:** o SAFE_DMA must be set for "memory" allocated via pci_alloc_consistent().
drivers/parisc/ccio-dma.c:#define HINT_SAFE_DMA 0x02UL /* used for pci_alloc_consistent() pages */
drivers/parisc/ccio-dma.c: * This function implements the pci_alloc_consistent function.
sound/pci/asihpi/hpios.h:/** Details of a memory area allocated with pci_alloc_consistent
julia
>
> So remove the obsolete script.
>
> Signed-off-by: Sang-Heon Jeon <[email protected]>
> ---
> .../coccinelle/free/pci_free_consistent.cocci | 53 -------------------
> 1 file changed, 53 deletions(-)
> delete mode 100644 scripts/coccinelle/free/pci_free_consistent.cocci
>
> diff --git a/scripts/coccinelle/free/pci_free_consistent.cocci b/scripts/coccinelle/free/pci_free_consistent.cocci
> deleted file mode 100644
> index e062b9ba09ff..000000000000
> --- a/scripts/coccinelle/free/pci_free_consistent.cocci
> +++ /dev/null
> @@ -1,53 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0-only
> -/// Find missing pci_free_consistent for every pci_alloc_consistent.
> -///
> -// Confidence: Moderate
> -// Copyright: (C) 2013 Petr Strnad.
> -// URL: https://coccinelle.gitlabpages.inria.fr/website
> -// Keywords: pci_free_consistent, pci_alloc_consistent
> -// Options: --no-includes --include-headers
> -
> -virtual report
> -virtual org
> -
> -@search@
> -local idexpression id;
> -expression x,y,z,e;
> -position p1,p2;
> -type T;
> -@@
> -
> -id = pci_alloc_consistent@p1(x,y,&z)
> -... when != e = id
> -if (id == NULL || ...) { ... return ...; }
> -... when != pci_free_consistent(x,y,id,z)
> - when != if (id) { ... pci_free_consistent(x,y,id,z) ... }
> - when != if (y) { ... pci_free_consistent(x,y,id,z) ... }
> - when != e = (T)id
> - when exists
> -(
> -return 0;
> -|
> -return 1;
> -|
> -return id;
> -|
> -return@p2 ...;
> -)
> -
> -@script:python depends on report@
> -p1 << search.p1;
> -p2 << search.p2;
> -@@
> -
> -msg = "ERROR: missing pci_free_consistent; pci_alloc_consistent on line %s and return without freeing on line %s" % (p1[0].line,p2[0].line)
> -coccilib.report.print_report(p2[0],msg)
> -
> -@script:python depends on org@
> -p1 << search.p1;
> -p2 << search.p2;
> -@@
> -
> -msg = "ERROR: missing pci_free_consistent; pci_alloc_consistent on line %s and return without freeing on line %s" % (p1[0].line,p2[0].line)
> -cocci.print_main(msg,p1)
> -cocci.print_secs("",p2)
> --
> 2.43.0
>
>