質問: debian 8のbios破損メッセージ(ただし、ubuntuの起動時はそうではありません) システムを起動できないエラーが発生しました。そのssdにはwindows8とdebian8があり、hddには他のwindows7とubuntu14.04があります(このエラーが表示されたときにsoをssdに移行していました)。[ 0.000000] calgary: detecting calgary via bios ebda area [ 0.000000] calgary: unable to locate rio grande table in ebda - bailing! *をちょきちょきと切る*[ 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 ここ はすべてのsyslogを含むpastebinです。 windows 7、8、ubuntu 14.04を起動できますが、debianを起動しようとすると、これが表示されます。 guiをstartxで起動しようとすると、次のようになります。[ 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 ペーストビン with xorg.0.log出力。
回答: 最新のシステムはすべて、仮想メモリを物理メモリにマッピングするためにmmuを使用します。最近のハードウェアは、他のハードウェア(グラフィックカードなど)でもこの機能を備えています。これは、io-mmuと呼ばれます。(1000語に相当するグラフィックについては http://www.cyberciti.biz/tips/wp-content/uploads/2007/09/mmu-vs-iommu-memory.png を参照してください)あなたの場合、io-mmuが搭載されているが、起動時に適切に開始されないか、debianインストールのドライバで動作しないnvidiaカードがあります。それは4つの解決策につながります: ファームウェアを修正します。 (グラフィックカードまたはマザーボード(別名bios/uefi)のいずれか。 ドライバーで回避します。 適切に設定され、ウォームリブート中に部分的に構成された状態のままになるosを起動して、この問題を回避します。 この壊れた機能は使用しないでください。 後者は、ソフトウェアで簡単に実行できるものです。壊れている方法に応じて、(biosファームウェアで)vt-dを無効にするか、カーネルパラメータを使用してみてください。カーネルパラメータを設定するには、このリンクを参照してください https://www.kernel.org/doc/documentation/kernel-parameters.txt 。必要なオプションはiommu = offまたはsoftだと思います。iommuをサポートせずにカーネルを構築する場合は、.configファイルでこれらの値を確認し、「それらを試してみて」、どのオプションが適切かを見つけてください。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