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 <[email protected]>

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/[email protected]?part=1

Reply via email to