Por que meu syslog está me dizendo que meu BIOS está quebrado?

Por que meu syslog está me dizendo que meu BIOS está quebrado?

Encontrei isso no meu arquivo syslog, o que posso fazer para consertar? Ou vale a pena consertar?

Tudo parece estar funcionando corretamente. Executando 3.12.9-031209-genérico.

WARNING: CPU: 0 PID: 0 at /home/apw/COD/linux/drivers/iommu/dmar.c:488 warn_invalid_dmar+0x8f/0xa0()
Your BIOS is broken; DMAR reported at address 0!
BIOS vendor: American Megatrends Inc.; Ver: F5; Product Version: To be filled by O.E.M.
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Not tainted 3.12.9-031209-generic #201401251255
Hardware name: Gigabyte Technology Co., Ltd. Z87MX-D3H/Z87MX-D3H-CF, BIOS F5 08/02/2013
00000000000001e8 ffffffff81c01d98 ffffffff817433c6 00000000000017e0
ffffffff81c01de8 ffffffff81c01dd8 ffffffff810678ac ffffffff81c01e28
ffffffff81fd201c ffffffff81fd2058 ffffffff81dda2e0 ffff88022f5aad00
Call Trace:
[<ffffffff817433c6>] dump_stack+0x46/0x58
[<ffffffff810678ac>] warn_slowpath_common+0x8c/0xc0
[<ffffffff8106793f>] warn_slowpath_fmt_taint+0x3f/0x50
[<ffffffff8172dfbb>] ? acpi_os_map_memory+0x27/0x150
[<ffffffff816124af>] warn_invalid_dmar+0x8f/0xa0
[<ffffffff81d84944>] check_zero_address+0x57/0xf7
[<ffffffff81d849fb>] detect_intel_iommu+0x17/0xb8
[<ffffffff81d3a0db>] pci_iommu_alloc+0x44/0x6e
[<ffffffff81d49a5c>] mem_init+0x11/0xa2
[<ffffffff81d2fcfa>] start_kernel+0x1de/0x41e
[<ffffffff81d2f9ae>] ? do_early_param+0x87/0x87
[<ffffffff81d2f120>] ? early_idt_handlers+0x120/0x120
[<ffffffff81d2f5e8>] x86_64_start_reservations+0x2a/0x2c
[<ffffffff81d2f6f2>] x86_64_start_kernel+0x108/0x117
---[ end trace 11d0aeb7d970f0a3 ]---

Responder1

A melhor fonte que encontrei que explica isso é do Redhat. Não é específico do Ubuntu, mas está relacionado ao kernel (todos nós compartilhamos) e ao seu hardware, devolvendo informações erradas ao kernel.

Troque Redhat por Ubuntu no texto copiado do link e lembre-se dos 3 marcadores (talvez você possa usar isso para contornar isso):


Os sistemas não inicializam, o USB não funciona, o adaptador de rede não funciona (ou possivelmente outros sintomas) devido ao manuseio imperfeito dos BIOS com manipulação IOMMU quebrada

Alguns fabricantes enviam sistemas com BIOS cujo manuseio do hardware IOMMU é incorreto. O BIOS deve informar ao sistema operacional onde encontrar o hardware IOMMU na memória, mas alguns BIOS não fazem isso corretamente, fornecendo um local de lixo ou um local que é válido, mas não é realmente onde o dispositivo está localizado. O kernel tenta lidar com esses casos, mas alguns ainda não foram totalmente tratados no kernel da versão 12 do Fedora. Se você tiver um sistema afetado por esse problema, o sintoma mais comum é que o subsistema USB não funcionará (nenhum periférico USB funcionará), mas outros sintomas incluem sistemas que falham completamente ao inicializar e adaptadores de rede não funcionais.

Existem alguns sistemas atualmente conhecidos por serem potencialmente afetados por esse problema. Para todos eles, exceto a estação de trabalho HP xw4600 e o Dell Precision M6400, todas as condições a seguir devem ser verdadeiras antes que você encontre o bug:

  • Você deve estar usando a edição de 32 bits do Fedora 12
  • Você não deve ter memória além da área de endereço de 4 GB (na prática, isso significa que você deve ter cerca de 2,5 GB de RAM física ou menos)
  • Os recursos de virtualização (VT-d) devem ser desabilitados no BIOS

Se alguma das situações acima não for o caso, você não deverá encontrar esse problema. Se você acha que pode estar sofrendo desse problema, procure uma mensagem de log do kernel incluindo algo semelhante a:

Your BIOS is broken; DMAR reported at address fed10000 returns all ones!

ou:

Your BIOS is broken; DMAR reported at address zero!

Observe que se você estiver usando um sistema com um BIOS quebrado, a mensagem do kernel sempre aparecerá, mesmo que o kernel de fato lide com o seu caso corretamente ou se você tiver resolvido o problema com sucesso. Portanto, não se preocupe, pois ainda verá a mensagem depois de solucionar o problema.

Existem várias maneiras de contornar esse problema. Na maioria dos casos (veja acima), instalar a edição de 64 bits do Fedora 12 seria suficiente. Se o seu BIOS tiver uma opção para isso, habilitar recursos de virtualização no BIOS também deve solucionar esse problema. Finalmente, você pode contornar esse problema anexando o parâmetro do kernel iommu=soft à sua configuração de inicialização.

Um pacote de kernel atualizado foi lançado para resolver esse problema. Atualize seu sistema normalmente para receber esta atualização, caso ainda não a tenha feito. Obviamente, se você for afetado pelo problema, precisará usar uma das soluções alternativas acima para primeiro levar seu sistema a um estado a partir do qual você possa instalar um kernel fixo.

informação relacionada