Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fail to build against v5.18-rc3 or newer #14

Closed
vicamo opened this issue Apr 29, 2022 · 3 comments
Closed

fail to build against v5.18-rc3 or newer #14

vicamo opened this issue Apr 29, 2022 · 3 comments

Comments

@vicamo
Copy link
Contributor

vicamo commented Apr 29, 2022

/tmp/kernel-vicamo-e13a43cb71e2d-jqLD/build/drivers/media/pci/intel/ipu6/../ipu.c: In function 'ipu_pci_probe':
/tmp/kernel-vicamo-e13a43cb71e2d-jqLD/build/drivers/media/pci/intel/ipu6/../ipu.c:442:16: error: implicit declaration of function 'pci_set_dma_mask' [-Werror=implicit-function-declaration]
  442 |         rval = pci_set_dma_mask(pdev, DMA_BIT_MASK(dma_mask));
      |                ^~~~~~~~~~~~~~~~
/tmp/kernel-vicamo-e13a43cb71e2d-jqLD/build/drivers/media/pci/intel/ipu6/../ipu.c:444:24: error: implicit declaration of function 'pci_set_consistent_dma_mask' [-Werror=implicit-function-declaration]
  444 |                 rval = pci_set_consistent_dma_mask(pdev,
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:354:60: warning: 'struct dma_buf_map' declared inside parameter list will not be visible outside of this definition or declaration
  354 | static int ipu_dma_buf_vmap(struct dma_buf *dmabuf, struct dma_buf_map *map)
      |                                                            ^~~~~~~~~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: In function 'ipu_dma_buf_vmap':
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:369:12: error: invalid use of undefined type 'struct dma_buf_map'
  369 |         map->vaddr = vm_map_ram(ipu_attach->pages, ipu_attach->npages, 0);
      |            ^~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:370:12: error: invalid use of undefined type 'struct dma_buf_map'
  370 |         map->is_iomem = false;
      |            ^~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:371:17: error: invalid use of undefined type 'struct dma_buf_map'
  371 |         if (!map->vaddr)
      |                 ^~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: At top level:
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:377:63: warning: 'struct dma_buf_map' declared inside parameter list will not be visible outside of this definition or declaration
  377 | static void ipu_dma_buf_vunmap(struct dma_buf *dmabuf, struct dma_buf_map *map)
      |                                                               ^~~~~~~~~~~
  CC [M]  drivers/media/test-drivers/vivid/vivid-vbi-out.o
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: In function 'ipu_dma_buf_vunmap':
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:392:25: error: invalid use of undefined type 'struct dma_buf_map'
  392 |         vm_unmap_ram(map->vaddr, ipu_attach->npages);
      |                         ^~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: At top level:
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:403:17: error: initialization of 'int (*)(struct dma_buf *, struct iosys_map *)' from incompatible pointer type 'int (*)(struct dma_buf *, struct dma_buf_map *)' [-Werror=incompatible-pointer-types]
  403 |         .vmap = ipu_dma_buf_vmap,
      |                 ^~~~~~~~~~~~~~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:403:17: note: (near initialization for 'ipu_dma_buf_ops.vmap')
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:404:19: error: initialization of 'void (*)(struct dma_buf *, struct iosys_map *)' from incompatible pointer type 'void (*)(struct dma_buf *, struct dma_buf_map *)' [-Werror=incompatible-pointer-types]
  404 |         .vunmap = ipu_dma_buf_vunmap,
      |                   ^~~~~~~~~~~~~~~~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:404:19: note: (near initialization for 'ipu_dma_buf_ops.vunmap')
  CC      drivers/scsi/scsi_logging.o
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: In function 'ipu_psys_kbuf_unmap':
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:452:36: error: storage size of 'dmap' isn't known
  452 |                 struct dma_buf_map dmap;
      |                                    ^~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:454:17: error: implicit declaration of function 'dma_buf_map_set_vaddr'; did you mean 'iosys_map_set_vaddr'? [-Werror=implicit-function-declaration]
  454 |                 dma_buf_map_set_vaddr(&dmap, kbuf->kaddr);
      |                 ^~~~~~~~~~~~~~~~~~~~~
      |                 iosys_map_set_vaddr
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:452:36: warning: unused variable 'dmap' [-Wunused-variable]
  452 |                 struct dma_buf_map dmap;
      |                                    ^~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c: In function 'ipu_psys_mapbuf_locked':
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:578:28: error: storage size of 'dmap' isn't known
  578 |         struct dma_buf_map dmap;
      |                            ^~~~
/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/drivers/media/pci/intel/ipu6/../ipu-psys.c:578:28: warning: unused variable 'dmap' [-Wunused-variable]
cc1: some warnings being treated as errors
make[7]: *** [/tmp/kernel-vicamo-b08ab6c1b36e4-60sn/build/scripts/Makefile.build:296: drivers/media/pci/intel/ipu6/../ipu-psys.o] Error 1
make[7]: *** Waiting for unfinished jobs....
@vicamo
Copy link
Contributor Author

vicamo commented May 8, 2022

This is blocking Ubuntu packaging inclusion plan in https://bugs.launchpad.net/ubuntu/+bug/1972109.

@vicamo
Copy link
Contributor Author

vicamo commented May 9, 2022

  • commit 7938f4218168 ("dma-buf-map: Rename to iosys-map")
  • commit 7968778914e5 ("PCI: Remove the deprecated "pci-dma-compat.h" API")
    • transition example: commit 8c155674d975 ("rapidio/tsi721: Remove usage of the deprecated "pci-dma-compat.h" API")

@vicamo
Copy link
Contributor Author

vicamo commented May 9, 2022

Current ipu6-drivers fails to build against v5.10 or older as well. Maybe you would like to clean up some legacy code some time later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants