Mensagem quebrada do BIOS no Debian 8 (mas não quando inicializa o Ubuntu)


2

Eu tenho um erro que não me deixa iniciar o sistema. Eu tenho nesse SSD um Windows 8 e Debian 8, e no meu HDD outro Windows 7 e Ubuntu 14.04 (eu estava migrando meus SO's para o SSD quando este erro aparece).

[    0.000000] Calgary: detecting Calgary via BIOS EBDA area
[    0.000000] Calgary: Unable to locate Rio Grande table in EBDA - bailing!

*recorte*

[    0.000000] WARNING: CPU: 0 PID: 0 at /build/linux-ELRFVQ/linux-3.16.7-ckt11/drivers/iommu/dmar.c:760 warn_invalid_dmar+0x7a/0x8a()
[    0.000000] Your BIOS is broken; DMAR reported at address fed90000 returns all ones!
BIOS vendor: American Megatrends Inc.; Ver: 1302   ; Product Version: System Version
[    0.000000] Modules linked in:
[    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 3.16.0-4-amd64 #1 Debian 3.16.7-ckt11-1+deb8u3
[    0.000000] Hardware name: System manufacturer System Product Name/P7H55-M, BIOS 1302    04/25/2011
[    0.000000]  ffffffff81016785 ffffffff8150b3a5 ffffffff81803e80 ffffffff81067767
[    0.000000]  ffffffff81af301c ffffffff81803ed0 00000000fed90000 0000000000000000
[    0.000000]  ffffffff81803fb0 ffffffff81067814 ffffffff8176edb0 ffffffff00000030
[    0.000000] Call Trace:
[    0.000000]  [<ffffffff81016785>] ? show_stack+0x5/0x50
[    0.000000]  [<ffffffff8150b3a5>] ? dump_stack+0x41/0x51
[    0.000000]  [<ffffffff81067767>] ? warn_slowpath_common+0x77/0x90
[    0.000000]  [<ffffffff81067814>] ? warn_slowpath_fmt_taint+0x44/0x50
[    0.000000]  [<ffffffff8192f4fa>] ? __early_ioremap+0x167/0x1fa
[    0.000000]  [<ffffffff8192f736>] ? early_ioremap+0xf/0x10
[    0.000000]  [<ffffffff81340ee9>] ? acpi_tb_acquire_table+0x39/0x66
[    0.000000]  [<ffffffff8150c3b3>] ? warn_invalid_dmar+0x7a/0x8a
[    0.000000]  [<ffffffff819499d6>] ? detect_intel_iommu+0xe3/0x16a
[    0.000000]  [<ffffffff8190bdd3>] ? pci_iommu_alloc+0x46/0x67
[    0.000000]  [<ffffffff8191b0d5>] ? mem_init+0x11/0x92
[    0.000000]  [<ffffffff81902e1a>] ? start_kernel+0x23b/0x49d
[    0.000000]  [<ffffffff81902a04>] ? set_init_arg+0x4e/0x4e
[    0.000000]  [<ffffffff81902120>] ? early_idt_handlers+0x120/0x120
[    0.000000]  [<ffffffff8190271f>] ? x86_64_start_kernel+0x14d/0x15c

Aqui está uma pasta com todo o syslog. Eu posso iniciar o Windows 7, 8 e Ubuntu 14.04, mas quando eu tento iniciar o Debian é isso que eu recebo.


Quando tento iniciar a GUI com startxisso é o que diz:

[   98.627889] nvidia 0000:01:00.0: irq 48 for MSI/MSI-X
[  100.211135] traps: x-session-manag[534] trap int3 ip:7f3258e78d30 sp:7ffef7745cf0 error:0

Pastebin com Xorg.0.logsaída.



@FranciscoTapia Eu vi esse post, mas eu tenho um 64 bit SO, eu tenho 4GB de RAM e tenho o VT-d ativado.
— aSoler

Você garantiu que está usando o BIOS mais recente disponível para a sua placa-mãe?
— Sepcʜιᴇ007

Você já tentou atualizar o firmware atual mesmo que esteja executando a versão atual.
— Ramhound

@ Ƭᴇcʜιᴇ007 Sim, versão 1302.
— aSoler

Respostas:


1

Todo sistema moderno usa uma MMU para mapear a memória virtual para a memória física. Hardware mais recente também tem esse recurso em outro hardware (por exemplo, em uma placa gráfica). Isso é então chamado de IO-MMU.

(Veja http://www.cyberciti.biz/tips/wp-content/uploads/2007/09/mmu-vs-iommu-memory.png para um gráfico que vale mais que mil palavras)

No seu caso, você tem uma placa Nvidia que possui um io-MMU on-board, mas que não é iniciado corretamente na inicialização ou que não funciona com o driver na sua instalação Debian.

Isso leva a quatro soluções:

  1. Corrigir o firmware. (Na placa gráfica ou na placa-mãe (também conhecido como BIOS / UEFI).
  2. Contornar isso no driver.
  3. Contornar isso, inicializando um sistema operacional que define corretamente e deixa em um estado configurado parcial durante reinicializações mornas.
  4. Não use este recurso quebrado.

Este último é algo que você pode fazer facilmente no software. Dependendo de como ele está quebrado, tente desabilitar o VT-d (no firmware do BIOS), ou através dos parâmetros do kernal.

Para definir o parâmetro do kernel, consulte este link https://www.kernel.org/doc/Documentation/kernel-parameters.txt .

Eu acho que a opção que você quer é iommu = off ou soft.

Se você quer construir um kernel sem suporte ao IOMMU, então verifique seu arquivo .config para estes valores e 'brinque com eles' para descobrir qual opção funciona para você.

CONFIG_GART_IOMMU=y
CONFIG_CALGARY_IOMMU=y
CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
CONFIG_AMD_IOMMU=y
CONFIG_AMD_IOMMU_STATS=y
CONFIG_IOMMU_HELPER=y
CONFIG_IOMMU_API=y
CONFIG_IOMMU_DEBUG

Eu apenas tento definir o iommu = off e desabilitar o VT-d e agora ele não carrega root ou terminal. O fato é que tudo funciona bem no Ubuntu, e eles devem usar o mesmo pacote, certo? edit : Eu editei a configuração grub do Ubuntu e agora ela diz kernel panic - não syncing .
— aSoler

O Ubuntu pode ser enviado com uma configuração de kernel diferente. Você pode comparar sua configuração com a do Ubuntu? (O mais fácil pode ser inicializar o Ubunto e zcat /proc/config.gz).
— Hennes

Eu não tenho um arquivo /proc/config.gz. No meu / etc / default / grub do Ubuntu eu tenho GRUB_CMDLINE_LINUX_DEFAULT = "respingo silencioso", devo tentar com isso no Debian? Agora no Debian não funciona o teclado.
— aSoler

Você pode tentar, mas duvido que isso mude alguma coisa. Não tendo um /proc/config.gz, você poderia procurar em / boot / para ver se há algum arquivo de configuração.
— Hennes

Sim, abi-3.13...-generic(versões diferentes), config-3.13..-generic(mesmo), pasta grub (com grub.cfg) e mais como os dois primeiros que começam com initrd, System.map, vmlinuz e memtest86 + .bin memtest86 + .elf e memtest86 + _multiboot.bin
— aSoler

1

O BIOS já era a versão mais recente, mas eu reparei e agora tudo funciona bem.

ATUALIZAR

O problema vem mais uma vez.


Obrigado por fechar o ciclo da sua pergunta. Há algum detalhe que você possa adicionar à sua resposta sobre o que você fez que possa ser útil para outras pessoas com um problema semelhante?
— fixer1234

@ fixer1234 Acabei de reinstalar o driver da BIOS e funcionou. Tudo o que tentei não mudou nada. Eu acho que é tudo que posso dizer.
— aSoler

Um reflash pode ter alterado algumas configurações. Eu tentei um "reset para os padrões" antes de piscar? Se não, então, isso pode ser suficiente para pessoas com problemas semelhantes.
— Hennes

@Hennes noite passada eu tentei iniciar o Debian e o problema retornou. Mais tarde vou verificar ... estou confuso.
— aSoler
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.