evdi icon indicating copy to clipboard operation
evdi copied to clipboard

Unable to build on kernel-6.18

Open haugsvar opened this issue 2 weeks ago • 3 comments

# 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
----------------------------------------------------------------

haugsvar avatar Dec 09 '25 06:12 haugsvar

Hi, did you compile code from release or from master?

Tony763 avatar Dec 09 '25 11:12 Tony763

Same issue, on NixOS, using the latest release 6.2

tukanoidd avatar Dec 10 '25 08:12 tukanoidd

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.

bearmannl avatar Dec 12 '25 08:12 bearmannl