linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
@ 2022-01-06 21:45 Christophe JAILLET
  2022-01-06 21:55 ` [PATCH 16/16] PCI: " Christophe JAILLET
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Christophe JAILLET @ 2022-01-06 21:45 UTC (permalink / raw)
  To: arnd, hch, akpm, rth, ink, mattst88, mpe, benh, paulus, davem,
	airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas
  Cc: linux-alpha, linuxppc-dev, sparclinux, dmaengine, linux-fpga,
	linux-media, MPT-FusionLinux.pdl, linux-scsi, linux-pci,
	linux-kernel, kernel-janitors, Christophe JAILLET

This serie axes all the remaining usages of the deprecated "pci-dma-compat.h"
API.

All these patches have already been posted.

They have been generated with a coccinelle script.
The tricky parts are patches that use dma_alloc_coherent() because the correct
GFP flag has to be used in place of the previous embedded GFP_ATOMIC.

Patches 1-3 are already Reviewed. References to the corresponding mail is
given below the ---

Patch 1-2,4-10 are just generated from the coccinelle script. Only too long
lines have been hand modified. dma_alloc_coherent() modification are NOT part
of these patches.

Patch 3 also includes some 'dma_set_mask_and_coherent()' instead of
'pci_set_dma_mask()/pci_set_consistent_dma_mask()'.
I've left this additional modification because it was reviewed with it.

Patch 10-15 are the tricky parts. Explanation of which GFP flag is the right one
is given in each patch. It has been divided in several patches to ease review.

Patch 15 is the only one I'm slighly unsure with. The old code was using a
GFP_USER flag in the function. I'm not familiar with it.
I *guess*  that GFP_KERNEL is fine, but maybe it should also be GFP_USER or left
as GFP_ATOMIC so that nothing is changed.

Patch 16 is the last step that remove "pci-dma-compat.h" and its only usage.


All patches, exept 1-2,6 that are architecture specific, have been compile tested.


After all that, a few rst files, 1 or 2 strings in error messages and some
error branching labels should still need some attention. 
This is some minor issues.


Only the cover letter is sent to every one. Each patch is sent to the
corresponding maintainer(s) + Andrew Morton, Christoph Hellwig and Arnd Bergmann.


Best regards.


Christophe JAILLET (16):
  alpha: Remove usage of the deprecated "pci-dma-compat.h" API
  floppy: Remove usage of the deprecated "pci-dma-compat.h" API
  fpga: dfl: pci: Remove usage of the deprecated "pci-dma-compat.h" API
  media: Remove usage of the deprecated "pci-dma-compat.h" API
  agp/intel: Remove usage of the deprecated "pci-dma-compat.h" API
  sparc: Remove usage of the deprecated "pci-dma-compat.h" API
  dmaengine: pch_dma: Remove usage of the deprecated "pci-dma-compat.h"
    API
  rapidio/tsi721: Remove usage of the deprecated "pci-dma-compat.h" API
  media: v4l2-pci-skeleton: Remove usage of the deprecated
    "pci-dma-compat.h" API
  scsi: message: fusion: Remove usage of the deprecated
    "pci-dma-compat.h" API
  scsi: mptbase: Use dma_alloc_coherent() in 'mpt_alloc_fw_memory()'
  scsi: mptbase: Use dma_alloc_coherent()
  scsi: mptsas: Use dma_alloc_coherent() in
    mptsas_exp_repmanufacture_info()
  scsi: mptsas: Use dma_alloc_coherent()
  scsi: mptctl: Use dma_alloc_coherent()
  PCI: Remove usage of the deprecated "pci-dma-compat.h" API

 arch/alpha/include/asm/floppy.h     |   7 +-
 arch/alpha/kernel/pci_iommu.c       |  12 +--
 arch/powerpc/include/asm/floppy.h   |   8 +-
 arch/sparc/kernel/ioport.c          |   2 +-
 drivers/char/agp/intel-gtt.c        |  26 ++---
 drivers/dma/pch_dma.c               |   2 +-
 drivers/fpga/dfl-pci.c              |  14 +--
 drivers/media/pci/cx18/cx18-queue.h |   6 +-
 drivers/media/pci/ivtv/ivtv-queue.h |  25 +++--
 drivers/media/pci/ivtv/ivtv-udma.h  |   8 +-
 drivers/message/fusion/mptbase.c    | 149 ++++++++++++++++------------
 drivers/message/fusion/mptctl.c     |  82 +++++++++------
 drivers/message/fusion/mptlan.c     |  90 +++++++++--------
 drivers/message/fusion/mptsas.c     |  94 +++++++++---------
 drivers/rapidio/devices/tsi721.c    |   8 +-
 include/linux/pci-dma-compat.h      | 129 ------------------------
 include/linux/pci.h                 |   3 -
 samples/v4l/v4l2-pci-skeleton.c     |   2 +-
 18 files changed, 289 insertions(+), 378 deletions(-)
 delete mode 100644 include/linux/pci-dma-compat.h

-- 
2.32.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
@ 2022-01-06 21:55 ` Christophe JAILLET
  2022-01-06 22:28   ` Bjorn Helgaas
  2022-01-10 15:35 ` [PATCH 00/16] " Martin K. Petersen
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 16+ messages in thread
From: Christophe JAILLET @ 2022-01-06 21:55 UTC (permalink / raw)
  To: arnd, hch, akpm, bhelgaas
  Cc: linux-pci, linux-kernel, kernel-janitors, Christophe JAILLET

Final step, remove pci-dma-compat.h

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 include/linux/pci-dma-compat.h | 129 ---------------------------------
 include/linux/pci.h            |   3 -
 2 files changed, 132 deletions(-)
 delete mode 100644 include/linux/pci-dma-compat.h

diff --git a/include/linux/pci-dma-compat.h b/include/linux/pci-dma-compat.h
deleted file mode 100644
index 249d4d7fbf18..000000000000
--- a/include/linux/pci-dma-compat.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-/* include this file if the platform implements the dma_ DMA Mapping API
- * and wants to provide the pci_ DMA Mapping API in terms of it */
-
-#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
-#define _ASM_GENERIC_PCI_DMA_COMPAT_H
-
-#include <linux/dma-mapping.h>
-
-/* This defines the direction arg to the DMA mapping routines. */
-#define PCI_DMA_BIDIRECTIONAL	DMA_BIDIRECTIONAL
-#define PCI_DMA_TODEVICE	DMA_TO_DEVICE
-#define PCI_DMA_FROMDEVICE	DMA_FROM_DEVICE
-#define PCI_DMA_NONE		DMA_NONE
-
-static inline void *
-pci_alloc_consistent(struct pci_dev *hwdev, size_t size,
-		     dma_addr_t *dma_handle)
-{
-	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
-}
-
-static inline void *
-pci_zalloc_consistent(struct pci_dev *hwdev, size_t size,
-		      dma_addr_t *dma_handle)
-{
-	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
-}
-
-static inline void
-pci_free_consistent(struct pci_dev *hwdev, size_t size,
-		    void *vaddr, dma_addr_t dma_handle)
-{
-	dma_free_coherent(&hwdev->dev, size, vaddr, dma_handle);
-}
-
-static inline dma_addr_t
-pci_map_single(struct pci_dev *hwdev, void *ptr, size_t size, int direction)
-{
-	return dma_map_single(&hwdev->dev, ptr, size, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr,
-		 size_t size, int direction)
-{
-	dma_unmap_single(&hwdev->dev, dma_addr, size, (enum dma_data_direction)direction);
-}
-
-static inline dma_addr_t
-pci_map_page(struct pci_dev *hwdev, struct page *page,
-	     unsigned long offset, size_t size, int direction)
-{
-	return dma_map_page(&hwdev->dev, page, offset, size, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_unmap_page(struct pci_dev *hwdev, dma_addr_t dma_address,
-	       size_t size, int direction)
-{
-	dma_unmap_page(&hwdev->dev, dma_address, size, (enum dma_data_direction)direction);
-}
-
-static inline int
-pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg,
-	   int nents, int direction)
-{
-	return dma_map_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg,
-	     int nents, int direction)
-{
-	dma_unmap_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle,
-		    size_t size, int direction)
-{
-	dma_sync_single_for_cpu(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle,
-		    size_t size, int direction)
-{
-	dma_sync_single_for_device(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg,
-		int nelems, int direction)
-{
-	dma_sync_sg_for_cpu(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
-}
-
-static inline void
-pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg,
-		int nelems, int direction)
-{
-	dma_sync_sg_for_device(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
-}
-
-static inline int
-pci_dma_mapping_error(struct pci_dev *pdev, dma_addr_t dma_addr)
-{
-	return dma_mapping_error(&pdev->dev, dma_addr);
-}
-
-#ifdef CONFIG_PCI
-static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
-{
-	return dma_set_mask(&dev->dev, mask);
-}
-
-static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
-{
-	return dma_set_coherent_mask(&dev->dev, mask);
-}
-#else
-static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
-{ return -EIO; }
-static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
-{ return -EIO; }
-#endif
-
-#endif
diff --git a/include/linux/pci.h b/include/linux/pci.h
index d4308f847e58..ba8771eaf380 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -2455,9 +2455,6 @@ static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev)
 void pci_uevent_ers(struct pci_dev *pdev, enum  pci_ers_result err_type);
 #endif
 
-/* Provide the legacy pci_dma_* API */
-#include <linux/pci-dma-compat.h>
-
 #define pci_printk(level, pdev, fmt, arg...) \
 	dev_printk(level, &(pdev)->dev, fmt, ##arg)
 
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:55 ` [PATCH 16/16] PCI: " Christophe JAILLET
@ 2022-01-06 22:28   ` Bjorn Helgaas
  2022-01-07  6:34     ` Christophe JAILLET
  0 siblings, 1 reply; 16+ messages in thread
From: Bjorn Helgaas @ 2022-01-06 22:28 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: arnd, hch, akpm, bhelgaas, linux-pci, linux-kernel, kernel-janitors

On Thu, Jan 06, 2022 at 10:55:33PM +0100, Christophe JAILLET wrote:
> Final step, remove pci-dma-compat.h
> 
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>

Acked-by: Bjorn Helgaas <bhelgaas@google.com>

Obviously this has to be applied after all the others, so I assume
somebody else will take this.

> ---
>  include/linux/pci-dma-compat.h | 129 ---------------------------------
>  include/linux/pci.h            |   3 -
>  2 files changed, 132 deletions(-)
>  delete mode 100644 include/linux/pci-dma-compat.h
> 
> diff --git a/include/linux/pci-dma-compat.h b/include/linux/pci-dma-compat.h
> deleted file mode 100644
> index 249d4d7fbf18..000000000000
> --- a/include/linux/pci-dma-compat.h
> +++ /dev/null
> @@ -1,129 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -/* include this file if the platform implements the dma_ DMA Mapping API
> - * and wants to provide the pci_ DMA Mapping API in terms of it */
> -
> -#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
> -#define _ASM_GENERIC_PCI_DMA_COMPAT_H
> -
> -#include <linux/dma-mapping.h>
> -
> -/* This defines the direction arg to the DMA mapping routines. */
> -#define PCI_DMA_BIDIRECTIONAL	DMA_BIDIRECTIONAL
> -#define PCI_DMA_TODEVICE	DMA_TO_DEVICE
> -#define PCI_DMA_FROMDEVICE	DMA_FROM_DEVICE
> -#define PCI_DMA_NONE		DMA_NONE
> -
> -static inline void *
> -pci_alloc_consistent(struct pci_dev *hwdev, size_t size,
> -		     dma_addr_t *dma_handle)
> -{
> -	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
> -}
> -
> -static inline void *
> -pci_zalloc_consistent(struct pci_dev *hwdev, size_t size,
> -		      dma_addr_t *dma_handle)
> -{
> -	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
> -}
> -
> -static inline void
> -pci_free_consistent(struct pci_dev *hwdev, size_t size,
> -		    void *vaddr, dma_addr_t dma_handle)
> -{
> -	dma_free_coherent(&hwdev->dev, size, vaddr, dma_handle);
> -}
> -
> -static inline dma_addr_t
> -pci_map_single(struct pci_dev *hwdev, void *ptr, size_t size, int direction)
> -{
> -	return dma_map_single(&hwdev->dev, ptr, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr,
> -		 size_t size, int direction)
> -{
> -	dma_unmap_single(&hwdev->dev, dma_addr, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline dma_addr_t
> -pci_map_page(struct pci_dev *hwdev, struct page *page,
> -	     unsigned long offset, size_t size, int direction)
> -{
> -	return dma_map_page(&hwdev->dev, page, offset, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_unmap_page(struct pci_dev *hwdev, dma_addr_t dma_address,
> -	       size_t size, int direction)
> -{
> -	dma_unmap_page(&hwdev->dev, dma_address, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline int
> -pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg,
> -	   int nents, int direction)
> -{
> -	return dma_map_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg,
> -	     int nents, int direction)
> -{
> -	dma_unmap_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle,
> -		    size_t size, int direction)
> -{
> -	dma_sync_single_for_cpu(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle,
> -		    size_t size, int direction)
> -{
> -	dma_sync_single_for_device(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg,
> -		int nelems, int direction)
> -{
> -	dma_sync_sg_for_cpu(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
> -}
> -
> -static inline void
> -pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg,
> -		int nelems, int direction)
> -{
> -	dma_sync_sg_for_device(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
> -}
> -
> -static inline int
> -pci_dma_mapping_error(struct pci_dev *pdev, dma_addr_t dma_addr)
> -{
> -	return dma_mapping_error(&pdev->dev, dma_addr);
> -}
> -
> -#ifdef CONFIG_PCI
> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
> -{
> -	return dma_set_mask(&dev->dev, mask);
> -}
> -
> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
> -{
> -	return dma_set_coherent_mask(&dev->dev, mask);
> -}
> -#else
> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
> -{ return -EIO; }
> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
> -{ return -EIO; }
> -#endif
> -
> -#endif
> diff --git a/include/linux/pci.h b/include/linux/pci.h
> index d4308f847e58..ba8771eaf380 100644
> --- a/include/linux/pci.h
> +++ b/include/linux/pci.h
> @@ -2455,9 +2455,6 @@ static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev)
>  void pci_uevent_ers(struct pci_dev *pdev, enum  pci_ers_result err_type);
>  #endif
>  
> -/* Provide the legacy pci_dma_* API */
> -#include <linux/pci-dma-compat.h>
> -
>  #define pci_printk(level, pdev, fmt, arg...) \
>  	dev_printk(level, &(pdev)->dev, fmt, ##arg)
>  
> -- 
> 2.32.0
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 22:28   ` Bjorn Helgaas
@ 2022-01-07  6:34     ` Christophe JAILLET
  2022-01-07 17:23       ` Marion & Christophe JAILLET
  0 siblings, 1 reply; 16+ messages in thread
From: Christophe JAILLET @ 2022-01-07  6:34 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: arnd, hch, akpm, bhelgaas, linux-pci, linux-kernel, kernel-janitors

Le 06/01/2022 à 23:28, Bjorn Helgaas a écrit :
> On Thu, Jan 06, 2022 at 10:55:33PM +0100, Christophe JAILLET wrote:
>> Final step, remove pci-dma-compat.h
>>
>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> 
> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
> 
> Obviously this has to be applied after all the others, so I assume
> somebody else will take this.
> 
>> ---
>>   include/linux/pci-dma-compat.h | 129 ---------------------------------
>>   include/linux/pci.h            |   3 -
>>   2 files changed, 132 deletions(-)
>>   delete mode 100644 include/linux/pci-dma-compat.h
>>
>> diff --git a/include/linux/pci-dma-compat.h b/include/linux/pci-dma-compat.h
>> deleted file mode 100644
>> index 249d4d7fbf18..000000000000
>> --- a/include/linux/pci-dma-compat.h
>> +++ /dev/null
>> @@ -1,129 +0,0 @@
>> -/* SPDX-License-Identifier: GPL-2.0 */
>> -/* include this file if the platform implements the dma_ DMA Mapping API
>> - * and wants to provide the pci_ DMA Mapping API in terms of it */
>> -
>> -#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
>> -#define _ASM_GENERIC_PCI_DMA_COMPAT_H
>> -
>> -#include <linux/dma-mapping.h>
>> -
>> -/* This defines the direction arg to the DMA mapping routines. */
>> -#define PCI_DMA_BIDIRECTIONAL	DMA_BIDIRECTIONAL
>> -#define PCI_DMA_TODEVICE	DMA_TO_DEVICE
>> -#define PCI_DMA_FROMDEVICE	DMA_FROM_DEVICE
>> -#define PCI_DMA_NONE		DMA_NONE
>> -
>> -static inline void *
>> -pci_alloc_consistent(struct pci_dev *hwdev, size_t size,
>> -		     dma_addr_t *dma_handle)
>> -{
>> -	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
>> -}
>> -
>> -static inline void *
>> -pci_zalloc_consistent(struct pci_dev *hwdev, size_t size,
>> -		      dma_addr_t *dma_handle)
>> -{
>> -	return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
>> -}
>> -
>> -static inline void
>> -pci_free_consistent(struct pci_dev *hwdev, size_t size,
>> -		    void *vaddr, dma_addr_t dma_handle)
>> -{
>> -	dma_free_coherent(&hwdev->dev, size, vaddr, dma_handle);
>> -}
>> -
>> -static inline dma_addr_t
>> -pci_map_single(struct pci_dev *hwdev, void *ptr, size_t size, int direction)
>> -{
>> -	return dma_map_single(&hwdev->dev, ptr, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr,
>> -		 size_t size, int direction)
>> -{
>> -	dma_unmap_single(&hwdev->dev, dma_addr, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline dma_addr_t
>> -pci_map_page(struct pci_dev *hwdev, struct page *page,
>> -	     unsigned long offset, size_t size, int direction)
>> -{
>> -	return dma_map_page(&hwdev->dev, page, offset, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_unmap_page(struct pci_dev *hwdev, dma_addr_t dma_address,
>> -	       size_t size, int direction)
>> -{
>> -	dma_unmap_page(&hwdev->dev, dma_address, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline int
>> -pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg,
>> -	   int nents, int direction)
>> -{
>> -	return dma_map_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg,
>> -	     int nents, int direction)
>> -{
>> -	dma_unmap_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle,
>> -		    size_t size, int direction)
>> -{
>> -	dma_sync_single_for_cpu(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle,
>> -		    size_t size, int direction)
>> -{
>> -	dma_sync_single_for_device(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg,
>> -		int nelems, int direction)
>> -{
>> -	dma_sync_sg_for_cpu(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline void
>> -pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg,
>> -		int nelems, int direction)
>> -{
>> -	dma_sync_sg_for_device(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
>> -}
>> -
>> -static inline int
>> -pci_dma_mapping_error(struct pci_dev *pdev, dma_addr_t dma_addr)
>> -{
>> -	return dma_mapping_error(&pdev->dev, dma_addr);
>> -}
>> -
>> -#ifdef CONFIG_PCI
>> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
>> -{
>> -	return dma_set_mask(&dev->dev, mask);
>> -}
>> -
>> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
>> -{
>> -	return dma_set_coherent_mask(&dev->dev, mask);
>> -}
>> -#else
>> -static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
>> -{ return -EIO; }
>> -static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
>> -{ return -EIO; }
>> -#endif
>> -
>> -#endif
>> diff --git a/include/linux/pci.h b/include/linux/pci.h
>> index d4308f847e58..ba8771eaf380 100644
>> --- a/include/linux/pci.h
>> +++ b/include/linux/pci.h
>> @@ -2455,9 +2455,6 @@ static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev)
>>   void pci_uevent_ers(struct pci_dev *pdev, enum  pci_ers_result err_type);
>>   #endif
>>   
>> -/* Provide the legacy pci_dma_* API */
>> -#include <linux/pci-dma-compat.h>
>> -

After one more night, I should have mentionned that the way have removed 
"pci-dma-compat.h" may break OTHER drives because of indirect include.

The line above should maybe be replaced by:
   #include <linux/dma-mapping.h>
which is hidden in "pci-dma-compat.h".

Will see if built-bots complain.

CJ

>>   #define pci_printk(level, pdev, fmt, arg...) \
>>   	dev_printk(level, &(pdev)->dev, fmt, ##arg)
>>   
>> -- 
>> 2.32.0
>>
> 


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-07  6:34     ` Christophe JAILLET
@ 2022-01-07 17:23       ` Marion & Christophe JAILLET
  2022-01-10  8:49         ` Christoph Hellwig
  0 siblings, 1 reply; 16+ messages in thread
From: Marion & Christophe JAILLET @ 2022-01-07 17:23 UTC (permalink / raw)
  To: Bjorn Helgaas
  Cc: arnd, hch, akpm, bhelgaas, linux-pci, linux-kernel, kernel-janitors



Le 07/01/2022 à 07:34, Christophe JAILLET a écrit :
> Le 06/01/2022 à 23:28, Bjorn Helgaas a écrit :
>> On Thu, Jan 06, 2022 at 10:55:33PM +0100, Christophe JAILLET wrote:
>>> Final step, remove pci-dma-compat.h
>>>
>>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>>
>> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
>>
>> Obviously this has to be applied after all the others, so I assume
>> somebody else will take this.
>>
>>> ---
>>>   include/linux/pci-dma-compat.h | 129 ---------------------------------
>>>   include/linux/pci.h            |   3 -
>>>   2 files changed, 132 deletions(-)
>>>   delete mode 100644 include/linux/pci-dma-compat.h
>>>
>>> diff --git a/include/linux/pci-dma-compat.h 
>>> b/include/linux/pci-dma-compat.h
>>> deleted file mode 100644
>>> index 249d4d7fbf18..000000000000
>>> --- a/include/linux/pci-dma-compat.h
>>> +++ /dev/null
>>> @@ -1,129 +0,0 @@
>>> -/* SPDX-License-Identifier: GPL-2.0 */
>>> -/* include this file if the platform implements the dma_ DMA Mapping 
>>> API
>>> - * and wants to provide the pci_ DMA Mapping API in terms of it */
>>> -
>>> -#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
>>> -#define _ASM_GENERIC_PCI_DMA_COMPAT_H
>>> -
>>> -#include <linux/dma-mapping.h>
>>> -
>>> [...]
>>>  >>> diff --git a/include/linux/pci.h b/include/linux/pci.h
>>> index d4308f847e58..ba8771eaf380 100644
>>> --- a/include/linux/pci.h
>>> +++ b/include/linux/pci.h
>>> @@ -2455,9 +2455,6 @@ static inline bool 
>>> pci_is_thunderbolt_attached(struct pci_dev *pdev)
>>>   void pci_uevent_ers(struct pci_dev *pdev, enum  pci_ers_result 
>>> err_type);
>>>   #endif
>>> -/* Provide the legacy pci_dma_* API */
>>> -#include <linux/pci-dma-compat.h>
>>> -
> 
> After one more night, I should have mentionned that the way have removed 
> "pci-dma-compat.h" may break OTHER drives because of indirect include.
> 
> The line above should maybe be replaced by:
>    #include <linux/dma-mapping.h>
> which is hidden in "pci-dma-compat.h".
> 
> Will see if built-bots complain.

And so they did.

What is the best option?
1. Add    #include <linux/dma-mapping.h>?		or
2. Add this "missing" include in needed place?

I would say 2, but I would need help, because I don't have a built farm 
at home! :)



This breaks:

    drivers/s390/net/ism_drv.c: In function 'register_sba':
    drivers/s390/net/ism_drv.c:93:15: error: implicit declaration of 
function 'dma_alloc_coherent' [-Werror=implicit-function-declaration]
       93 |         sba = dma_alloc_coherent(&ism->pdev->dev, PAGE_SIZE, 
&dma_handle,
          |               ^~~~~~~~~~~~~~~~~~
[...]



I got another built failure that I don't understand:

    In file included from drivers/scsi/fdomain.c:87:
 >> include/scsi/scsicam.h:16:31: warning: 'struct block_device' 
declared inside parameter list will not be visible outside of this 
definition or declaration
       16 | int scsicam_bios_param(struct block_device *bdev, sector_t 
capacity, int *ip);
          |                               ^~~~~~~~~~~~
    include/scsi/scsicam.h:17:27: warning: 'struct block_device' 
declared inside parameter list will not be visible outside of this 
definition or declaration
       17 | bool scsi_partsize(struct block_device *bdev, sector_t 
capacity, int geom[3]);
          |                           ^~~~~~~~~~~~
    include/scsi/scsicam.h:18:40: warning: 'struct block_device' 
declared inside parameter list will not be visible outside of this 
definition or declaration
       18 | unsigned char *scsi_bios_ptable(struct block_device *bdev);
          |                                        ^~~~~~~~~~~~
    drivers/scsi/fdomain.c: In function 'fdomain_biosparam':
 >> drivers/scsi/fdomain.c:468:45: error: passing argument 1 of 
'scsi_bios_ptable' from incompatible pointer type 
[-Werror=incompatible-pointer-types]
      468 |         unsigned char *p = scsi_bios_ptable(bdev);
          |                                             ^~~~
          |                                             |
          |                                             struct 
block_device *
    In file included from drivers/scsi/fdomain.c:87:
    include/scsi/scsicam.h:18:54: note: expected 'struct block_device *' 
but argument is of type 'struct block_device *'
       18 | unsigned char *scsi_bios_ptable(struct block_device *bdev);
          |                                 ~~~~~~~~~~~~~~~~~~~~~^~~~


CJ

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 16/16] PCI: Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-07 17:23       ` Marion & Christophe JAILLET
@ 2022-01-10  8:49         ` Christoph Hellwig
  0 siblings, 0 replies; 16+ messages in thread
From: Christoph Hellwig @ 2022-01-10  8:49 UTC (permalink / raw)
  To: Marion & Christophe JAILLET
  Cc: Bjorn Helgaas, arnd, hch, akpm, bhelgaas, linux-pci,
	linux-kernel, kernel-janitors

On Fri, Jan 07, 2022 at 06:23:25PM +0100, Marion & Christophe JAILLET wrote:
> What is the best option?
> 1. Add    #include <linux/dma-mapping.h>?		or
> 2. Add this "missing" include in needed place?
> 
> I would say 2, but I would need help, because I don't have a built farm at
> home! :)

In the long run 2 is where we want to end up.  But I'd do 1 first to get
the legacy API removal finished, and then do 2 later after a lot of test
coverage from the build bot.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
  2022-01-06 21:55 ` [PATCH 16/16] PCI: " Christophe JAILLET
@ 2022-01-10 15:35 ` Martin K. Petersen
  2022-01-19  4:06 ` Martin K. Petersen
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: Martin K. Petersen @ 2022-01-10 15:35 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: arnd, hch, akpm, rth, ink, mattst88, mpe, benh, paulus, davem,
	airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas, linux-alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, linux-media,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci, linux-kernel,
	kernel-janitors


Christophe,

> This serie axes all the remaining usages of the deprecated
> "pci-dma-compat.h" API.

Applied patches 10-15 to 5.17/scsi-staging, thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
  2022-01-06 21:55 ` [PATCH 16/16] PCI: " Christophe JAILLET
  2022-01-10 15:35 ` [PATCH 00/16] " Martin K. Petersen
@ 2022-01-19  4:06 ` Martin K. Petersen
  2022-01-25 19:28 ` Moritz Fischer
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 16+ messages in thread
From: Martin K. Petersen @ 2022-01-19  4:06 UTC (permalink / raw)
  To: sreekanth.reddy, mchehab, mdf, mpe, mporter, hch, bhelgaas,
	airlied, Christophe JAILLET, benh, ink, davem, akpm, hao.wu,
	vkoul, sathya.prakash, paulus, trix, arnd, yilun.xu,
	suganath-prabu.subramani, alex.bou9, awalls, rth, mattst88
  Cc: Martin K . Petersen, linux-kernel, linuxppc-dev, linux-alpha,
	linux-fpga, MPT-FusionLinux.pdl, linux-media, sparclinux,
	linux-pci, linux-scsi, dmaengine, kernel-janitors

On Thu, 6 Jan 2022 22:45:13 +0100, Christophe JAILLET wrote:

> This serie axes all the remaining usages of the deprecated "pci-dma-compat.h"
> API.
> 
> All these patches have already been posted.
> 
> They have been generated with a coccinelle script.
> The tricky parts are patches that use dma_alloc_coherent() because the correct
> GFP flag has to be used in place of the previous embedded GFP_ATOMIC.
> 
> [...]

Applied to 5.17/scsi-queue, thanks!

[10/16] scsi: message: fusion: Remove usage of the deprecated "pci-dma-compat.h" API
        https://git.kernel.org/mkp/scsi/c/b114dda6f2f1
[11/16] scsi: mptbase: Use dma_alloc_coherent() in 'mpt_alloc_fw_memory()'
        https://git.kernel.org/mkp/scsi/c/2d50607260a6
[12/16] scsi: mptbase: Use dma_alloc_coherent()
        https://git.kernel.org/mkp/scsi/c/5c5e6b6f61e0
[13/16] scsi: mptsas: Use dma_alloc_coherent() in mptsas_exp_repmanufacture_info()
        https://git.kernel.org/mkp/scsi/c/7a960b3a5e37
[14/16] scsi: mptsas: Use dma_alloc_coherent()
        https://git.kernel.org/mkp/scsi/c/76a334d756c5
[15/16] scsi: mptctl: Use dma_alloc_coherent()
        https://git.kernel.org/mkp/scsi/c/706dc3b91989

-- 
Martin K. Petersen	Oracle Linux Engineering

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
                   ` (2 preceding siblings ...)
  2022-01-19  4:06 ` Martin K. Petersen
@ 2022-01-25 19:28 ` Moritz Fischer
  2022-02-23  7:46 ` Christoph Hellwig
  2022-02-25 16:20 ` Christoph Hellwig
  5 siblings, 0 replies; 16+ messages in thread
From: Moritz Fischer @ 2022-01-25 19:28 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: arnd, hch, akpm, rth, ink, mattst88, mpe, benh, paulus, davem,
	airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas, linux-alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, linux-media,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci, linux-kernel,
	kernel-janitors

On Thu, Jan 06, 2022 at 10:45:13PM +0100, Christophe JAILLET wrote:
> This serie axes all the remaining usages of the deprecated "pci-dma-compat.h"
> API.
> 
> All these patches have already been posted.
> 
> They have been generated with a coccinelle script.
> The tricky parts are patches that use dma_alloc_coherent() because the correct
> GFP flag has to be used in place of the previous embedded GFP_ATOMIC.
> 
> Patches 1-3 are already Reviewed. References to the corresponding mail is
> given below the ---
> 
> Patch 1-2,4-10 are just generated from the coccinelle script. Only too long
> lines have been hand modified. dma_alloc_coherent() modification are NOT part
> of these patches.
> 
> Patch 3 also includes some 'dma_set_mask_and_coherent()' instead of
> 'pci_set_dma_mask()/pci_set_consistent_dma_mask()'.
> I've left this additional modification because it was reviewed with it.
> 
> Patch 10-15 are the tricky parts. Explanation of which GFP flag is the right one
> is given in each patch. It has been divided in several patches to ease review.
> 
> Patch 15 is the only one I'm slighly unsure with. The old code was using a
> GFP_USER flag in the function. I'm not familiar with it.
> I *guess*  that GFP_KERNEL is fine, but maybe it should also be GFP_USER or left
> as GFP_ATOMIC so that nothing is changed.
> 
> Patch 16 is the last step that remove "pci-dma-compat.h" and its only usage.
> 
> 
> All patches, exept 1-2,6 that are architecture specific, have been compile tested.
> 
> 
> After all that, a few rst files, 1 or 2 strings in error messages and some
> error branching labels should still need some attention. 
> This is some minor issues.
> 
> 
> Only the cover letter is sent to every one. Each patch is sent to the
> corresponding maintainer(s) + Andrew Morton, Christoph Hellwig and Arnd Bergmann.
> 
> 
> Best regards.
> 
> 
> Christophe JAILLET (16):
>   alpha: Remove usage of the deprecated "pci-dma-compat.h" API
>   floppy: Remove usage of the deprecated "pci-dma-compat.h" API
>   fpga: dfl: pci: Remove usage of the deprecated "pci-dma-compat.h" API
>   media: Remove usage of the deprecated "pci-dma-compat.h" API
>   agp/intel: Remove usage of the deprecated "pci-dma-compat.h" API
>   sparc: Remove usage of the deprecated "pci-dma-compat.h" API
>   dmaengine: pch_dma: Remove usage of the deprecated "pci-dma-compat.h"
>     API
>   rapidio/tsi721: Remove usage of the deprecated "pci-dma-compat.h" API
>   media: v4l2-pci-skeleton: Remove usage of the deprecated
>     "pci-dma-compat.h" API
>   scsi: message: fusion: Remove usage of the deprecated
>     "pci-dma-compat.h" API
>   scsi: mptbase: Use dma_alloc_coherent() in 'mpt_alloc_fw_memory()'
>   scsi: mptbase: Use dma_alloc_coherent()
>   scsi: mptsas: Use dma_alloc_coherent() in
>     mptsas_exp_repmanufacture_info()
>   scsi: mptsas: Use dma_alloc_coherent()
>   scsi: mptctl: Use dma_alloc_coherent()
>   PCI: Remove usage of the deprecated "pci-dma-compat.h" API
> 
>  arch/alpha/include/asm/floppy.h     |   7 +-
>  arch/alpha/kernel/pci_iommu.c       |  12 +--
>  arch/powerpc/include/asm/floppy.h   |   8 +-
>  arch/sparc/kernel/ioport.c          |   2 +-
>  drivers/char/agp/intel-gtt.c        |  26 ++---
>  drivers/dma/pch_dma.c               |   2 +-
>  drivers/fpga/dfl-pci.c              |  14 +--
>  drivers/media/pci/cx18/cx18-queue.h |   6 +-
>  drivers/media/pci/ivtv/ivtv-queue.h |  25 +++--
>  drivers/media/pci/ivtv/ivtv-udma.h  |   8 +-
>  drivers/message/fusion/mptbase.c    | 149 ++++++++++++++++------------
>  drivers/message/fusion/mptctl.c     |  82 +++++++++------
>  drivers/message/fusion/mptlan.c     |  90 +++++++++--------
>  drivers/message/fusion/mptsas.c     |  94 +++++++++---------
>  drivers/rapidio/devices/tsi721.c    |   8 +-
>  include/linux/pci-dma-compat.h      | 129 ------------------------
>  include/linux/pci.h                 |   3 -
>  samples/v4l/v4l2-pci-skeleton.c     |   2 +-
>  18 files changed, 289 insertions(+), 378 deletions(-)
>  delete mode 100644 include/linux/pci-dma-compat.h
> 
> -- 
> 2.32.0
> 
Applied [03/16] to linux-fpga for-next.

Thanks,
Moritz

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
                   ` (3 preceding siblings ...)
  2022-01-25 19:28 ` Moritz Fischer
@ 2022-02-23  7:46 ` Christoph Hellwig
  2022-02-23 20:26   ` Christophe JAILLET
  2022-02-25 16:20 ` Christoph Hellwig
  5 siblings, 1 reply; 16+ messages in thread
From: Christoph Hellwig @ 2022-02-23  7:46 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: arnd, hch, akpm, rth, ink, mattst88, mpe, benh, paulus, davem,
	airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas, linux-alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, linux-media,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci, linux-kernel,
	kernel-janitors

Hi Christophe,

do you know what the state is in current linux-next?

I think we'll just want to queue up anything left at this point in the
dma-mapping or PCI tree and get it done.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-02-23  7:46 ` Christoph Hellwig
@ 2022-02-23 20:26   ` Christophe JAILLET
  2022-02-23 20:42     ` Arnd Bergmann
  2022-02-24  6:25     ` Christoph Hellwig
  0 siblings, 2 replies; 16+ messages in thread
From: Christophe JAILLET @ 2022-02-23 20:26 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: arnd, akpm, ink, mattst88, mpe, benh, paulus, davem, airlied,
	vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas, linux-alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, linux-media,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci

Le 23/02/2022 à 08:46, Christoph Hellwig a écrit :
> Hi Christophe,
> 
> do you know what the state is in current linux-next?
> 
> I think we'll just want to queue up anything left at this point in the
> dma-mapping or PCI tree and get it done.
> 

Hi,

Patch 01, 04, 05, 06, 08, 09 have not reached -next yet.
They all still apply cleanly.

04 has been picked it up for inclusion in the media subsystem for 5.18.
The other ones all have 1 or more Reviewed-by:/Acked-by: tags.

Patch 16 must be resubmitted to add "#include <linux/dma-mapping.h>" in 
order not to break builds.


All the other patches have landed in -next.

CJ

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-02-23 20:26   ` Christophe JAILLET
@ 2022-02-23 20:42     ` Arnd Bergmann
  2022-02-24  6:25     ` Christoph Hellwig
  1 sibling, 0 replies; 16+ messages in thread
From: Arnd Bergmann @ 2022-02-23 20:42 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: Christoph Hellwig, Arnd Bergmann, Andrew Morton, Ivan Kokshaysky,
	Matt Turner, Michael Ellerman, Benjamin Herrenschmidt,
	Paul Mackerras, David Miller, David Airlie, Vinod Koul, hao.wu,
	Tom Rix, Moritz Fischer, Xu Yilun, awalls, Mauro Carvalho Chehab,
	Sathya Prakash, sreekanth.reddy, Suganath Prabu Subramani,
	Matt Porter, Alex Bounine, Bjorn Helgaas, alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, Linux Media Mailing List,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci

On Wed, Feb 23, 2022 at 9:26 PM Christophe JAILLET
<christophe.jaillet@wanadoo.fr> wrote:
>
> Le 23/02/2022 à 08:46, Christoph Hellwig a écrit :
> > Hi Christophe,
> >
> > do you know what the state is in current linux-next?
> >
> > I think we'll just want to queue up anything left at this point in the
> > dma-mapping or PCI tree and get it done.
> >
>
> Hi,
>
> Patch 01, 04, 05, 06, 08, 09 have not reached -next yet.
> They all still apply cleanly.
>
> 04 has been picked it up for inclusion in the media subsystem for 5.18.
> The other ones all have 1 or more Reviewed-by:/Acked-by: tags.
>
> Patch 16 must be resubmitted to add "#include <linux/dma-mapping.h>" in
> order not to break builds.
>
>
> All the other patches have landed in -next.

Ok, these all look trivial. I'd suggest you send the rebase version to
Andrew Morton then, so he can pick them all up into linux-mm, on top
of the linux-next contents.

         Arnd

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-02-23 20:26   ` Christophe JAILLET
  2022-02-23 20:42     ` Arnd Bergmann
@ 2022-02-24  6:25     ` Christoph Hellwig
  2022-02-24  7:07       ` Arnd Bergmann
  1 sibling, 1 reply; 16+ messages in thread
From: Christoph Hellwig @ 2022-02-24  6:25 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: Christoph Hellwig, arnd, akpm, ink, mattst88, mpe, benh, paulus,
	davem, airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls,
	mchehab, sathya.prakash, sreekanth.reddy,
	suganath-prabu.subramani, mporter, alex.bou9, bhelgaas,
	linux-alpha, linuxppc-dev, sparclinux, dmaengine, linux-fpga,
	linux-media, MPT-FusionLinux.pdl, linux-scsi, linux-pci

On Wed, Feb 23, 2022 at 09:26:56PM +0100, Christophe JAILLET wrote:
> Patch 01, 04, 05, 06, 08, 09 have not reached -next yet.
> They all still apply cleanly.
> 
> 04 has been picked it up for inclusion in the media subsystem for 5.18.
> The other ones all have 1 or more Reviewed-by:/Acked-by: tags.
> 
> Patch 16 must be resubmitted to add "#include <linux/dma-mapping.h>" in
> order not to break builds.

So how about this:  I'll pick up 1, 5,6,8 and 9 for the dma-mapping
tree.  After -rc1 when presumably all other patches have reached
mainline your resubmit one with the added include and we finish this
off?

Thanks a lot for all your work already!

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-02-24  6:25     ` Christoph Hellwig
@ 2022-02-24  7:07       ` Arnd Bergmann
  2022-02-24 18:15         ` Christophe JAILLET
  0 siblings, 1 reply; 16+ messages in thread
From: Arnd Bergmann @ 2022-02-24  7:07 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Christophe JAILLET, Arnd Bergmann, Andrew Morton,
	Ivan Kokshaysky, Matt Turner, Michael Ellerman,
	Benjamin Herrenschmidt, Paul Mackerras, David Miller,
	David Airlie, Vinod Koul, hao.wu, Tom Rix, Moritz Fischer,
	Xu Yilun, awalls, Mauro Carvalho Chehab, Sathya Prakash,
	sreekanth.reddy, Suganath Prabu Subramani, Matt Porter,
	Alex Bounine, Bjorn Helgaas, alpha, linuxppc-dev, sparclinux,
	dmaengine, linux-fpga, Linux Media Mailing List,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci

On Thu, Feb 24, 2022 at 7:25 AM Christoph Hellwig <hch@infradead.org> wrote:
>
> On Wed, Feb 23, 2022 at 09:26:56PM +0100, Christophe JAILLET wrote:
> > Patch 01, 04, 05, 06, 08, 09 have not reached -next yet.
> > They all still apply cleanly.
> >
> > 04 has been picked it up for inclusion in the media subsystem for 5.18.
> > The other ones all have 1 or more Reviewed-by:/Acked-by: tags.
> >
> > Patch 16 must be resubmitted to add "#include <linux/dma-mapping.h>" in
> > order not to break builds.
>
> So how about this:  I'll pick up 1, 5,6,8 and 9 for the dma-mapping
> tree.  After -rc1 when presumably all other patches have reached
> mainline your resubmit one with the added include and we finish this
> off?

Sounds good to me as well.

       Arnd

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-02-24  7:07       ` Arnd Bergmann
@ 2022-02-24 18:15         ` Christophe JAILLET
  0 siblings, 0 replies; 16+ messages in thread
From: Christophe JAILLET @ 2022-02-24 18:15 UTC (permalink / raw)
  To: Arnd Bergmann, Christoph Hellwig
  Cc: Andrew Morton, Ivan Kokshaysky, Matt Turner, Michael Ellerman,
	Benjamin Herrenschmidt, Paul Mackerras, David Miller,
	David Airlie, Vinod Koul, hao.wu, Tom Rix, Moritz Fischer,
	Xu Yilun, awalls, Mauro Carvalho Chehab, Sathya Prakash,
	sreekanth.reddy, Suganath Prabu Subramani, Matt Porter,
	Alex Bounine, Bjorn Helgaas, alpha, linuxppc-dev, sparclinux,
	dmaengine, linux-fpga, Linux Media Mailing List,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci, linux-kernel,
	Kernel Janitors


Le 24/02/2022 à 08:07, Arnd Bergmann a écrit :
> On Thu, Feb 24, 2022 at 7:25 AM Christoph Hellwig <hch@infradead.org> wrote:
>> On Wed, Feb 23, 2022 at 09:26:56PM +0100, Christophe JAILLET wrote:
>>> Patch 01, 04, 05, 06, 08, 09 have not reached -next yet.
>>> They all still apply cleanly.
>>>
>>> 04 has been picked it up for inclusion in the media subsystem for 5.18.
>>> The other ones all have 1 or more Reviewed-by:/Acked-by: tags.
>>>
>>> Patch 16 must be resubmitted to add "#include <linux/dma-mapping.h>" in
>>> order not to break builds.
>> So how about this:  I'll pick up 1, 5,6,8 and 9 for the dma-mapping
>> tree.  After -rc1 when presumably all other patches have reached
>> mainline your resubmit one with the added include and we finish this
>> off?
> Sounds good to me as well.
>
>         Arnd

This is fine for me.
When all patches have reached -next, I'll re-submit the fixed 16th patch.


Thanks for your assistance for ending this long story :)

CJ


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API
  2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
                   ` (4 preceding siblings ...)
  2022-02-23  7:46 ` Christoph Hellwig
@ 2022-02-25 16:20 ` Christoph Hellwig
  5 siblings, 0 replies; 16+ messages in thread
From: Christoph Hellwig @ 2022-02-25 16:20 UTC (permalink / raw)
  To: Christophe JAILLET
  Cc: arnd, hch, akpm, rth, ink, mattst88, mpe, benh, paulus, davem,
	airlied, vkoul, hao.wu, trix, mdf, yilun.xu, awalls, mchehab,
	sathya.prakash, sreekanth.reddy, suganath-prabu.subramani,
	mporter, alex.bou9, bhelgaas, linux-alpha, linuxppc-dev,
	sparclinux, dmaengine, linux-fpga, linux-media,
	MPT-FusionLinux.pdl, linux-scsi, linux-pci, linux-kernel,
	kernel-janitors

I've applied patches 1,5,6,8 and 9 to the dma-mapping tree.

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-02-25 16:21 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-06 21:45 [PATCH 00/16] Remove usage of the deprecated "pci-dma-compat.h" API Christophe JAILLET
2022-01-06 21:55 ` [PATCH 16/16] PCI: " Christophe JAILLET
2022-01-06 22:28   ` Bjorn Helgaas
2022-01-07  6:34     ` Christophe JAILLET
2022-01-07 17:23       ` Marion & Christophe JAILLET
2022-01-10  8:49         ` Christoph Hellwig
2022-01-10 15:35 ` [PATCH 00/16] " Martin K. Petersen
2022-01-19  4:06 ` Martin K. Petersen
2022-01-25 19:28 ` Moritz Fischer
2022-02-23  7:46 ` Christoph Hellwig
2022-02-23 20:26   ` Christophe JAILLET
2022-02-23 20:42     ` Arnd Bergmann
2022-02-24  6:25     ` Christoph Hellwig
2022-02-24  7:07       ` Arnd Bergmann
2022-02-24 18:15         ` Christophe JAILLET
2022-02-25 16:20 ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).