Mmap'ing fails with RTX 2080 SUPER (desktop) but works with GTX 1060 (laptop) and 565.57.01 drivers

The 565.57.01 driver added the possibility of mmap’ing dmabuf according to the changelog. It works with my laptop with has a GTX 1060 (Pascal) but with my desktop PC (RTX 2080, Turing), I can’t get it working with neither GSP on, off and with the open source driver.

dmesg logs (open source driver):

[   96.181008] NVRM: nvAssertFailedNoLog: Assertion failed: 0 @ mapping_cpu.c:127
[   96.181018] NVRM: nvAssertOkFailedNoLog: Assertion failed: Call not supported [NV_ERR_NOT_SUPPORTED] (0x00000056) returned from rmapiGetEffectiveAddrSpace(pGpu, memdescGetMemDescFromGpu(pMemDesc, pGpu), pMapParams->flags, &effectiveAddrSpace) @ mapping_cpu.c:306
[   96.181034] [drm:__nv_drm_gem_nvkms_map [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002d00] Failed to map NvKmsKapiMemory 0x00000000c6fe30f4
[   96.182721] NVRM: nvAssertFailedNoLog: Assertion failed: 0 @ mapping_cpu.c:127
[   96.182728] NVRM: nvAssertOkFailedNoLog: Assertion failed: Call not supported [NV_ERR_NOT_SUPPORTED] (0x00000056) returned from rmapiGetEffectiveAddrSpace(pGpu, memdescGetMemDescFromGpu(pMemDesc, pGpu), pMapParams->flags, &effectiveAddrSpace) @ mapping_cpu.c:306
[   96.182742] [drm:__nv_drm_gem_nvkms_map [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002d00] Failed to map NvKmsKapiMemory 0x0000000012ee1119
[   96.253136] NVRM: nvAssertFailedNoLog: Assertion failed: 0 @ mapping_cpu.c:127
[   96.253145] NVRM: nvAssertOkFailedNoLog: Assertion failed: Call not supported [NV_ERR_NOT_SUPPORTED] (0x00000056) returned from rmapiGetEffectiveAddrSpace(pGpu, memdescGetMemDescFromGpu(pMemDesc, pGpu), pMapParams->flags, &effectiveAddrSpace) @ mapping_cpu.c:306
[   96.253158] [drm:__nv_drm_gem_nvkms_map [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002d00] Failed to map NvKmsKapiMemory 0x00000000692e7f8c
[  103.994080] NVRM: nvCheckOkFailedNoLog: Check failed: Object handle is not valid [NV_ERR_INVALID_OBJECT_HANDLE] (0x00000033) returned from serverGetClientUnderLock(&g_resServ, pArgs->hClient, &pClient) @ rmapi_deprecated_control.c:109
[  103.994165] NVRM: nvCheckOkFailedNoLog: Check failed: Object handle is not valid [NV_ERR_INVALID_OBJECT_HANDLE] (0x00000033) returned from serverGetClientUnderLock(&g_resServ, pArgs->hClient, &pClient) @ rmapi_deprecated_control.c:109

With the proprietary driver I don’t have the lines with “Assertion failed” I just have the [drm:__nv_drm_gem_nvkms_map [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00002d00] Failed to map NvKmsKapiMemory 0x0000000012ee1119 ones

The new venus driver needs this to have vulkan working in Qemu virtual machines: https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/524

To reproduce the issue:

  • Use the RTX 2080 SUPER (desktop)
  • Install virglrenderer >= 1.0.0. Package virglrenderer on Arch Linux and Ubuntu
  • Install Virtio Vulkan ICD (Venus) >= 24.2.0. Package vulkan-virtio on Arch Linux, mesa-vulkan-drivers on Ubuntu
  • Install Vulkan tools. Package vulkan-tools on Arch Linux and Ubuntu
  • Run virgl_test_server --venus in a terminal
  • Run vulkaninfo in another terminal. A GPU device named “Virtio-GPU Venus (NVIDIA …)” should be listed in addition of Nvidia GPU.
  • Run VN_DEBUG=all vkcube --gpu_number <id of virtio-gpu>

https://docs.mesa3d.org/drivers/venus.html#vtest

nvidia-bug-report.log.gz (1.2 MB)

Any updates? The issue is not fixed with the 565.77 driver.

The issue is fixed in 570.xx drivers

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.