Quando eu conecto um monitor na minha placa gráfica, a inicialização falha com “não consegui alocar o usb_device”

0

Eu tenho um sistema com estas especificações:

Tudo estava bem, até que eu pedi a placa gráfica NVIDIA e instalei-a. Ao tentar inicializar com um ou dois monitores conectados à placa NVIDIA (mesmo inicializando com uma imagem USB ao vivo para instalar uma nova distro), a inicialização falha com esta saída:

Porquevaleapena,estouinstalandooLinuxMint,mastambémnãoconseguimosfazeroutrasdistrosfuncionarem,masamensagemdeerroédiferenteparacadaumadelas.Nestecaso,eupossoinicializaraimagemUSBaovivo,selecionarqueeuqueroinicializaroLinuxMint,eologoMintapareceporumtempo,entãoesteerroaparece.

Eupossoinicializarcomosmonitoresconectadosaosgráficosintegrados,edepoistrocá-los,mashácercade5-10segundosdeatrasoquandoeucliconomouseoupressionoumateclanoteclado,entãoocomputadorébasicamenteinutilizável.

Basicamente,nãotenhoidéiadeporqueconectarosmonitoresàplacadevídeogeraumerro"não é possível alocar o usb_device". Parece pensar que existem mais de 127 dispositivos USB conectados, o que definitivamente não é verdade.

    
por Matt 17.09.2018 / 20:08

1 resposta

1

Acontece que a solução é adicionar amd_iommu=off aos parâmetros de inicialização do kernel.

Para fazer isso ao inicializar a imagem USB ao vivo, eu pressionei "e" no menu de inicialização e encontrei a linha que começou com "linux" e adicionei amd_iommu=off antes do final -- no final da linha ( logo após quiet splash ).

Depois de instalar o Mint, eu reiniciei, mas o mesmo erro apareceu, porque essa correção era apenas temporária, para aquele boot singular. Para tornar a correção permanente, eu repetidamente apertei a tecla Esc após desligar e religar até que o prompt grub aparecesse. Eu digitei normal para carregar o menu grub, após o que eu repeti as etapas acima para desativar o amd_iommu temporariamente. Uma vez inicializado, tornei permanente editando /etc/default/grub e modificando uma linha perto do topo com GRUB_CMDLINE_LINUX_DEFAULT sendo GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=off" (per estas instruções ).

Me disseram que isso tem algumas implicações de segurança. No entanto, definir amd_iommu=fullflush fez com que a inicialização parasse e, eventualmente, falhasse.

Isso resolveu o problema permanentemente; monitores ainda conectados à placa NVIDIA.

(Documentando o resto para mim, caso eu precise fazê-lo novamente mais tarde, um problema ligeiramente diferente ...) No entanto: eu tenho dois monitores LG 4K, e apenas 1 estava rodando a 60Hz; o outro estava em 30Hz sem opção de 60Hz disponível ( xrandr ), apesar da placa gráfica ser capaz disso. Um estava em DisplayPort e o outro em HDMI. O monitor HDMI estava preso a 30Hz. Eu consertei isso usando os controles do monitor para ir ao Menu - > Configurações rápidas - > Proporção e defini-la como Original, em vez de Ampla. Na próxima vez que executei xrandr , uma opção de 60 Hz estava disponível. Eu habilitei essa taxa executando xrandr --output HDMI-O --mode 3840x2160 --rate 60 . Mas como essa é apenas uma correção temporária, eu modifiquei ~/.config/monitors.xml e mudei o campo <rate> para 60. Agora ele vai para 60Hz a cada inicialização.

Uau. Eu estou batido - levou uma semana para descobrir isso. Obrigado aos colegas de trabalho que ajudaram.

    
por 17.09.2018 / 22:55