amdgpu 6.0.5 drivers not compiling

asasamo

New Member
Aug 3, 2023
2
0
1
Hello,
I got a compilation error while I was installing the latest amdgpu drivers (6.0.5-1620033.22.04).
I'm running proxmox 8.0.3 with kernel 6.2.16-3-pve with RX550 GPU.
Seems to be a kernel-related issue, as someone else is have the same problem: https://community.amd.com/t5/driver...-on-kernel-6-2-0-25-generic-x86-64/m-p/620176

here's the make log:
Code:
DKMS make.log for amdgpu-6.0.5-1620033.22.04 for kernel 6.2.16-3-pve (amd64)

Thu Aug  3 08:52:22 PM CEST 2023

make: Entering directory '/usr/src/linux-headers-6.2.16-3-pve'

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/scheduler/sched_main.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/scheduler/sched_fence.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/scheduler/sched_entity.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/drm_gem_ttm_helper.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_tt.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/main.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_drv.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/drm_buddy.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/symbols.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_common.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_kernel_params.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/dma-buf/dma-resv.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_device.o

  LD [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amddrm_ttm_helper.o

  LD [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amddrm_buddy.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_kms.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_atombios.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_bo.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_backlight.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/atombios_crtc.o

  LD [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/scheduler/amd-sched.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_connectors.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_ioctl.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_kthread.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_io.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/atom.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_bo_util.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_perf_event.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_seq_file.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fence.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_ttm.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_suspend.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_pci.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_mm.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_object.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_memory.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_bo_vm.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_module.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_sched.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_gart.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_fence.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_fence_array.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_encoders.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_execbuf_util.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_reservation.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_display.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_i2c.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_cache.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_range_manager.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_auth.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_fb.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_print.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_gem.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_resource.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_fbmem.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_ring.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_pool.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_crtc.o

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c: In function ‘amdgpufb_create’:

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c:236:16: error: implicit declaration of function ‘drm_fb_helper_alloc_fbi’; did you mean ‘drm_fb_helper_alloc_info’? [-Werror=implicit-function-declaration]

  236 |         info = drm_fb_helper_alloc_fbi(helper);

      |                ^~~~~~~~~~~~~~~~~~~~~~~

      |                drm_fb_helper_alloc_info

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c:236:14: warning: assignment to ‘struct fb_info *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]

  236 |         info = drm_fb_helper_alloc_fbi(helper);

      |              ^

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c:264:73: error: ‘struct drm_mode_config’ has no member named ‘fb_base’

  264 |         info->apertures->ranges[0].base = adev_to_drm(adev)->mode_config.fb_base;

      |                                                                         ^

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c: In function ‘amdgpu_fbdev_destroy’:

/var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.c:306:9: error: implicit declaration of function ‘drm_fb_helper_unregister_fbi’; did you mean ‘drm_fb_helper_unregister_info’? [-Werror=implicit-function-declaration]

  306 |         drm_fb_helper_unregister_fbi(&rfbdev->helper);

      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~

      |         drm_fb_helper_unregister_info

cc1: some warnings being treated as errors

make[2]: *** [scripts/Makefile.build:260: /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu/amdgpu_fb.o] Error 1make[2]: *** Waiting for unfinished jobs....

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_connector.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_device.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_atomic_helper.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_sys_manager.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_device_cgroup.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_mn.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/ttm_agp_backend.o

make[1]: *** [scripts/Makefile.build:512: /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdgpu] Error 2

make[1]: *** Waiting for unfinished jobs....

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_modes.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_time.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_ftrace.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_acpi_table.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_page_alloc.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_numa.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_fs_read_write.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_aperture.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_drv.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_simple_kms_helper.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_bitmap.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_vmscan.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_dma_fence_chain.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_mce_amd.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_workqueue.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_cpumask.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_dsc_helper.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_drm_hdcp.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_debugfs_inode.o

  CC [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/kcl_sysfs_emit.o

  LD [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/ttm/amdttm.o

  LD [M]  /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build/amd/amdkcl/amdkcl.o

make: *** [Makefile:2026: /var/lib/dkms/amdgpu/6.0.5-1620033.22.04/build] Error 2

make: Leaving directory '/usr/src/linux-headers-6.2.16-3-pve'

Is there something I could try while waiting for kernel/driver fixes?

EDIT: also tried with 6.2.16-5-pve with no luck
 
Last edited:
I'm just curious: Why install graphics drivers on the Proxmox host and why not use the open-source amdgpu/radeonsi/radv drivers that come with the Linux kernel, which are often better and never much worse (on consumer GPUs like yours)?
 
Last edited:
I'm trying to setup a lxc container with jellyfin, I followed a bunch of posts talking about doing that and they all installed the proprietary drivers from AMD. I need GPU hardware transcoding or else my server will scream every time I play some kind of video file.

Here are some links:
https://forum.proxmox.com/threads/how-to-amdgpu-on-proxmox-7.95285/
https://www.reddit.com/r/jellyfin/comments/ul0i1a/running_jellyfin_on_lxc_unprivileged_promox_with/
https://emby.media/community/index.php?/topic/49680-howto-vaapi-transcoding-inside-lxc-container/
 
Google tells me that drm_fb_helper_alloc_fbi() was renamed almost a year ago. The vendor needs to update their code. Or you could try the open source driver included with the kernel as the other poster suggested.
Is there something I could try while waiting for kernel/driver fixes?

EDIT: also tried with 6.2.16-5-pve with no luck
Newer kernels won't fix this, you need a (much) older kernel version that is supported by AMD or ask AMD to update their closed-source driver.
Alternatively, with vendor-reset you can probably PCIe passthrough the RX550 to a VM, and use a Linux kernel/distribution that is supported by that closed-source driver.