evdi
evdi copied to clipboard
Unable to build on kernel-6.18
# cmd_gen_symversions_c evdi_i2c.o
if nm evdi_i2c.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_i2c.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_i2c.o >> ./.evdi_i2c.o.cmd; fi
evdi_modeset.c: In function ‘evdi_cursor_atomic_update’:
evdi_modeset.c:346:39: error: ‘struct drm_device’ has no member named ‘struct_mutex’
346 | mutex_lock(&plane->dev->struct_mutex);
| ^~
evdi_modeset.c:372:41: error: ‘struct drm_device’ has no member named ‘struct_mutex’
372 | mutex_unlock(&plane->dev->struct_mutex);
| ^~
make[4]: *** [/usr/src/linux-6.18.0-1/scripts/Makefile.build:287: evdi_modeset.o] Error 1
make[4]: *** Waiting for unfinished jobs....
evdi_gem.c: In function ‘evdi_gem_mmap’:
evdi_gem.c:405:24: error: ‘struct drm_device’ has no member named ‘struct_mutex’
405 | mutex_lock(&dev->struct_mutex);
| ^~
evdi_gem.c:433:26: error: ‘struct drm_device’ has no member named ‘struct_mutex’
433 | mutex_unlock(&dev->struct_mutex);
| ^~
make[4]: *** [/usr/src/linux-6.18.0-1/scripts/Makefile.build:287: evdi_gem.o] Error 1
# cmd_gen_symversions_c evdi_platform_dev.o
if nm evdi_platform_dev.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_platform_dev.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_platform_dev.o >> ./.evdi_platform_dev.o.cmd; fi
# cmd_gen_symversions_c evdi_ioc32.o
if nm evdi_ioc32.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_ioc32.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_ioc32.o >> ./.evdi_ioc32.o.cmd; fi
# cmd_gen_symversions_c evdi_drm_drv.o
if nm evdi_drm_drv.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_drm_drv.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_drm_drv.o >> ./.evdi_drm_drv.o.cmd; fi
# cmd_gen_symversions_c evdi_painter.o
if nm evdi_painter.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_painter.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_painter.o >> ./.evdi_painter.o.cmd; fi
# cmd_gen_symversions_c evdi_fb.o
if nm evdi_fb.o 2>/dev/null | grep -q ' __export_symbol_'; then nm evdi_fb.o | sed -n 's/.* __export_symbol_\(.*\)/\1/p' | /usr/src/linux-6.18.0-1-obj/x86_64/default/scripts/gendwarfksyms/gendwarfksyms evdi_fb.o >> ./.evdi_fb.o.cmd; fi
make[3]: *** [/usr/src/linux-6.18.0-1/Makefile:2033: .] Error 2
make[2]: *** [/usr/src/linux-6.18.0-1/Makefile:248: __sub-make] Error 2
make[2]: Leaving directory '/var/lib/dkms/evdi/1.14.11/build'
make[1]: *** [../../../linux-6.18.0-1/Makefile:248: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-6.18.0-1-obj/x86_64/default'
make: *** [Makefile:34: all] Error 2
# exit code: 2
# elapsed time: 00:00:01
----------------------------------------------------------------
Hi, did you compile code from release or from master?
Same issue, on NixOS, using the latest release 6.2
This would be fixed once evdi has a new release which includes this commit:
[Support Linux v6.18] Remove lock on device->struct_mutex
Will also block building DisplayLink as it depends on evdi.