Qualche ora fa ho aggiornato il kernel, ma a seguito dell'aggiornamento non si avvia più il server grafico. Poi ho scoperto che il mancato avvio era dovuto al mancato caricamento dei moduli kernel del driver. All'inizio non me ne ero accorto perché l'aggiornamento del kernel lo faccio attraverso uno script che aggiorna in sequenza anche i moduli del driver nvidia e di virtualbox.
Fatto sta che la compilazione dei moduli nvidia produce un errore con il kernel 5.10 perciò si arresta tutto. Per ora ho reinstallato il kernel 5.4.83. Ho visto che c'è una patch ma prima di usarla voglio verificare dove va a parare perché non sono sicuro se va applicata solo nello slackbuild nvidia-kernel o anche nello slackbuild nvidia-driver.
Per ora sconsiglio pertanto l'aggiornamento del kernel per chi usa il driver proprietario di nvidia
Driver nvidia con kernel 5.10 [RISOLTO]
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
-
- Linux 3.x
- Messaggi: 654
- Iscritto il: mer 16 lug 2014, 17:35
- Nome Cognome: Giancarlo Dessì
- Slackware: 64 current
- Kernel: 6.6.xx
- Desktop: KDE 5.27
- Località: Sardinia
- Contatta:
Re: Driver nvidia con kernel 5.10 [RISOLTO]
Ok, ora sono collegato dopo aver aggiornato il kernel e risolto i problemi con i driver.
Ho ricostruito la patch per includerla nello slackbuild. Così com'era non andava bene perché erano sballati i percorsi. La patch va applicata nello slackbuild di nvidia-kernel, sembra non sia necessaria invece per la compilazione del driver (l'ho ricompilato così come è rilasciato nel repository di Ponce).
Questo è il testo della patch:
Ho comunque scritto al mantainer dello slackbuild
Ho ricostruito la patch per includerla nello slackbuild. Così com'era non andava bene perché erano sballati i percorsi. La patch va applicata nello slackbuild di nvidia-kernel, sembra non sia necessaria invece per la compilazione del driver (l'ho ricompilato così come è rilasciato nel repository di Ponce).
Questo è il testo della patch:
Codice: Seleziona tutto
--- kernel/common/inc/nv-linux.h 2020-09-23 03:10:38.000000000 +0200
+++ kernel/common/inc/nv-linux.h 2020-12-21 21:28:44.402720929 +0100
@@ -11,6 +11,7 @@
#ifndef _NV_LINUX_H_
#define _NV_LINUX_H_
+#include <linux/version.h>
#include "nvstatus.h"
#include "nv-misc.h"
#include "nv.h"
@@ -166,6 +167,11 @@
#include <linux/pagemap.h>
#include <linux/dma-mapping.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0))
+// dma-mapping.h has been split on commit 0a0f0d8be76dcd4390ff538e7060fda34db79717,,
+// so this needs to be incldued now for the build to work
+#include <linux/dma-map-ops.h>
+#endif
#if defined(CONFIG_SWIOTLB) && defined(NVCPU_AARCH64)
#include <linux/swiotlb.h>
--- kernel/nvidia-drm/nvidia-drm-gem-user-memory.c 2020-09-23 03:10:38.000000000 +0200
+++ kernel/nvidia-drm/nvidia-drm-gem-user-memory.c 2020-12-21 21:40:12.109633670 +0100
@@ -20,6 +20,7 @@
* DEALINGS IN THE SOFTWARE.
*/
+#include <linux/version.h>
#include "nvidia-drm-conftest.h"
#if defined(NV_DRM_AVAILABLE)
@@ -60,8 +61,14 @@
{
struct nv_drm_gem_user_memory *nv_user_memory = to_nv_user_memory(nv_gem);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 0))
+ // New parameter to drm_prime_pages_to_sg (commit 707d561f77b5e2a6f90c9786bee44ee7a8dedc7e)
+ return drm_prime_pages_to_sg(nv_gem->nv_dev->dev, nv_user_memory->pages,
+ nv_user_memory->pages_count);
+#else
return drm_prime_pages_to_sg(nv_user_memory->pages,
nv_user_memory->pages_count);
+#endif
}
static void *__nv_drm_gem_user_memory_prime_vmap(