[Openpvrsgx-devgroup] New version letux-pvrsrvkm-5.19-rc1 available

H. Nikolaus Schaller hns at goldelico.com
Thu Jun 9 11:02:26 CEST 2022


Hi all,
there is a major issue to be solved (unfortunately beyond my experience).

There was a change in the DMA fence API which (at least) the DDK 1.17 driver tries to use.

	548e7432dc2 dma-buf: add dma_resv_replace_fences v2

This change made compilation fail.

I have pinpointed it to two functions in 
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c
and guarded it by #if and #warningto to return -EINVAL in the current code.

This compiles but is probably functionally wrong. Currently letux-pvrsrvkm-5.19-rc1 compiles as:

drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c: In function 'update_dma_resv_fences_dst':
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c:541:2: warning: #warning FIXME like in 548e7432dc2da475a18077b612e8d55b8ff51891 [-Wcpp]
 #warning FIXME like in 548e7432dc2da475a18077b612e8d55b8ff51891
  ^~~~~~~
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c: In function 'update_dma_resv_fences_src':
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c:674:2: warning: #warning FIXME like in 548e7432dc2da475a18077b612e8d55b8ff51891 [-Wcpp]
 #warning FIXME like in 548e7432dc2da475a18077b612e8d55b8ff51891
  ^~~~~~~
At top level:
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c:345:12: warning: 'install_and_get_blocking_fence' defined but not used [-Wunused-function]
 static int install_and_get_blocking_fence(struct pvr_fence_frame *pvr_fence_frame, unsigned index, struct dma_fence *fence)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c:324:13: warning: 'allocate_blocking_fence_storage' defined but not used [-Wunused-function]
 static bool allocate_blocking_fence_storage(struct pvr_fence_frame *pvr_fence_frame, unsigned count)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/pvrsgx/1.17.4948957/eurasia_km/services4/srvkm/env/linux/pvr_linux_fence.c:231:26: warning: 'create_fence_to_signal' defined but not used [-Wunused-function]
 static struct dma_fence *create_fence_to_signal(struct pvr_fence_frame *pvr_fence_frame)
                          ^~~~~~~~~~~~~~~~~~~~~~

The above mentioned commit also changes drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
which could be a blueprint for what we have to do. But as said I have no experiences with
fences, so this needs support from the community.

BR and thanks,
Nikolaus



> Am 09.06.2022 um 10:48 schrieb kernel-build-bot at letux.org:
> 
> A new version of our holistic PVR/SGX driver is available
> Kernel: v5.19-rc1
> Result: letux-pvrsrvkm-5.19-rc1 (rebased on 5.19-rc1)
> LetuxOS: http://git.goldelico.com/?p=letux-kernel.git;a=heads
> Github: https://github.com/openpvrsgx-devgroup/linux_openpvrsgx/branches
> Components:
> letux/omap-sysc-prm-gfx
> letux/omap-pvr-soc-glue-v8
> letux/pvrsrvkm-1.5.15.3226
> letux/pvrsrvkm-1.7.862890
> letux/pvrsrvkm-1.9.2188537
> letux/pvrsrvkm-1.9.2253347
> letux/pvrsrvkm-1.10.2359475
> letux/pvrsrvkm-1.13.3341330
> letux/pvrsrvkm-1.14.3699939
> letux/pvrsrvkm-1.14.3759903
> letux/pvrsrvkm-1.14.3841212
> letux/pvrsrvkm-1.15.4564147
> letux/pvrsrvkm-1.17.4948957
> letux/pvrsrvkm
> letux/pvr-demo
> =======
> 2b7bafd69f099 Merge branches 'letux/omap-sysc-prm-gfx', 'letux/omap-pvr-soc-glue-v8', 'letux/pvrsrvkm-1.5.15.3226', 'letux/pvrsrvkm-1.7.862890', 'letux/pvrsrvkm-1.9.2188537', 'letux/pvrsrvkm-1.9.2253347', 'letux/pvrsrvkm-1.10.2359475', 'letux/pvrsrvkm-1.13.3341330', 'letux/pvrsrvkm-1.14.3699939', 'letux/pvrsrvkm-1.14.3759903', 'letux/pvrsrvkm-1.14.3841212', 'letux/pvrsrvkm-1.15.4564147', 'letux/pvrsrvkm-1.17.4948957', 'letux/pvrsrvkm', 'letux/pvrsrvkm-defconfig', 'letux/pvr-demo' and 'letux/compile-fixes-v5' into letux-pvrsrvkm-5.19-rc1
> 0980db52e9e41 FIXME: pvrsrv: 1.17: pvr_linux_fence: there is no direct access to struct dma_resv_list and no resv->seq mechanism any more
> b28493d6e51d9 pvrsrv: 1.17: module: avoid compile abort by duplicate symbols
> 53a5b32551ddf scripts: modpost.c: not use strsep() again... there is get_line()
> a5ed3310ca415 scripts: check-local-export: make latest scripts/check-local-export compatible to bash 3.x
> 957b98e72734e Letux: rootfs: gpu-demo: add glxgears and glxinfo
> b7b3778ebc17f Letux: rootfs: Get rid of “warning: command substitution: ignored null byte in input”
> 020c8199d5ef5 Letux: rootfs: sgxdump: fix +x flags
> a4890c00794f8 Letux: rootfs: sgxdump: capture VERSION and REVISION and deduce SGX version reported by hardware
> 803bb57f42f28 Letux: rootfs: sgxdump: make read of /sys node more safe
> c0ae3a6d16681 Letux: rootfs: sgxdump: fix for am335x
> aee56ab27cc0e Letux: rootfs: sgxdump: more fixes
> 837f4ad142554 Letux: rootfs: sgxdump: add OMAP34xx and base decision on /sys/devices/soc0/machine
> 42bee560d9dae Letux: rootfs: sgxdump: add omap4 support
> fa877cf9b2d7a Letux: rootfs: sgxdump: use new power management by sysc and add omap5
> c7ca430ac377c Letux: rootfs: sgxdump: add #!/bin/bash
> db4cd07d39c9f Letux: rootfs: add sgxdump - a tool to dump SGX interface registers
> 5bd5040a40c8c Letux: rootfs: gpu-demo: fix /etc/powervr.ini for am335x
> 10e6f02bbf074 Letux: rootfs: gpu-demo: fix installation for omap5432
> ec74c2a4d08a5 Letux: rootfs: gpu-demo: do not overwrite powervr.ini by the version from git



More information about the openpvrsgx-devgroup mailing list