Guten Tag allerseits,
ich hatte vor einiger Zeit dank eurer Hilfe auf meinem Lenovo E470 20H2-S007 Bumblebee zum Laufen gebracht: Schlechte Performance mit Nvidia-GPU trotz Bumblebee
Nachdem ein neuerliches Software-Update aufgespielt wurde, bricht das Kompilieren des Grafiktreibers mittels dkms beim Starten ab (ich weiß nicht mehr genau, welches). In der Datei /var/lib/dkms/nvidia/384.59-64.1/build/make.log finde ich folgende Fehlermeldungen:
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm8_ats_numa.c: In function ‘bad_idea_read_string_from_file’:
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm8_ats_numa.c:134:5: warning: passing argument 3 of ‘kernel_read’ makes integer from pointer without a cast [enabled by default]
read_count = kernel_read(filp, 0, read_buffer, read_buffer_size - 1);
^
In file included from /usr/src/linux-4.14.2-1.gb0610fc/include/linux/huge_mm.h:7:0,
from /usr/src/linux-4.14.2-1.gb0610fc/include/linux/mm.h:452,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv-pgprot.h:17,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv-linux.h:20,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm_linux.h:39,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv_uvm_interface.h:30,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm8_ats_numa.c:24:
/usr/src/linux-4.14.2-1.gb0610fc/include/linux/fs.h:2844:16: note: expected ‘size_t’ but argument is of type ‘char *’
extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
^
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm8_ats_numa.c:134:5: warning: passing argument 4 of ‘kernel_read’ makes pointer from integer without a cast [enabled by default]
read_count = kernel_read(filp, 0, read_buffer, read_buffer_size - 1);
^
In file included from /usr/src/linux-4.14.2-1.gb0610fc/include/linux/huge_mm.h:7:0,
from /usr/src/linux-4.14.2-1.gb0610fc/include/linux/mm.h:452,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv-pgprot.h:17,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv-linux.h:20,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm_linux.h:39,
from /var/lib/dkms/nvidia/384.59-64.1/build/common/inc/nv_uvm_interface.h:30,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-uvm/uvm8_ats_numa.c:24:
/usr/src/linux-4.14.2-1.gb0610fc/include/linux/fs.h:2844:16: note: expected ‘loff_t *’ but argument is of type ‘size_t’
extern ssize_t kernel_read(struct file *, void *, size_t, loff_t *);
^
...
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:173:5: error: unknown field ‘enable’ specified in initializer
.enable = nvidia_crtc_enable,
^
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:173:5: warning: initialization from incompatible pointer type [enabled by default]
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:173:5: warning: (near initialization for ‘nv_crtc_helper_funcs.mode_valid’) [enabled by default]
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c: In function ‘nvidia_plane_create’:
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:230:9: error: incompatible type for argument 7 of ‘drm_universal_plane_init’
);
^
In file included from /usr/src/linux-4.14.2-1.gb0610fc/include/drm/drm_crtc.h:45:0,
from /usr/src/linux-4.14.2-1.gb0610fc/include/drm/drmP.h:69,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-priv.h:30,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:27:
/usr/src/linux-4.14.2-1.gb0610fc/include/drm/drm_plane.h:548:5: note: expected ‘const uint64_t *’ but argument is of type ‘enum drm_plane_type’
int drm_universal_plane_init(struct drm_device *dev,
^
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:230:9: error: too few arguments to function ‘drm_universal_plane_init’
);
^
In file included from /usr/src/linux-4.14.2-1.gb0610fc/include/drm/drm_crtc.h:45:0,
from /usr/src/linux-4.14.2-1.gb0610fc/include/drm/drmP.h:69,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-priv.h:30,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:27:
/usr/src/linux-4.14.2-1.gb0610fc/include/drm/drm_plane.h:548:5: note: declared here
int drm_universal_plane_init(struct drm_device *dev,
^
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c: In function ‘nvidia_drm_add_crtc’:
/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:360:37: error: too few arguments to function ‘drm_crtc_init_with_planes’
);
^
In file included from /usr/src/linux-4.14.2-1.gb0610fc/include/drm/drmP.h:69:0,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-priv.h:30,
from /var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.c:27:
/usr/src/linux-4.14.2-1.gb0610fc/include/drm/drm_crtc.h:899:5: note: declared here
int drm_crtc_init_with_planes(struct drm_device *dev,
^
/usr/src/linux-4.14.2-1.gb0610fc/scripts/Makefile.build:315: recipe for target '/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.o' failed
make[3]: *** [/var/lib/dkms/nvidia/384.59-64.1/build/nvidia-drm/nvidia-drm-crtc.o] Error 1
/usr/src/linux-4.14.2-1.gb0610fc/Makefile:1508: recipe for target '_module_/var/lib/dkms/nvidia/384.59-64.1/build' failed
make[2]: *** [_module_/var/lib/dkms/nvidia/384.59-64.1/build] Error 2
make[2]: Leaving directory '/usr/src/linux-4.14.2-1.gb0610fc-obj/x86_64/default'
Makefile:146: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-4.14.2-1.gb0610fc'
Makefile:81: recipe for target 'modules' failed
make: *** [modules] Error 2
Alles anzeigen
Ein paar Kenndaten zu meinem System, damit ihr nicht alles im alten Thread suchen müsst: Eingebaut sind ein i7 7500U mit integrierter Intel HD Graphics 620 sowie einer separaten GTX 940MX. Es läuft Leap 42.3 mit Plasma. Der Kernel ist aus Kernel:/stable, momentan 4.14.2-1.gb0610fc-default. Eingebunden sind die folgenden Repos, ich habe auch überprüft, dass alle relevanten Pakete aus den korrekten Repos installiert sind:
Index of /repositories/X11:/Bumblebee/Kernel_stable_standard
Index of /repositories/home:/Bumblebee-Project:/nVidia:/latest/openSUSE_Leap_42.3
Index of /repositories/Kernel:/stable/standard
Optirun spuckt dann folgerichtig auch eine Fehlermeldung aus:
optirun --status
[ 3051.237136] [ERROR]The Bumblebee daemon has not been started yet or the socket path /var/run/bumblebee.socket was incorrect.
[ 3051.237194] [ERROR]Could not connect to bumblebee daemon - is it running?
Ist das ein Fehler, den ich bei mir beheben kann (wenn ja, wie?), oder muss ich warten und darauf hoffen, dass ein zukünftiger Patch das behebt?
Grüße, Eldrad