dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h
@ 2026-09-21  9:44 Christian König
  2026-09-21  9:58 ` sashiko-bot
  2026-09-21 12:25 ` Jason Gunthorpe
  0 siblings, 2 replies; 3+ messages in thread
From: Christian König @ 2026-09-21  9:44 UTC (permalink / raw)
  To: kevin.tian, nicolinc, jgg, leonro, leon, dri-devel; +Cc: Christian König

That is unecessary here and creates an unwanted dependency to the PCI
subsystem. Move that into dma-buf-mapping.h instead.

Signed-off-by: Christian König <christian.koenig@amd.com>
---
 include/linux/dma-buf-mapping.h | 1 +
 include/linux/dma-buf.h         | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/dma-buf-mapping.h b/include/linux/dma-buf-mapping.h
index 09bde3f748e4..fb5e52260700 100644
--- a/include/linux/dma-buf-mapping.h
+++ b/include/linux/dma-buf-mapping.h
@@ -6,6 +6,7 @@
 #ifndef __DMA_BUF_MAPPING_H__
 #define __DMA_BUF_MAPPING_H__
 #include <linux/dma-buf.h>
+#include <linux/pci-p2pdma.h>
 
 struct sg_table *dma_buf_phys_vec_to_sgt(struct dma_buf_attachment *attach,
 					 struct p2pdma_provider *provider,
diff --git a/include/linux/dma-buf.h b/include/linux/dma-buf.h
index d15b2b31d3c9..159271fcf3d2 100644
--- a/include/linux/dma-buf.h
+++ b/include/linux/dma-buf.h
@@ -22,7 +22,6 @@
 #include <linux/fs.h>
 #include <linux/dma-fence.h>
 #include <linux/wait.h>
-#include <linux/pci-p2pdma.h>
 
 struct device;
 struct dma_buf;
-- 
2.43.0


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

* Re: [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h
  2026-09-21  9:44 [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h Christian König
@ 2026-09-21  9:58 ` sashiko-bot
  2026-09-21 12:25 ` Jason Gunthorpe
  1 sibling, 0 replies; 3+ messages in thread
From: sashiko-bot @ 2026-09-21  9:58 UTC (permalink / raw)
  To: Christian König; +Cc: dri-devel

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] mlx5: compilation failure due to missing pci-p2pdma.h include
--

commit b5028b6ecc514cd51ffdd0df7d0570f15757e7f7
Author: Christian König <ckoenig.leichtzumerken@gmail.com>

dma-buf: remove pci-p2pdma include from dma-buf.h
    
That is unecessary here and creates an unwanted dependency to the PCI
subsystem. Move that into dma-buf-mapping.h instead.

> diff --git a/include/linux/dma-buf.h b/include/linux/dma-buf.h
> index d15b2b31d3c91..159271fcf3d2e 100644
> --- a/include/linux/dma-buf.h
> +++ b/include/linux/dma-buf.h
> @@ -22,7 +22,6 @@
>  #include <linux/fs.h>
>  #include <linux/dma-fence.h>
>  #include <linux/wait.h>
> -#include <linux/pci-p2pdma.h>

[Severity: Low]
Does removing this include break the compilation of the RDMA mlx5 driver?

It appears the mlx5 driver and ib_verbs.h implicitly relied on dma-buf.h
providing declarations for pcim_p2pdma_provider and pcim_p2pdma_init.

Compiling with CONFIG_MLX5_INFINIBAND enabled results in implicit function
declaration errors:

drivers/infiniband/hw/mlx5/main.c:mlx5_ib_mmap_get_pfns() {
    ...
    *provider = pcim_p2pdma_provider(pdev, bar);
    ...
}

drivers/infiniband/hw/mlx5/main.c:mlx5_ib_stage_init_init() {
    ...
    err = pcim_p2pdma_init(mdev->pdev);
    ...
}

It also causes a warning in include/rdma/ib_verbs.h where
struct p2pdma_provider is used without a forward declaration in
struct ib_device_ops:

include/rdma/ib_verbs.h:struct ib_device_ops {
    ...
    struct p2pdma_provider **provider);
    ...
}

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260921094452.679455-1-christian.koenig@amd.com?part=1

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

* Re: [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h
  2026-09-21  9:44 [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h Christian König
  2026-09-21  9:58 ` sashiko-bot
@ 2026-09-21 12:25 ` Jason Gunthorpe
  1 sibling, 0 replies; 3+ messages in thread
From: Jason Gunthorpe @ 2026-09-21 12:25 UTC (permalink / raw)
  To: Christian König
  Cc: kevin.tian, nicolinc, leonro, leon, dri-devel,
	Christian König

On Mon, Sep 21, 2026 at 11:44:52AM +0200, Christian König wrote:
> That is unecessary here and creates an unwanted dependency to the PCI
> subsystem. Move that into dma-buf-mapping.h instead.
> 
> Signed-off-by: Christian König <christian.koenig@amd.com>
> ---
>  include/linux/dma-buf-mapping.h | 1 +
>  include/linux/dma-buf.h         | 1 -
>  2 files changed, 1 insertion(+), 1 deletion(-)

> diff --git a/include/linux/dma-buf-mapping.h b/include/linux/dma-buf-mapping.h
> index 09bde3f748e4..fb5e52260700 100644
> --- a/include/linux/dma-buf-mapping.h
> +++ b/include/linux/dma-buf-mapping.h
> @@ -6,6 +6,7 @@
>  #ifndef __DMA_BUF_MAPPING_H__
>  #define __DMA_BUF_MAPPING_H__
>  #include <linux/dma-buf.h>
> +#include <linux/pci-p2pdma.h>
>  
>  struct sg_table *dma_buf_phys_vec_to_sgt(struct dma_buf_attachment *attach,
>  					 struct p2pdma_provider *provider,

Let's just use a forward declaration instead of the whole header:

struct p2pdma_provider;

Jason

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

end of thread, other threads:[~2026-09-21 12:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-21  9:44 [PATCH] dma-buf: remove pci-p2pdma include from dma-buf.h Christian König
2026-09-21  9:58 ` sashiko-bot
2026-09-21 12:25 ` Jason Gunthorpe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox