Tom Rotenberg
2009-May-24 11:09 UTC
[Xen-devel] Booting Xen 3.4 with iommu=1 causes boot to hang
Hi,
I just cloned and built Xen 3.4 and built it. When i try to boot it, the
boot hangs. After small check, it turns out that the option
''iommu=1'' causes
the boot to hang. Without this option - dom0 boots fine, but *with* this
option, it hangs, and the serial output looks like this:
(XEN) Video information:
(XEN) VGA is text mode 80x25, font 8x16
(XEN) VBE/DDC methods: V2; EDID transfer time: 1 seconds
(XEN) Disc information:
(XEN) Found 1 MBR signatures
(XEN) Found 1 EDD information structures
(XEN) Xen-e820 RAM map:
(XEN) 0000000000000000 - 000000000009ec00 (usable)
(XEN) 000000000009ec00 - 00000000000a0000 (reserved)
(XEN) 00000000000dc000 - 0000000000100000 (reserved)
(XEN) 0000000000100000 - 000000007c4a1000 (usable)
(XEN) 000000007c4a1000 - 000000007c4a7000 (reserved)
(XEN) 000000007c4a7000 - 000000007c5b7000 (usable)
(XEN) 000000007c5b7000 - 000000007c60f000 (reserved)
(XEN) 000000007c60f000 - 000000007c6c6000 (usable)
(XEN) 000000007c6c6000 - 000000007c6d1000 (ACPI NVS)
(XEN) 000000007c6d1000 - 000000007c6d4000 (ACPI data)
(XEN) 000000007c6d4000 - 000000007c6d8000 (reserved)
(XEN) 000000007c6d8000 - 000000007c6dc000 (ACPI NVS)
(XEN) 000000007c6dc000 - 000000007c6df000 (reserved)
(XEN) 000000007c6df000 - 000000007c706000 (ACPI NVS)
(XEN) 000000007c706000 - 000000007c708000 (ACPI data)
(XEN) 000000007c708000 - 000000007c90f000 (reserved)
(XEN) 000000007c90f000 - 000000007c99f000 (ACPI NVS)
(XEN) 000000007c99f000 - 000000007c9ff000 (ACPI data)
(XEN) 000000007c9ff000 - 000000007ca00000 (usable)
(XEN) 000000007cc00000 - 000000007f000000 (reserved)
(XEN) 00000000e0000000 - 00000000f0000000 (reserved)
(XEN) 00000000fec00000 - 00000000fec10000 (reserved)
(XEN) 00000000fed00000 - 00000000fed00400 (reserved)
(XEN) 00000000fed10000 - 00000000fed14000 (reserved)
(XEN) 00000000fed18000 - 00000000fed1a000 (reserved)
(XEN) 00000000fed1c000 - 00000000fed90000 (reserved)
(XEN) 00000000fee00000 - 00000000fee01000 (reserved)
(XEN) 00000000ff800000 - 0000000100000000 (reserved)
(XEN) System RAM: 1990MB (2037788kB)
(XEN) ACPI: RSDP 000F6530, 0024 (r2 LENOVO)
(XEN) ACPI: XSDT 7C96A5B6, 009C (r1 LENOVO TP-7U 2030 LTP 0)
(XEN) ACPI: FACP 7C96A700, 00F4 (r3 LENOVO TP-7U 2030 LNVO 1)
(XEN) ACPI: DSDT 7C96AADB, F0B8 (r1 LENOVO TP-7U 2030 MSFT 3000000)
(XEN) ACPI: FACS 7C98E000, 0040
(XEN) ACPI: SSDT 7C96A8B4, 0227 (r1 LENOVO TP-7U 2030 MSFT 3000000)
(XEN) ACPI: ECDT 7C979B93, 0052 (r1 LENOVO TP-7U 2030 LNVO 1)
(XEN) ACPI: APIC 7C979BE5, 0078 (r1 LENOVO TP-7U 2030 LNVO 1)
(XEN) ACPI: MCFG 7C979C5D, 003C (r1 LENOVO TP-7U 2030 LNVO 1)
(XEN) ACPI: HPET 7C979C99, 0038 (r1 LENOVO TP-7U 2030 LNVO 1)
(XEN) ACPI: SLIC 7C979DC2, 0176 (r1 LENOVO TP-7U 2030 LTP 0)
(XEN) ACPI: BOOT 7C979F38, 0028 (r1 LENOVO TP-7U 2030 LTP 1)
(XEN) ACPI: ASF! 7C979F60, 00A0 (r16 LENOVO TP-7U 2030 PTL 1)
(XEN) ACPI: SSDT 7C98D213, 054F (r1 LENOVO TP-7U 2030 INTL 20050513)
(XEN) ACPI: TCPA 7C707000, 0032 (r0 0 0)
(XEN) ACPI: DMAR 7C706000, 0120 (r1 1 0)
(XEN) ACPI: SSDT 7C6D3000, 0655 (r1 PmRef CpuPm 3000 INTL 20050624)
(XEN) ACPI: SSDT 7C6D2000, 0274 (r1 PmRef Cpu0Tst 3000 INTL 20050624)
(XEN) ACPI: SSDT 7C6D1000, 0242 (r1 PmRef ApTst 3000 INTL 20050624)
(XEN) NUMA turned off
(XEN) Faking a node at 0000000000000000-000000007ca00000
(XEN) Domain heap initialised
(XEN) found SMP MP-table at 000f6570
(XEN) DMI present.
(XEN) Using APIC driver default
(XEN) ACPI: PM-Timer IO Port: 0x1008
(XEN) ACPI: ACPI SLEEP INFO: pm1x_cnt[1004,0], pm1x_evt[1000,0]
(XEN) ACPI: wakeup_vec[7c98e00c], vec_size[20]
(XEN) ACPI: Local APIC address 0xfee00000
(XEN) ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
(XEN) Processor #0 7:7 APIC version 20
(XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
(XEN) Processor #1 7:7 APIC version 20
(XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] disabled)
(XEN) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x03] disabled)
(XEN) ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
(XEN) ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
(XEN) ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
(XEN) IOAPIC[0]: apic_id 1, version 32, address 0xfec00000, GSI 0-23
(XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
(XEN) ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
(XEN) ACPI: IRQ0 used by override.
(XEN) ACPI: IRQ2 used by override.
(XEN) ACPI: IRQ9 used by override.
(XEN) Enabling APIC mode: Flat. Using 1 I/O APICs
(XEN) ACPI: HPET id: 0x8086a201 base: 0xfed00000
(XEN) [VT-D]dmar.c:485: Host address width 36
(XEN) [VT-D]dmar.c:494: found ACPI_DMAR_DRHD
(XEN) [VT-D]dmar.c:349: dmaru->address = feb03000
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1b.0
(XEN) [VT-D]dmar.c:494: found ACPI_DMAR_DRHD
(XEN) [VT-D]dmar.c:349: dmaru->address = feb01000
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:2.0
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:2.1
(XEN) [VT-D]dmar.c:494: found ACPI_DMAR_DRHD
(XEN) [VT-D]dmar.c:349: dmaru->address = feb00000
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:3.0
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:3.2
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:3.3
(XEN) [VT-D]dmar.c:494: found ACPI_DMAR_DRHD
(XEN) [VT-D]dmar.c:349: dmaru->address = feb02000
(XEN) [VT-D]dmar.c:358: found INCLUDE_ALL
(XEN) [VT-D]dmar.c:498: found ACPI_DMAR_RMRR
(XEN) [VT-D]dmar.c:401: RMRR address range not in reserved memory base fc226c00
end = fc2273ff; iommu_inclusive_mapping=1 parameter may be needed.
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1d.0
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1d.1
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1d.2
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1d.7
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1a.0
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1a.1
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1a.2
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:1a.7
(XEN) [VT-D]dmar.c:498: found ACPI_DMAR_RMRR
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:2.0
(XEN) [VT-D]dmar.c:300: found endpoint: bdf = 0:2.1
(XEN) Intel VT-d DMAR tables have been parsed.
(XEN) Using ACPI (MADT) for SMP configuration information
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Initializing CPU#0
(XEN) Detected 2394.058 MHz processor.
(XEN) CPU: L1 I cache: 32K, L1 D cache: 32K
(XEN) CPU: L2 cache: 3072K
(XEN) CPU: Physical Processor ID: 0
(XEN) CPU: Processor Core ID: 0
(XEN) VMX: Supported advanced features:
(XEN) - APIC MMIO access virtualisation
(XEN) - APIC TPR shadow
(XEN) - Virtual NMI
(XEN) - MSR direct-access bitmap
(XEN) HVM: VMX enabled
(XEN) Intel machine check reporting enabled on CPU#0.
(XEN) mce_init: init bank1
(XEN) mce_init: init bank2
(XEN) mce_init: init bank3
(XEN) mce_init: init bank4
(XEN) mce_init: init bank5
(XEN) CPU0: Thermal monitoring enabled (TM2)
(XEN) CMCI: CPU0 has no CMCI support
(XEN) CPU0: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz stepping 06
(XEN) Booting processor 1/1 eip 8c000
(XEN) Initializing CPU#1
(XEN) CPU: L1 I cache: 32K, L1 D cache: 32K
(XEN) CPU: L2 cache: 3072K
(XEN) CPU: Physical Processor ID: 0
(XEN) CPU: Processor Core ID: 1
(XEN) Intel machine check reporting enabled on CPU#1.
(XEN) mce_init: init bank1
(XEN) mce_init: init bank2
(XEN) mce_init: init bank4
(XEN) mce_init: init bank5
(XEN) CPU1: Thermal monitoring enabled (TM2)
(XEN) CMCI: CPU1 has no CMCI support
(XEN) CPU1: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz stepping 06
(XEN) Total of 2 processors activated.
(XEN) ENABLING IO-APIC IRQs
(XEN) -> Using new ACK method
(XEN) ..TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
(XEN) checking TSC synchronization across 2 CPUs: passed.
(XEN) Platform timer is 14.318MHz HPET
(XEN) Brought up 2 CPUs
(XEN) microcode.c:73:d32767 microcode: CPU1 resumed
(XEN) [VT-D]iommu.c:1761: DMAR: Forcing write-buffer flush
(XEN) Intel VT-d Snoop Control not supported.
(XEN) Intel VT-d DMA Passthrough not supported.
(XEN) Intel VT-d Queued Invalidation not supported.
(XEN) Intel VT-d Interrupt Remapping not supported.
(XEN) I/O virtualisation enabled
(XEN) I/O virtualisation for PV guests disabled
(XEN) HPET: 4 timers in total, 0 timers will be used for broadcast
(XEN) ACPI sleep modes: S3
(XEN) mcheck_poll: Machine check polling timer started.
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:0.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:2.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:2.1
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:3.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:19.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1a.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1a.1
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1a.2
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1a.7
(XEN) [VT-D]iommu.c:1245:d32767 domain_context_mapping:PCIe: bdf = 0:1b.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1d.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1d.1
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1d.2
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1d.7
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1f.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1f.2
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf = 0:1f.3
(XEN) [VT-D]iommu.c:1245:d32767 domain_context_mapping:PCIe: bdf = 3:0.0
(XEN) [VT-D]iommu.c:1252:d32767 domain_context_mapping:PCI: bdf
It looks like some kind of a problem in Xen IOMMU code, no? Anyone has any
clue regarding this?
Thanks,
Tom
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Keir Fraser
2009-May-24 11:43 UTC
Re: [Xen-devel] Booting Xen 3.4 with iommu=1 causes boot to hang
On 24/05/2009 12:09, "Tom Rotenberg" <tom.rotenberg@gmail.com> wrote:> It looks like some kind of a problem in Xen IOMMU code, no? Anyone has any > clue regarding this?There are plenty of broken BIOSes out there that don''t correctly support VT-d. Try adding iommu_inclusive_mapping as an extra Xen boot parameter -- this workaround is often successful. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
wei zhou
2009-May-24 11:58 UTC
Re: [Xen-devel] Booting Xen 3.4 with iommu=1 causes boot to hang
Hi Keir :
"iommu_inclusive_mapping" ? I will try . Did the xen-3.4.0
version
have much more features to surpport graphic pass through? I am working on
the PCIE graphic pass through test. Could this work done without modifing
the source code? Just throuhing some configuriation works .
2009/5/24 Keir Fraser <keir.fraser@eu.citrix.com>
> On 24/05/2009 12:09, "Tom Rotenberg"
<tom.rotenberg@gmail.com> wrote:
>
> > It looks like some kind of a problem in Xen IOMMU code, no? Anyone has
> any
> > clue regarding this?
>
> There are plenty of broken BIOSes out there that don''t correctly
support
> VT-d. Try adding iommu_inclusive_mapping as an extra Xen boot parameter --
> this workaround is often successful.
>
> -- Keir
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xensource.com
> http://lists.xensource.com/xen-devel
>
--
Best regards !
Wei Zhou
E-mail: weizhou.sir@gmail.com
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Tom Rotenberg
2009-May-24 12:31 UTC
Re: [Xen-devel] Booting Xen 3.4 with iommu=1 causes boot to hang
Keir, Just tried it, and it works like a charm. Thanks!! (P.S. If it''s relevant for anyone - i tested it on Lenovo T400). Tom 2009/5/24 Keir Fraser <keir.fraser@eu.citrix.com>> On 24/05/2009 12:09, "Tom Rotenberg" <tom.rotenberg@gmail.com> wrote: > > > It looks like some kind of a problem in Xen IOMMU code, no? Anyone has > any > > clue regarding this? > > There are plenty of broken BIOSes out there that don''t correctly support > VT-d. Try adding iommu_inclusive_mapping as an extra Xen boot parameter -- > this workaround is often successful. > > -- Keir > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel