Ich habe morgen ein großes Problem mit meinem Computer an meinem Schreibtisch.
Nvidia: Versionsmagie „3.13.0-143-genric SMP mod_unload modversions“ sollte „3.13.0.143-generic SMP mod_unload modversions retpoline“ sein.
Ich weiß, dass hier ähnliche Probleme gelöst wurden (wieAnmeldung nach Installation des NVIDIA-Treibers v 14.04 nicht möglich)
Ich weiß jedoch nicht genau, wie ich den Befehl ändern kann, damit er auf meinem System funktioniert.
Ich habe Ubuntu 14.04 ...
Ich habe versucht, einen älteren Kernel zu laden. Das funktioniert gut. Ich überprüfe die GUI-Konfigurationstools. Unter Updates und Treiber kann ich wählen, ob ich meine NVIDIA-Treiber auf die neueste Version (384.111) aktualisieren möchte. Ich habe es versucht und alles funktioniert immer noch.
Dann bin ich zum neuesten Kernel zurückgekehrt.
Jetzt habe ich die Modinfo überprüft und Nvidia war nicht da. Ich habe „sudo modprobe nvidia“ ausprobiert (dkms sieht, dass Nvidia 384.111 installiert ist).
Antwort: modprobe: FEHLER: „nvidia_384“ konnte nicht eingefügt werden: Exec-Formatfehler
Ich habe nvidiafb.ko in /lib/modules/.../drivers/video/nivdia überprüft und diese Datei ist im -rw-r--r-- Modus... Ich weiß nicht, ob sie im Exec-Mod sein sollte???
Ich stecke jetzt fest
Antwort1
Dies liegt daran, dass die neueren Kernel über die Retpoline Spectre-Abwehr verfügen. Sie müssen Ihr nvidia.ko-Kernelmodul mit einer gepatchten Version der Standarddistribution gcc neu erstellen.
Hier ist der Fehler und weitere Details:https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1750937
Antwort2
Ich habe das Problem folgendermaßen gelöstdieser Beitragvom Bugs-Launchpad. Zusammengefasst:
Führen Sie den folgenden Befehl aus und suchen Sie nach der vermagic
Zeile:
modinfo nvidia-384 -k 4.4.0-116-generic
Wahrscheinlich wird es heißen:
vermagic: 4.4.0-116-generic SMP mod_unload modversions
. Hier fehlt der Retpoline-String. Sie können das beheben, indem Sie das Modul entfernen und mit DKMS neu erstellen.
sudo dkms remove nvidia-384/384.111 -k 4.4.0-116-generic
sudo dkms install nvidia-384/384.111 -k 4.4.0-116-generic
Danach zeigt der Befehl modinfo
vermagic: 4.4.0-116-generic SMP mod_unload modversions retpoline
Wenn Sie eine benutzerdefinierte Version von gcc verwendendieser Beitragist auch relevant:
Wenn Sie eine Ubuntu-Version von gcc verwenden, wurde gcc wahrscheinlich aktualisiert, als Sie den neueren Kernel erhalten haben. Die Änderungen an gcc, die zur Unterstützung von Retpoline erforderlich sind, sollten auf die meisten aktiven Versionen von gcc zurückportiert worden sein. Wenn Sie jedoch eine benutzerdefinierte Version von gcc installiert haben, wird Ihr Kernelmodul wahrscheinlich nicht korrekt erstellt.
Wenn das obige Verfahren nicht funktioniert, müssen Sie möglicherweise überprüfen, welche GCC-Version Sie verwenden.