Quando inicializo meu computador pela primeira vez, nvidia-modprobe
sai com um código de erro, sem imprimir nenhuma mensagem, enquanto sudo modprobe nvidia
é bem-sucedido. Eu procurei o código-fonte e descobri que o código que verifica os dispositivos da NVIDIA é o culpado. Eu tentei usar lspci -vnn
, que dá a seguinte saída para a placa NVIDIA:
09:00.0 3D controller [0302]: NVIDIA Corporation GM108M [GeForce 930M] [10de:1346] (rev ff) (prog-if ff)
!!! Unknown header type 7f
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
Em seguida, olhei para /proc/bus/pci/devices/0000:09:00.0/config
, que acabou por ser preenchido com ff
bytes. Acessar o arquivo device
ou vendor
, por outro lado, fornece o resultado esperado.
Após inspeção adicional, /proc/bus/pci/devices/0000:09:00.0/enable
contém 0
. Fazer eco de 1
nesse arquivo como raiz faz com que config
contenha o resultado esperado.
Depois de usar sudo modprobe nvidia
, invocações futuras de nvidia-modprobe
serão bem-sucedidas até a próxima reinicialização, mesmo que o módulo do kernel nvidia
seja posteriormente descarregado.
Claro, eu poderia criar minha própria versão de nvidia-modprobe
que remove as verificações de dispositivos NVIDIA, mas isso causaria problemas se eu quisesse atualizar meus drivers NVIDIA.
Existe uma maneira de resolver este problema ou estou olhando para o problema errado?