From: suravee suthikulpanit <suravee.suthikulpanit@amd.com>
To: Jan Beulich <JBeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
Jacob Shin <jacob.shin@amd.com>,
xiantao.zhang@intel.com, xen-devel <xen-devel@lists.xen.org>
Subject: Re: [PATCH 1/6] AMD IOMMU: allocate IRTE entries instead of using a static mapping
Date: Wed, 24 Apr 2013 16:52:07 -0500 [thread overview]
Message-ID: <51785407.1000901@amd.com> (raw)
In-Reply-To: <5177FB7802000078000D0566@nat28.tlf.novell.com>
[-- Attachment #1: Type: text/plain, Size: 1341 bytes --]
On 04/24/2013 08:34 AM, Jan Beulich wrote:
>>>> On 23.04.13 at 17:06, Suravee Suthikulanit <suravee.suthikulpanit@amd.com> wrote:
>> On 4/23/2013 8:21 AM, Suravee Suthikulanit wrote:
>>> I am now reproducing the issue with the USB devices not working with
>>> this patch again. I'll continue to investigate more.
>>>
>>> Suravee
>> Ok, I have more update on the issue. Bellow, I include the output from
>> "xl debug-key i". It is showing several IRQ having the same vector "b0".
>> This is not the case when booting with the xen w/o the patch.
> Right, and I spotted a bug in the respective code, but I can't
> readily connect that bug to the behavior you observed (i.e. I
> can't explain why the bad vector would be the same all the time).
>
> Nevertheless, attached a fixed version of the first patch of
> the most recent series - let's see how much of a difference this
> makes.
>
> Jan
>
Jan,
I have finally root cause the issue. Here are the two patches that should help fixing the issue.
The first patch fixes the issue with the mouse/keyboard not working while the second patch
add a debug-key to help dumping the IRTE which I used to debug the issue.
I have also include the xl dmesg from both "before" patching and "after" applying patch 1, 2 and the fixes.
These also include the output from debug keys "M,z,i,j"
Suravee
[-- Attachment #2: after.txt --]
[-- Type: text/plain, Size: 29503 bytes --]
__ __ _ _ _____ _ _ _
\ \/ /___ _ __ | || | |___ / _ _ _ __ ___| |_ __ _| |__ | | ___
\ // _ \ '_ \ | || |_ |_ \ __| | | | '_ \/ __| __/ _` | '_ \| |/ _ \
/ \ __/ | | | |__ _| ___) |__| |_| | | | \__ \ || (_| | |_) | | __/
/_/\_\___|_| |_| |_|(_)____/ \__,_|_| |_|___/\__\__,_|_.__/|_|\___|
(XEN) Xen version 4.3-unstable (root@) (gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2) debug=y Wed Apr 24 14:52:17 CDT 2013
(XEN) Latest ChangeSet: unavailable
(XEN) Bootloader: GRUB 2.00-7ubuntu11
(XEN) Command line: placeholder dom0_max_vcpus=2 dom0_vcpus_pin dom0_mem=4G,max:4G iommu=debug apic_verbosity=debug
(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 - 000000000009fc00 (usable)
(XEN) 000000000009fc00 - 00000000000a0000 (reserved)
(XEN) 00000000000e0000 - 0000000000100000 (reserved)
(XEN) 0000000000100000 - 00000000cea84000 (usable)
(XEN) 00000000cea84000 - 00000000ced5e000 (reserved)
(XEN) 00000000ced5e000 - 00000000cf0ae000 (ACPI NVS)
(XEN) 00000000cf0ae000 - 00000000cf5e4000 (reserved)
(XEN) 00000000cf5e4000 - 00000000cf5e5000 (usable)
(XEN) 00000000cf5e5000 - 00000000cf7eb000 (ACPI NVS)
(XEN) 00000000cf7eb000 - 00000000cfaa3000 (usable)
(XEN) 00000000cfaa3000 - 00000000cfdf6000 (reserved)
(XEN) 00000000cfdf6000 - 00000000cfe00000 (usable)
(XEN) 00000000fec00000 - 00000000fec01000 (reserved)
(XEN) 00000000fec10000 - 00000000fec11000 (reserved)
(XEN) 00000000fed00000 - 00000000fed01000 (reserved)
(XEN) 00000000fed40000 - 00000000fed45000 (reserved)
(XEN) 00000000fed80000 - 00000000fed90000 (reserved)
(XEN) 00000000ff000000 - 0000000100000000 (reserved)
(XEN) 0000000100001000 - 000000042f000000 (usable)
(XEN) ACPI: RSDP 000F0490, 0024 (r2 ALASKA)
(XEN) ACPI: XSDT CF09B078, 006C (r1 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: FACP CF0A2A10, 010C (r5 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI Warning (tbfadt-0464): Optional field "Pm2ControlBlock" has zero address or length: 0000000000000000/1 [20070126]
(XEN) ACPI: DSDT CF09B178, 7897 (r2 ALASKA A M I 0 INTL 20051117)
(XEN) ACPI: FACS CF0AC080, 0040
(XEN) ACPI: APIC CF0A2B20, 0072 (r3 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: FPDT CF0A2B98, 0044 (r1 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: MCFG CF0A2BE0, 003C (r1 ALASKA A M I 1072009 MSFT 10013)
(XEN) ACPI: HPET CF0A2C20, 0038 (r1 ALASKA A M I 1072009 AMI 5)
(XEN) ACPI: SSDT CF0A2C58, 0D40 (r1 AMD POWERNOW 1 AMD 1)
(XEN) ACPI: SSDT CF0A3998, 04B7 (r2 AMD ALIB 1 MSFT 4000000)
(XEN) ACPI: IVRS CF0A3E50, 0070 (r2 AMD AMDIOMMU 1 AMD 0)
(XEN) ACPI: CRAT CF0A3EC0, 0398 (r1 AMD AGESA 1 AMD 1)
(XEN) System RAM: 16348MB (16741268kB)
(XEN) No NUMA configuration found
(XEN) Faking a node at 0000000000000000-000000042f000000
(XEN) Domain heap initialised
(XEN) found SMP MP-table at 000fd7e0
(XEN) DMI 2.7 present.
(XEN) APIC boot state is 'xapic'
(XEN) Using APIC driver default
(XEN) ACPI: PM-Timer IO Port: 0x808
(XEN) ACPI: v5 SLEEP INFO: control[0:0], status[0:0]
(XEN) ACPI: SLEEP INFO: pm1x_cnt[804,0], pm1x_evt[800,0]
(XEN) ACPI: 32/64X FACS address mismatch in FADT - cf0ac080/0000000000000000, using 32
(XEN) ACPI: wakeup_vec[cf0ac08c], vec_size[20]
(XEN) ACPI: Local APIC address 0xfee00000
(XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x10] enabled)
(XEN) Processor #16 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x11] enabled)
(XEN) Processor #17 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x12] enabled)
(XEN) Processor #18 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x13] enabled)
(XEN) Processor #19 5:0 APIC version 16
(XEN) ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1])
(XEN) ACPI: IOAPIC (id[0x05] address[0xfec00000] gsi_base[0])
(XEN) IOAPIC[0]: apic_id 5, version 33, 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 low 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: 0x10228210 base: 0xfed00000
(XEN) ERST table was not found
(XEN) Using ACPI (MADT) for SMP configuration information
(XEN) SMP: Allowing 4 CPUs (0 hotplug CPUs)
(XEN) mapped APIC to ffff82c3ffdfb000 (fee00000)
(XEN) mapped IOAPIC to ffff82c3ffdfa000 (fec00000)
(XEN) IRQ limits: 24 GSI, 760 MSI/MSI-X
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Detected 3293.945 MHz processor.
(XEN) Initing memory sharing.
(XEN) xstate_init: using cntxt_size: 0x3c0 and states: 0x4000000000000007
(XEN) AMD Fam15h machine check reporting enabled
(XEN) PCI: MCFG configuration 0: base e0000000 segment 0000 buses 00 - ff
(XEN) PCI: Not using MCFG for segment 0000 bus 00-ff
(XEN) AMD-Vi: Found MSI capability block at 0x54
(XEN) AMD-Vi: ACPI Table:
(XEN) AMD-Vi: Signature IVRS
(XEN) AMD-Vi: Length 0x70
(XEN) AMD-Vi: Revision 0x2
(XEN) AMD-Vi: CheckSum 0xb2
(XEN) AMD-Vi: OEM_Id AMD
(XEN) AMD-Vi: OEM_Table_Id AMDIOMMU
(XEN) AMD-Vi: OEM_Revision 0x1
(XEN) AMD-Vi: Creator_Id AMD
(XEN) AMD-Vi: Creator_Revision 0
(XEN) AMD-Vi: IVRS Block: type 0x10 flags 0xfe len 0x40 id 0x2
(XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0x8 flags 0
(XEN) AMD-Vi: Dev_Id Range: 0x8 -> 0xfffe
(XEN) AMD-Vi: IVHD Device Entry: type 0x43 id 0x200 flags 0
(XEN) AMD-Vi: Dev_Id Range: 0x200 -> 0x2ff alias 0xa4
(XEN) AMD-Vi: IVHD Device Entry: type 0 id 0 flags 0
(XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0
(XEN) AMD-Vi: IVHD Special: 0000:00:14.0 variety 0x2 handle 0
(XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0xd7
(XEN) AMD-Vi: IVHD Special: 0000:00:14.0 variety 0x1 handle 0x5
(XEN) AMD-Vi: IOMMU Extended Features:
(XEN) - Prefetch Pages Command
(XEN) - Peripheral Page Service Request
(XEN) - Guest Translation
(XEN) - Invalidate All Command
(XEN) AMD-Vi: PPR Log Enabled.
(XEN) AMD-Vi: Guest Translation Enabled.
(XEN) AMD-Vi: IOMMU 0 Enabled.
(XEN) I/O virtualisation enabled
(XEN) - Dom0 mode: Relaxed
(XEN) Interrupt remapping enabled
(XEN) Getting VERSION: 80050010
(XEN) Getting VERSION: 80050010
(XEN) Getting ID: 10000000
(XEN) Getting LVT0: 700
(XEN) Getting LVT1: 400
(XEN) enabled ExtINT on CPU#0
(XEN) ENABLING IO-APIC IRQs
(XEN) -> Using new ACK method
(XEN) init IO_APIC IRQs
(XEN) IO-APIC (apicid-pin) 5-0, 5-16, 5-17, 5-18, 5-19, 5-20, 5-21, 5-22, 5-23 not connected.
(XEN) ..TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
(XEN) number of MP IRQ sources: 15.
(XEN) number of IO-APIC #5 registers: 24.
(XEN) testing the IO APIC.......................
(XEN) IO APIC #5......
(XEN) .... register #00: 05000000
(XEN) ....... : physical APIC id: 05
(XEN) ....... : Delivery Type: 0
(XEN) ....... : LTS : 0
(XEN) .... register #01: 00178021
(XEN) ....... : max redirection entries: 0017
(XEN) ....... : PRQ implemented: 1
(XEN) ....... : IO APIC version: 0021
(XEN) .... register #02: 05000000
(XEN) ....... : arbitration: 05
(XEN) .... register #03: 05018021
(XEN) ....... : Boot DT : 1
(XEN) .... IRQ redirection table:
(XEN) NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
(XEN) 00 000 00 1 0 0 0 0 0 0 00
(XEN) 01 001 01 0 0 0 0 0 1 1 30
(XEN) 02 001 01 0 0 0 0 0 1 1 F0
(XEN) 03 001 01 0 0 0 0 0 1 1 38
(XEN) 04 001 01 0 0 0 0 0 1 1 40
(XEN) 05 001 01 0 0 0 0 0 1 1 48
(XEN) 06 001 01 0 0 0 0 0 1 1 50
(XEN) 07 001 01 0 0 0 0 0 1 1 58
(XEN) 08 001 01 0 0 0 0 0 1 1 60
(XEN) 09 001 01 1 1 0 1 0 1 1 68
(XEN) 0a 001 01 0 0 0 0 0 1 1 70
(XEN) 0b 001 01 0 0 0 0 0 1 1 78
(XEN) 0c 001 01 0 0 0 0 0 1 1 88
(XEN) 0d 001 01 0 0 0 0 0 1 1 90
(XEN) 0e 001 01 0 0 0 0 0 1 1 98
(XEN) 0f 001 01 0 0 0 0 0 1 1 A0
(XEN) 10 000 00 1 0 0 0 0 0 0 00
(XEN) 11 000 00 1 0 0 0 0 0 0 00
(XEN) 12 000 00 1 0 0 0 0 0 0 00
(XEN) 13 000 00 1 0 0 0 0 0 0 00
(XEN) 14 000 00 1 0 0 0 0 0 0 00
(XEN) 15 000 00 1 0 0 0 0 0 0 00
(XEN) 16 000 00 1 0 0 0 0 0 0 00
(XEN) 17 000 00 1 0 0 0 0 0 0 00
(XEN) Using vector-based indexing
(XEN) IRQ to pin mappings:
(XEN) IRQ240 -> 0:2
(XEN) IRQ48 -> 0:1
(XEN) IRQ56 -> 0:3
(XEN) IRQ64 -> 0:4
(XEN) IRQ72 -> 0:5
(XEN) IRQ80 -> 0:6
(XEN) IRQ88 -> 0:7
(XEN) IRQ96 -> 0:8
(XEN) IRQ104 -> 0:9
(XEN) IRQ112 -> 0:10
(XEN) IRQ120 -> 0:11
(XEN) IRQ136 -> 0:12
(XEN) IRQ144 -> 0:13
(XEN) IRQ152 -> 0:14
(XEN) IRQ160 -> 0:15
(XEN) .................................... done.
(XEN) Using local APIC timer interrupts.
(XEN) calibrating APIC timer ...
(XEN) ..... CPU clock speed is 3293.9124 MHz.
(XEN) ..... host bus clock speed is 99.8154 MHz.
(XEN) ..... bus_scale = 0x6637
(XEN) Using standard rendezvous
(XEN) Platform timer is 14.318MHz HPET
(XEN) Allocated console ring of 32 KiB.
(XEN) HVM: ASIDs enabled.
(XEN) SVM: Supported advanced features:
(XEN) - Nested Page Tables (NPT)
(XEN) - Last Branch Record (LBR) Virtualisation
(XEN) - Next-RIP Saved on #VMEXIT
(XEN) - VMCB Clean Bits
(XEN) - DecodeAssists
(XEN) - Pause-Intercept Filter
(XEN) - TSC Rate MSR
(XEN) HVM: SVM enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB, 1GB
(XEN) masked ExtINT on CPU#1
(XEN) microcode: CPU1 collect_cpu_info: patch_id=0x600100e
(XEN) masked ExtINT on CPU#2
(XEN) microcode: CPU2 collect_cpu_info: patch_id=0x600100e
(XEN) masked ExtINT on CPU#3
(XEN) microcode: CPU3 collect_cpu_info: patch_id=0x600100e
(XEN) Brought up 4 CPUs
(XEN) ACPI sleep modes: S3
(XEN) MCA: Use hw thresholding to adjust polling frequency
(XEN) mcheck_poll: Machine check polling timer started.
(XEN) *** LOADING DOMAIN 0 ***
(XEN) elf_parse_binary: phdr: paddr=0x1000000 memsz=0xae7000
(XEN) elf_parse_binary: phdr: paddr=0x1c00000 memsz=0xdd0e8
(XEN) elf_parse_binary: phdr: paddr=0x1cde000 memsz=0x14680
(XEN) elf_parse_binary: phdr: paddr=0x1cf3000 memsz=0x65c000
(XEN) elf_parse_binary: memory: 0x1000000 -> 0x234f000
(XEN) elf_xen_parse_note: GUEST_OS = "linux"
(XEN) elf_xen_parse_note: GUEST_VERSION = "2.6"
(XEN) elf_xen_parse_note: XEN_VERSION = "xen-3.0"
(XEN) elf_xen_parse_note: VIRT_BASE = 0xffffffff80000000
(XEN) elf_xen_parse_note: ENTRY = 0xffffffff81cf3210
(XEN) elf_xen_parse_note: HYPERCALL_PAGE = 0xffffffff81001000
(XEN) elf_xen_parse_note: FEATURES = "!writable_page_tables|pae_pgdir_above_4gb"
(XEN) elf_xen_parse_note: PAE_MODE = "yes"
(XEN) elf_xen_parse_note: LOADER = "generic"
(XEN) elf_xen_parse_note: unknown xen elf note (0xd)
(XEN) elf_xen_parse_note: SUSPEND_CANCEL = 0x1
(XEN) elf_xen_parse_note: HV_START_LOW = 0xffff800000000000
(XEN) elf_xen_parse_note: PADDR_OFFSET = 0x0
(XEN) elf_xen_addr_calc_check: addresses:
(XEN) virt_base = 0xffffffff80000000
(XEN) elf_paddr_offset = 0x0
(XEN) virt_offset = 0xffffffff80000000
(XEN) virt_kstart = 0xffffffff81000000
(XEN) virt_kend = 0xffffffff8234f000
(XEN) virt_entry = 0xffffffff81cf3210
(XEN) p2m_base = 0xffffffffffffffff
(XEN) Xen kernel: 64-bit, lsb, compat32
(XEN) Dom0 kernel: 64-bit, PAE, lsb, paddr 0x1000000 -> 0x234f000
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN) Dom0 alloc.: 0000000238000000->000000023c000000 (1022084 pages to be allocated)
(XEN) Init. ramdisk: 000000042c884000->000000042efffc00
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN) Loaded kernel: ffffffff81000000->ffffffff8234f000
(XEN) Init. ramdisk: ffffffff8234f000->ffffffff84acac00
(XEN) Phys-Mach map: ffffffff84acb000->ffffffff852cb000
(XEN) Start info: ffffffff852cb000->ffffffff852cb4b4
(XEN) Page tables: ffffffff852cc000->ffffffff852f9000
(XEN) Boot stack: ffffffff852f9000->ffffffff852fa000
(XEN) TOTAL: ffffffff80000000->ffffffff85400000
(XEN) ENTRY ADDRESS: ffffffff81cf3210
(XEN) Dom0 has maximum 2 VCPUs
(XEN) elf_load_binary: phdr 0 at 0xffffffff81000000 -> 0xffffffff81ae7000
(XEN) elf_load_binary: phdr 1 at 0xffffffff81c00000 -> 0xffffffff81cdd0e8
(XEN) elf_load_binary: phdr 2 at 0xffffffff81cde000 -> 0xffffffff81cf2680
(XEN) elf_load_binary: phdr 3 at 0xffffffff81cf3000 -> 0xffffffff81dcd000
(XEN) AMD-Vi: No iommu for device 0000:00:00.0
(XEN) setup 0000:00:00.0 for d0 failed (-19)
(XEN) AMD-Vi: No iommu for device 0000:00:00.2
(XEN) setup 0000:00:00.2 for d0 failed (-19)
(XEN) AMD-Vi: Setup I/O page table: device id = 0x10, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x80, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x81, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x88, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x90, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x92, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x98, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x9a, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa0, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa2, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa3, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa4, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa5, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa7, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa8, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa9, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc0, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc1, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc2, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc3, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc4, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc5, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x100, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x101, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x300, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x400, root table = 0x23e818000, domain = 0, paging mode = 3
(XEN) Scrubbing Free RAM: ....................................................................................................................done.
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Std. Loglevel: All
(XEN) Guest Loglevel: All
(XEN) Xen is relinquishing VGA console.
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input to Xen)
(XEN) Freed 272kB init memory.
(XEN) IOAPIC[0]: Set PCI routing entry (5-9 -> 0x68 -> IRQ 9 Mode:1 Active:1)
(XEN) traps.c:2495:d0 Domain attempted WRMSR 00000000c0010201 from 0x0000000000000000 to 0x000000000000abcd.
(XEN) PCI add device 0000:00:00.0
(XEN) PCI add device 0000:00:00.2
(XEN) PCI add device 0000:00:02.0
(XEN) PCI add device 0000:00:10.0
(XEN) PCI add device 0000:00:10.1
(XEN) PCI add device 0000:00:11.0
(XEN) PCI add device 0000:00:12.0
(XEN) PCI add device 0000:00:12.2
(XEN) PCI add device 0000:00:13.0
(XEN) PCI add device 0000:00:13.2
(XEN) PCI add device 0000:00:14.0
(XEN) PCI add device 0000:00:14.2
(XEN) PCI add device 0000:00:14.3
(XEN) PCI add device 0000:00:14.4
(XEN) PCI add device 0000:00:14.5
(XEN) PCI add device 0000:00:14.7
(XEN) PCI add device 0000:00:15.0
(XEN) PCI add device 0000:00:15.1
(XEN) PCI add device 0000:00:18.0
(XEN) PCI add device 0000:00:18.1
(XEN) PCI add device 0000:00:18.2
(XEN) PCI add device 0000:00:18.3
(XEN) PCI add device 0000:00:18.4
(XEN) PCI add device 0000:00:18.5
(XEN) PCI add device 0000:01:00.0
(XEN) PCI add device 0000:01:00.1
(XEN) PCI add device 0000:03:00.0
(XEN) PCI add device 0000:04:00.0
(XEN) IOAPIC[0]: Set PCI routing entry (5-8 -> 0x60 -> IRQ 8 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-5 -> 0x48 -> IRQ 5 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-13 -> 0x90 -> IRQ 13 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-18 -> 0xa8 -> IRQ 18 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-16 -> 0xb0 -> IRQ 16 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-17 -> 0xb8 -> IRQ 17 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-19 -> 0xd8 -> IRQ 19 Mode:1 Active:1)
(XEN) MSI information:
(XEN) MSI 24 vec=28 fixed edge deassert phys cpu dest=00000001 mask=0/0/?
(XEN) MSI 25 vec=c0 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 26 vec=c8 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 27 vec=d0 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 28 vec=21 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI-X 29 vec=29 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 30 vec=31 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 31 vec=39 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 32 vec=41 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 33 vec=49 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 34 vec=51 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI 35 vec=59 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 36 vec=61 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 37 vec=69 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 38 vec=71 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) number of MP IRQ sources: 15.
(XEN) number of IO-APIC #5 registers: 24.
(XEN) testing the IO APIC.......................
(XEN) IO APIC #5......
(XEN) .... register #00: 05000000
(XEN) ....... : physical APIC id: 05
(XEN) ....... : Delivery Type: 0
(XEN) ....... : LTS : 0
(XEN) .... register #01: 00178021
(XEN) ....... : max redirection entries: 0017
(XEN) ....... : PRQ implemented: 1
(XEN) ....... : IO APIC version: 0021
(XEN) .... register #02: 05000000
(XEN) ....... : arbitration: 05
(XEN) .... register #03: 05018021
(XEN) ....... : Boot DT : 1
(XEN) .... IRQ redirection table:
(XEN) NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
(XEN) 00 000 00 1 0 0 0 0 0 0 00
(XEN) 01 001 01 0 0 0 0 0 1 1 30
(XEN) 02 001 01 0 0 0 0 0 1 1 F0
(XEN) 03 001 01 0 0 0 0 0 1 1 38
(XEN) 04 001 01 0 0 0 0 0 1 1 40
(XEN) 05 00F 0F 1 0 0 0 0 1 1 48
(XEN) 06 001 01 0 0 0 0 0 1 1 50
(XEN) 07 001 01 0 0 0 0 0 1 1 58
(XEN) 08 001 01 0 0 0 0 0 1 1 60
(XEN) 09 001 01 0 1 0 1 0 1 1 68
(XEN) 0a 001 01 0 0 0 0 0 1 1 70
(XEN) 0b 001 01 0 0 0 0 0 1 1 78
(XEN) 0c 001 01 0 0 0 0 0 1 1 88
(XEN) 0d 00F 0F 1 0 0 0 0 1 1 90
(XEN) 0e 001 01 0 0 0 0 0 1 1 98
(XEN) 0f 001 01 0 0 0 0 0 1 1 A0
(XEN) 10 001 01 0 1 0 1 0 1 1 B0
(XEN) 11 001 01 0 1 0 1 0 1 1 B8
(XEN) 12 001 01 0 1 0 1 0 1 1 A8
(XEN) 13 00F 0F 1 1 0 1 0 1 1 D8
(XEN) 14 000 00 1 0 0 0 0 0 0 00
(XEN) 15 000 00 1 0 0 0 0 0 0 00
(XEN) 16 000 00 1 0 0 0 0 0 0 00
(XEN) 17 000 00 1 0 0 0 0 0 0 00
(XEN) Using vector-based indexing
(XEN) IRQ to pin mappings:
(XEN) IRQ240 -> 0:2
(XEN) IRQ48 -> 0:1
(XEN) IRQ56 -> 0:3
(XEN) IRQ64 -> 0:4
(XEN) IRQ72 -> 0:5
(XEN) IRQ80 -> 0:6
(XEN) IRQ88 -> 0:7
(XEN) IRQ96 -> 0:8
(XEN) IRQ104 -> 0:9
(XEN) IRQ112 -> 0:10
(XEN) IRQ120 -> 0:11
(XEN) IRQ136 -> 0:12
(XEN) IRQ144 -> 0:13
(XEN) IRQ152 -> 0:14
(XEN) IRQ160 -> 0:15
(XEN) IRQ176 -> 0:16
(XEN) IRQ184 -> 0:17
(XEN) IRQ168 -> 0:18
(XEN) IRQ216 -> 0:19
(XEN) .................................... done.
(XEN) Guest interrupt information:
(XEN) IRQ: 0 affinity:1 vec:f0 type=IO-APIC-edge status=00000000 timer_interrupt+0/0x18a
(XEN) IRQ: 1 affinity:1 vec:30 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 3 affinity:1 vec:38 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 4 affinity:1 vec:40 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 5 affinity:f vec:48 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 6 affinity:1 vec:50 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 7 affinity:1 vec:58 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 8 affinity:1 vec:60 type=IO-APIC-edge status=00000010 in-flight=0 domain-list=0: 8(----),
(XEN) IRQ: 9 affinity:1 vec:68 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 9(----),
(XEN) IRQ: 10 affinity:1 vec:70 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 11 affinity:1 vec:78 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 12 affinity:1 vec:88 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 13 affinity:f vec:90 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 14 affinity:1 vec:98 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 15 affinity:1 vec:a0 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 16 affinity:1 vec:b0 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 16(----),
(XEN) IRQ: 17 affinity:1 vec:b8 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 17(----),
(XEN) IRQ: 18 affinity:1 vec:a8 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 18(----),
(XEN) IRQ: 19 affinity:f vec:d8 type=IO-APIC-level status=00000002 mapped, unbound
(XEN) IRQ: 24 affinity:1 vec:28 type=AMD-IOMMU-MSI status=00000000 iommu_interrupt_handler+0/0x57
(XEN) IRQ: 25 affinity:1 vec:c0 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:279(----),
(XEN) IRQ: 26 affinity:1 vec:c8 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:278(----),
(XEN) IRQ: 27 affinity:1 vec:d0 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:277(----),
(XEN) IRQ: 28 affinity:1 vec:21 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:276(----),
(XEN) IRQ: 29 affinity:1 vec:29 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:275(----),
(XEN) IRQ: 30 affinity:1 vec:31 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:274(----),
(XEN) IRQ: 31 affinity:1 vec:39 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:273(----),
(XEN) IRQ: 32 affinity:1 vec:41 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:272(----),
(XEN) IRQ: 33 affinity:1 vec:49 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:271(----),
(XEN) IRQ: 34 affinity:1 vec:51 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:270(----),
(XEN) IRQ: 35 affinity:1 vec:59 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:269(----),
(XEN) IRQ: 36 affinity:1 vec:61 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:268(----),
(XEN) IRQ: 37 affinity:1 vec:69 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:267(----),
(XEN) IRQ: 38 affinity:1 vec:71 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:266(----),
(XEN) IO-APIC interrupt information:
(XEN) IRQ 0 Vec240:
(XEN) Apic 0x00, Pin 2: vec=f0 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 1 Vec 48:
(XEN) Apic 0x00, Pin 1: vec=30 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 3 Vec 56:
(XEN) Apic 0x00, Pin 3: vec=38 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 4 Vec 64:
(XEN) Apic 0x00, Pin 4: vec=40 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 5 Vec 72:
(XEN) Apic 0x00, Pin 5: vec=48 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=1 dest_id:15
(XEN) IRQ 6 Vec 80:
(XEN) Apic 0x00, Pin 6: vec=50 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 7 Vec 88:
(XEN) Apic 0x00, Pin 7: vec=58 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 8 Vec 96:
(XEN) Apic 0x00, Pin 8: vec=60 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 9 Vec104:
(XEN) Apic 0x00, Pin 9: vec=68 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 10 Vec112:
(XEN) Apic 0x00, Pin 10: vec=70 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 11 Vec120:
(XEN) Apic 0x00, Pin 11: vec=78 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 12 Vec136:
(XEN) Apic 0x00, Pin 12: vec=88 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 13 Vec144:
(XEN) Apic 0x00, Pin 13: vec=90 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=1 dest_id:15
(XEN) IRQ 14 Vec152:
(XEN) Apic 0x00, Pin 14: vec=98 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 15 Vec160:
(XEN) Apic 0x00, Pin 15: vec=a0 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 16 Vec176:
(XEN) Apic 0x00, Pin 16: vec=b0 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 17 Vec184:
(XEN) Apic 0x00, Pin 17: vec=b8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 18 Vec168:
(XEN) Apic 0x00, Pin 18: vec=a8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 19 Vec216:
(XEN) Apic 0x00, Pin 19: vec=d8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=1 dest_id:15
(XEN) --- Dumping Per-dev IOMMU Interrupt Remapping Table ---
(XEN) BDF: 10, IRTE[ 0] : 0xc00145
(XEN) BDF: 80, IRTE[ 0] : 0x290145
(XEN) BDF: 80, IRTE[ 1] : 0x310145
(XEN) BDF: 80, IRTE[ 2] : 0x390145
(XEN) BDF: 81, IRTE[ 0] : 0x410145
(XEN) BDF: 81, IRTE[ 1] : 0x490145
(XEN) BDF: 81, IRTE[ 2] : 0x510145
(XEN) BDF: 88, IRTE[ 0] : 0x210145
(XEN) BDF: a0, IRTE[ 1] : 0x300145
(XEN) BDF: a0, IRTE[ 2] : 0xf00145
(XEN) BDF: a0, IRTE[ 3] : 0x380145
(XEN) BDF: a0, IRTE[ 4] : 0x400145
(XEN) BDF: a0, IRTE[ 5] : 0x480f44
(XEN) BDF: a0, IRTE[ 6] : 0x500145
(XEN) BDF: a0, IRTE[ 7] : 0x580145
(XEN) BDF: a0, IRTE[ 8] : 0x600145
(XEN) BDF: a0, IRTE[ 9] : 0x680145
(XEN) BDF: a0, IRTE[ 10] : 0x700145
(XEN) BDF: a0, IRTE[ 11] : 0x780145
(XEN) BDF: a0, IRTE[ 12] : 0x880145
(XEN) BDF: a0, IRTE[ 13] : 0x900f44
(XEN) BDF: a0, IRTE[ 14] : 0x980145
(XEN) BDF: a0, IRTE[ 15] : 0xa00145
(XEN) BDF: a0, IRTE[ 16] : 0xb00145
(XEN) BDF: a0, IRTE[ 17] : 0xb80145
(XEN) BDF: a0, IRTE[ 18] : 0xa80145
(XEN) BDF: a0, IRTE[ 19] : 0xd80f44
(XEN) BDF: a8, IRTE[ 0] : 0xc80145
(XEN) BDF: a9, IRTE[ 0] : 0xd00145
(XEN) BDF:100, IRTE[ 0] : 0x610145
(XEN) BDF:101, IRTE[ 0] : 0x690145
(XEN) BDF:300, IRTE[ 0] : 0x590145
(XEN) BDF:400, IRTE[ 0] : 0x710145
(XEN) --- Dumping Shared IOMMU Interrupt Remapping Table ---
[-- Attachment #3: before.txt --]
[-- Type: text/plain, Size: 29504 bytes --]
__ __ _ _ _____ _ _ _
\ \/ /___ _ __ | || | |___ / _ _ _ __ ___| |_ __ _| |__ | | ___
\ // _ \ '_ \ | || |_ |_ \ __| | | | '_ \/ __| __/ _` | '_ \| |/ _ \
/ \ __/ | | | |__ _| ___) |__| |_| | | | \__ \ || (_| | |_) | | __/
/_/\_\___|_| |_| |_|(_)____/ \__,_|_| |_|___/\__\__,_|_.__/|_|\___|
(XEN) Xen version 4.3-unstable (root@) (gcc (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2) debug=y Wed Apr 24 14:53:13 CDT 2013
(XEN) Latest ChangeSet: unavailable
(XEN) Bootloader: GRUB 2.00-7ubuntu11
(XEN) Command line: placeholder dom0_max_vcpus=2 dom0_vcpus_pin dom0_mem=4G,max:4G iommu=debug apic_verbosity=debug
(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 - 000000000009fc00 (usable)
(XEN) 000000000009fc00 - 00000000000a0000 (reserved)
(XEN) 00000000000e0000 - 0000000000100000 (reserved)
(XEN) 0000000000100000 - 00000000cea84000 (usable)
(XEN) 00000000cea84000 - 00000000ced5e000 (reserved)
(XEN) 00000000ced5e000 - 00000000cf0ae000 (ACPI NVS)
(XEN) 00000000cf0ae000 - 00000000cf5e4000 (reserved)
(XEN) 00000000cf5e4000 - 00000000cf5e5000 (usable)
(XEN) 00000000cf5e5000 - 00000000cf7eb000 (ACPI NVS)
(XEN) 00000000cf7eb000 - 00000000cfaa3000 (usable)
(XEN) 00000000cfaa3000 - 00000000cfdf6000 (reserved)
(XEN) 00000000cfdf6000 - 00000000cfe00000 (usable)
(XEN) 00000000fec00000 - 00000000fec01000 (reserved)
(XEN) 00000000fec10000 - 00000000fec11000 (reserved)
(XEN) 00000000fed00000 - 00000000fed01000 (reserved)
(XEN) 00000000fed40000 - 00000000fed45000 (reserved)
(XEN) 00000000fed80000 - 00000000fed90000 (reserved)
(XEN) 00000000ff000000 - 0000000100000000 (reserved)
(XEN) 0000000100001000 - 000000042f000000 (usable)
(XEN) ACPI: RSDP 000F0490, 0024 (r2 ALASKA)
(XEN) ACPI: XSDT CF09B078, 006C (r1 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: FACP CF0A2A10, 010C (r5 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI Warning (tbfadt-0464): Optional field "Pm2ControlBlock" has zero address or length: 0000000000000000/1 [20070126]
(XEN) ACPI: DSDT CF09B178, 7897 (r2 ALASKA A M I 0 INTL 20051117)
(XEN) ACPI: FACS CF0AC080, 0040
(XEN) ACPI: APIC CF0A2B20, 0072 (r3 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: FPDT CF0A2B98, 0044 (r1 ALASKA A M I 1072009 AMI 10013)
(XEN) ACPI: MCFG CF0A2BE0, 003C (r1 ALASKA A M I 1072009 MSFT 10013)
(XEN) ACPI: HPET CF0A2C20, 0038 (r1 ALASKA A M I 1072009 AMI 5)
(XEN) ACPI: SSDT CF0A2C58, 0D40 (r1 AMD POWERNOW 1 AMD 1)
(XEN) ACPI: SSDT CF0A3998, 04B7 (r2 AMD ALIB 1 MSFT 4000000)
(XEN) ACPI: IVRS CF0A3E50, 0070 (r2 AMD AMDIOMMU 1 AMD 0)
(XEN) ACPI: CRAT CF0A3EC0, 0398 (r1 AMD AGESA 1 AMD 1)
(XEN) System RAM: 16348MB (16741268kB)
(XEN) No NUMA configuration found
(XEN) Faking a node at 0000000000000000-000000042f000000
(XEN) Domain heap initialised
(XEN) found SMP MP-table at 000fd7e0
(XEN) DMI 2.7 present.
(XEN) APIC boot state is 'xapic'
(XEN) Using APIC driver default
(XEN) ACPI: PM-Timer IO Port: 0x808
(XEN) ACPI: v5 SLEEP INFO: control[0:0], status[0:0]
(XEN) ACPI: SLEEP INFO: pm1x_cnt[804,0], pm1x_evt[800,0]
(XEN) ACPI: 32/64X FACS address mismatch in FADT - cf0ac080/0000000000000000, using 32
(XEN) ACPI: wakeup_vec[cf0ac08c], vec_size[20]
(XEN) ACPI: Local APIC address 0xfee00000
(XEN) ACPI: LAPIC (acpi_id[0x01] lapic_id[0x10] enabled)
(XEN) Processor #16 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x02] lapic_id[0x11] enabled)
(XEN) Processor #17 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x03] lapic_id[0x12] enabled)
(XEN) Processor #18 5:0 APIC version 16
(XEN) ACPI: LAPIC (acpi_id[0x04] lapic_id[0x13] enabled)
(XEN) Processor #19 5:0 APIC version 16
(XEN) ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1])
(XEN) ACPI: IOAPIC (id[0x05] address[0xfec00000] gsi_base[0])
(XEN) IOAPIC[0]: apic_id 5, version 33, 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 low 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: 0x10228210 base: 0xfed00000
(XEN) ERST table was not found
(XEN) Using ACPI (MADT) for SMP configuration information
(XEN) SMP: Allowing 4 CPUs (0 hotplug CPUs)
(XEN) mapped APIC to ffff82c3ffdfb000 (fee00000)
(XEN) mapped IOAPIC to ffff82c3ffdfa000 (fec00000)
(XEN) IRQ limits: 24 GSI, 760 MSI/MSI-X
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Detected 3293.910 MHz processor.
(XEN) Initing memory sharing.
(XEN) xstate_init: using cntxt_size: 0x3c0 and states: 0x4000000000000007
(XEN) AMD Fam15h machine check reporting enabled
(XEN) PCI: MCFG configuration 0: base e0000000 segment 0000 buses 00 - ff
(XEN) PCI: Not using MCFG for segment 0000 bus 00-ff
(XEN) AMD-Vi: Found MSI capability block at 0x54
(XEN) AMD-Vi: ACPI Table:
(XEN) AMD-Vi: Signature IVRS
(XEN) AMD-Vi: Length 0x70
(XEN) AMD-Vi: Revision 0x2
(XEN) AMD-Vi: CheckSum 0xb2
(XEN) AMD-Vi: OEM_Id AMD
(XEN) AMD-Vi: OEM_Table_Id AMDIOMMU
(XEN) AMD-Vi: OEM_Revision 0x1
(XEN) AMD-Vi: Creator_Id AMD
(XEN) AMD-Vi: Creator_Revision 0
(XEN) AMD-Vi: IVRS Block: type 0x10 flags 0xfe len 0x40 id 0x2
(XEN) AMD-Vi: IVHD Device Entry: type 0x3 id 0x8 flags 0
(XEN) AMD-Vi: Dev_Id Range: 0x8 -> 0xfffe
(XEN) AMD-Vi: IVHD Device Entry: type 0x43 id 0x200 flags 0
(XEN) AMD-Vi: Dev_Id Range: 0x200 -> 0x2ff alias 0xa4
(XEN) AMD-Vi: IVHD Device Entry: type 0 id 0 flags 0
(XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0
(XEN) AMD-Vi: IVHD Special: 0000:00:14.0 variety 0x2 handle 0
(XEN) AMD-Vi: IVHD Device Entry: type 0x48 id 0 flags 0xd7
(XEN) AMD-Vi: IVHD Special: 0000:00:14.0 variety 0x1 handle 0x5
(XEN) AMD-Vi: IOMMU Extended Features:
(XEN) - Prefetch Pages Command
(XEN) - Peripheral Page Service Request
(XEN) - Guest Translation
(XEN) - Invalidate All Command
(XEN) AMD-Vi: PPR Log Enabled.
(XEN) AMD-Vi: Guest Translation Enabled.
(XEN) AMD-Vi: IOMMU 0 Enabled.
(XEN) AMD-Vi: Enabling per-device vector maps
(XEN) I/O virtualisation enabled
(XEN) - Dom0 mode: Relaxed
(XEN) Interrupt remapping enabled
(XEN) Getting VERSION: 80050010
(XEN) Getting VERSION: 80050010
(XEN) Getting ID: 10000000
(XEN) Getting LVT0: 700
(XEN) Getting LVT1: 400
(XEN) enabled ExtINT on CPU#0
(XEN) ENABLING IO-APIC IRQs
(XEN) -> Using new ACK method
(XEN) init IO_APIC IRQs
(XEN) IO-APIC (apicid-pin) 5-0, 5-16, 5-17, 5-18, 5-19, 5-20, 5-21, 5-22, 5-23 not connected.
(XEN) ..TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
(XEN) number of MP IRQ sources: 15.
(XEN) number of IO-APIC #5 registers: 24.
(XEN) testing the IO APIC.......................
(XEN) IO APIC #5......
(XEN) .... register #00: 05000000
(XEN) ....... : physical APIC id: 05
(XEN) ....... : Delivery Type: 0
(XEN) ....... : LTS : 0
(XEN) .... register #01: 00178021
(XEN) ....... : max redirection entries: 0017
(XEN) ....... : PRQ implemented: 1
(XEN) ....... : IO APIC version: 0021
(XEN) .... register #02: 05000000
(XEN) ....... : arbitration: 05
(XEN) .... register #03: 05018021
(XEN) ....... : Boot DT : 1
(XEN) .... IRQ redirection table:
(XEN) NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
(XEN) 00 000 00 1 0 0 0 0 0 0 00
(XEN) 01 001 01 0 0 0 0 0 1 1 30
(XEN) 02 001 01 0 0 0 0 0 1 1 F0
(XEN) 03 001 01 0 0 0 0 0 1 1 38
(XEN) 04 001 01 0 0 0 0 0 1 1 40
(XEN) 05 001 01 0 0 0 0 0 1 1 48
(XEN) 06 001 01 0 0 0 0 0 1 1 50
(XEN) 07 001 01 0 0 0 0 0 1 1 58
(XEN) 08 001 01 0 0 0 0 0 1 1 60
(XEN) 09 001 01 1 1 0 1 0 1 1 68
(XEN) 0a 001 01 0 0 0 0 0 1 1 70
(XEN) 0b 001 01 0 0 0 0 0 1 1 78
(XEN) 0c 001 01 0 0 0 0 0 1 1 88
(XEN) 0d 001 01 0 0 0 0 0 1 1 90
(XEN) 0e 001 01 0 0 0 0 0 1 1 98
(XEN) 0f 001 01 0 0 0 0 0 1 1 A0
(XEN) 10 000 00 1 0 0 0 0 0 0 00
(XEN) 11 000 00 1 0 0 0 0 0 0 00
(XEN) 12 000 00 1 0 0 0 0 0 0 00
(XEN) 13 000 00 1 0 0 0 0 0 0 00
(XEN) 14 000 00 1 0 0 0 0 0 0 00
(XEN) 15 000 00 1 0 0 0 0 0 0 00
(XEN) 16 000 00 1 0 0 0 0 0 0 00
(XEN) 17 000 00 1 0 0 0 0 0 0 00
(XEN) Using vector-based indexing
(XEN) IRQ to pin mappings:
(XEN) IRQ240 -> 0:2
(XEN) IRQ48 -> 0:1
(XEN) IRQ56 -> 0:3
(XEN) IRQ64 -> 0:4
(XEN) IRQ72 -> 0:5
(XEN) IRQ80 -> 0:6
(XEN) IRQ88 -> 0:7
(XEN) IRQ96 -> 0:8
(XEN) IRQ104 -> 0:9
(XEN) IRQ112 -> 0:10
(XEN) IRQ120 -> 0:11
(XEN) IRQ136 -> 0:12
(XEN) IRQ144 -> 0:13
(XEN) IRQ152 -> 0:14
(XEN) IRQ160 -> 0:15
(XEN) .................................... done.
(XEN) Using local APIC timer interrupts.
(XEN) calibrating APIC timer ...
(XEN) ..... CPU clock speed is 3293.8493 MHz.
(XEN) ..... host bus clock speed is 99.8136 MHz.
(XEN) ..... bus_scale = 0x6637
(XEN) Using standard rendezvous
(XEN) Platform timer is 14.318MHz HPET
(XEN) Allocated console ring of 32 KiB.
(XEN) HVM: ASIDs enabled.
(XEN) SVM: Supported advanced features:
(XEN) - Nested Page Tables (NPT)
(XEN) - Last Branch Record (LBR) Virtualisation
(XEN) - Next-RIP Saved on #VMEXIT
(XEN) - VMCB Clean Bits
(XEN) - DecodeAssists
(XEN) - Pause-Intercept Filter
(XEN) - TSC Rate MSR
(XEN) HVM: SVM enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB, 1GB
(XEN) masked ExtINT on CPU#1
(XEN) microcode: CPU1 collect_cpu_info: patch_id=0x600100e
(XEN) masked ExtINT on CPU#2
(XEN) microcode: CPU2 collect_cpu_info: patch_id=0x600100e
(XEN) masked ExtINT on CPU#3
(XEN) microcode: CPU3 collect_cpu_info: patch_id=0x600100e
(XEN) Brought up 4 CPUs
(XEN) ACPI sleep modes: S3
(XEN) MCA: Use hw thresholding to adjust polling frequency
(XEN) mcheck_poll: Machine check polling timer started.
(XEN) *** LOADING DOMAIN 0 ***
(XEN) elf_parse_binary: phdr: paddr=0x1000000 memsz=0xae7000
(XEN) elf_parse_binary: phdr: paddr=0x1c00000 memsz=0xdd0e8
(XEN) elf_parse_binary: phdr: paddr=0x1cde000 memsz=0x14680
(XEN) elf_parse_binary: phdr: paddr=0x1cf3000 memsz=0x65c000
(XEN) elf_parse_binary: memory: 0x1000000 -> 0x234f000
(XEN) elf_xen_parse_note: GUEST_OS = "linux"
(XEN) elf_xen_parse_note: GUEST_VERSION = "2.6"
(XEN) elf_xen_parse_note: XEN_VERSION = "xen-3.0"
(XEN) elf_xen_parse_note: VIRT_BASE = 0xffffffff80000000
(XEN) elf_xen_parse_note: ENTRY = 0xffffffff81cf3210
(XEN) elf_xen_parse_note: HYPERCALL_PAGE = 0xffffffff81001000
(XEN) elf_xen_parse_note: FEATURES = "!writable_page_tables|pae_pgdir_above_4gb"
(XEN) elf_xen_parse_note: PAE_MODE = "yes"
(XEN) elf_xen_parse_note: LOADER = "generic"
(XEN) elf_xen_parse_note: unknown xen elf note (0xd)
(XEN) elf_xen_parse_note: SUSPEND_CANCEL = 0x1
(XEN) elf_xen_parse_note: HV_START_LOW = 0xffff800000000000
(XEN) elf_xen_parse_note: PADDR_OFFSET = 0x0
(XEN) elf_xen_addr_calc_check: addresses:
(XEN) virt_base = 0xffffffff80000000
(XEN) elf_paddr_offset = 0x0
(XEN) virt_offset = 0xffffffff80000000
(XEN) virt_kstart = 0xffffffff81000000
(XEN) virt_kend = 0xffffffff8234f000
(XEN) virt_entry = 0xffffffff81cf3210
(XEN) p2m_base = 0xffffffffffffffff
(XEN) Xen kernel: 64-bit, lsb, compat32
(XEN) Dom0 kernel: 64-bit, PAE, lsb, paddr 0x1000000 -> 0x234f000
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN) Dom0 alloc.: 0000000238000000->000000023c000000 (1022084 pages to be allocated)
(XEN) Init. ramdisk: 000000042c884000->000000042efffc00
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN) Loaded kernel: ffffffff81000000->ffffffff8234f000
(XEN) Init. ramdisk: ffffffff8234f000->ffffffff84acac00
(XEN) Phys-Mach map: ffffffff84acb000->ffffffff852cb000
(XEN) Start info: ffffffff852cb000->ffffffff852cb4b4
(XEN) Page tables: ffffffff852cc000->ffffffff852f9000
(XEN) Boot stack: ffffffff852f9000->ffffffff852fa000
(XEN) TOTAL: ffffffff80000000->ffffffff85400000
(XEN) ENTRY ADDRESS: ffffffff81cf3210
(XEN) Dom0 has maximum 2 VCPUs
(XEN) elf_load_binary: phdr 0 at 0xffffffff81000000 -> 0xffffffff81ae7000
(XEN) elf_load_binary: phdr 1 at 0xffffffff81c00000 -> 0xffffffff81cdd0e8
(XEN) elf_load_binary: phdr 2 at 0xffffffff81cde000 -> 0xffffffff81cf2680
(XEN) elf_load_binary: phdr 3 at 0xffffffff81cf3000 -> 0xffffffff81dcd000
(XEN) AMD-Vi: No iommu for device 0000:00:00.0
(XEN) setup 0000:00:00.0 for d0 failed (-19)
(XEN) AMD-Vi: No iommu for device 0000:00:00.2
(XEN) setup 0000:00:00.2 for d0 failed (-19)
(XEN) AMD-Vi: Setup I/O page table: device id = 0x10, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x80, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x81, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x88, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x90, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x92, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x98, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x9a, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa0, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa2, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa3, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa4, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa5, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa7, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa8, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xa9, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc0, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc1, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc2, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc3, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc4, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0xc5, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x100, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x101, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x300, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) AMD-Vi: Setup I/O page table: device id = 0x400, root table = 0x23f7a7000, domain = 0, paging mode = 3
(XEN) Scrubbing Free RAM: ....................................................................................................................done.
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Std. Loglevel: All
(XEN) Guest Loglevel: All
(XEN) Xen is relinquishing VGA console.
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input to Xen)
(XEN) Freed 276kB init memory.
(XEN) IOAPIC[0]: Set PCI routing entry (5-9 -> 0x68 -> IRQ 9 Mode:1 Active:1)
(XEN) traps.c:2495:d0 Domain attempted WRMSR 00000000c0010201 from 0x0000000000000000 to 0x000000000000abcd.
(XEN) PCI add device 0000:00:00.0
(XEN) PCI add device 0000:00:00.2
(XEN) PCI add device 0000:00:02.0
(XEN) PCI add device 0000:00:10.0
(XEN) PCI add device 0000:00:10.1
(XEN) PCI add device 0000:00:11.0
(XEN) PCI add device 0000:00:12.0
(XEN) PCI add device 0000:00:12.2
(XEN) PCI add device 0000:00:13.0
(XEN) PCI add device 0000:00:13.2
(XEN) PCI add device 0000:00:14.0
(XEN) PCI add device 0000:00:14.2
(XEN) PCI add device 0000:00:14.3
(XEN) PCI add device 0000:00:14.4
(XEN) PCI add device 0000:00:14.5
(XEN) PCI add device 0000:00:14.7
(XEN) PCI add device 0000:00:15.0
(XEN) PCI add device 0000:00:15.1
(XEN) PCI add device 0000:00:18.0
(XEN) PCI add device 0000:00:18.1
(XEN) PCI add device 0000:00:18.2
(XEN) PCI add device 0000:00:18.3
(XEN) PCI add device 0000:00:18.4
(XEN) PCI add device 0000:00:18.5
(XEN) PCI add device 0000:01:00.0
(XEN) PCI add device 0000:01:00.1
(XEN) PCI add device 0000:03:00.0
(XEN) PCI add device 0000:04:00.0
(XEN) IOAPIC[0]: Set PCI routing entry (5-8 -> 0x60 -> IRQ 8 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-5 -> 0x48 -> IRQ 5 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-13 -> 0x90 -> IRQ 13 Mode:0 Active:0)
(XEN) IOAPIC[0]: Set PCI routing entry (5-18 -> 0xa8 -> IRQ 18 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-16 -> 0xb0 -> IRQ 16 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-17 -> 0xb8 -> IRQ 17 Mode:1 Active:1)
(XEN) IOAPIC[0]: Set PCI routing entry (5-19 -> 0xd8 -> IRQ 19 Mode:1 Active:1)
(XEN) MSI information:
(XEN) MSI 24 vec=28 fixed edge deassert phys cpu dest=00000001 mask=0/0/?
(XEN) MSI 25 vec=c0 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 26 vec=c8 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 27 vec=d0 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 28 vec=21 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI-X 29 vec=29 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 30 vec=31 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 31 vec=39 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 32 vec=41 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 33 vec=49 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI-X 34 vec=51 lowest edge assert log lowest dest=00000001 mask=1/0/0
(XEN) MSI 35 vec=59 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 36 vec=61 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 37 vec=69 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) MSI 38 vec=71 lowest edge assert log lowest dest=00000001 mask=0/1/?
(XEN) number of MP IRQ sources: 15.
(XEN) number of IO-APIC #5 registers: 24.
(XEN) testing the IO APIC.......................
(XEN) IO APIC #5......
(XEN) .... register #00: 05000000
(XEN) ....... : physical APIC id: 05
(XEN) ....... : Delivery Type: 0
(XEN) ....... : LTS : 0
(XEN) .... register #01: 00178021
(XEN) ....... : max redirection entries: 0017
(XEN) ....... : PRQ implemented: 1
(XEN) ....... : IO APIC version: 0021
(XEN) .... register #02: 05000000
(XEN) ....... : arbitration: 05
(XEN) .... register #03: 05018021
(XEN) ....... : Boot DT : 1
(XEN) .... IRQ redirection table:
(XEN) NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
(XEN) 00 000 00 1 0 0 0 0 0 0 00
(XEN) 01 001 01 0 0 0 0 0 1 1 30
(XEN) 02 001 01 0 0 0 0 0 1 1 F0
(XEN) 03 001 01 0 0 0 0 0 1 1 38
(XEN) 04 001 01 0 0 0 0 0 1 1 40
(XEN) 05 00F 0F 1 0 0 0 0 1 1 48
(XEN) 06 001 01 0 0 0 0 0 1 1 50
(XEN) 07 001 01 0 0 0 0 0 1 1 58
(XEN) 08 001 01 0 0 0 0 0 1 1 60
(XEN) 09 001 01 0 1 0 1 0 1 1 68
(XEN) 0a 001 01 0 0 0 0 0 1 1 70
(XEN) 0b 001 01 0 0 0 0 0 1 1 78
(XEN) 0c 001 01 0 0 0 0 0 1 1 88
(XEN) 0d 00F 0F 1 0 0 0 0 1 1 90
(XEN) 0e 001 01 0 0 0 0 0 1 1 98
(XEN) 0f 001 01 0 0 0 0 0 1 1 A0
(XEN) 10 001 01 0 1 0 1 0 1 1 B0
(XEN) 11 001 01 0 1 0 1 0 1 1 B8
(XEN) 12 001 01 0 1 0 1 0 1 1 A8
(XEN) 13 00F 0F 1 1 0 1 0 1 1 D8
(XEN) 14 000 00 1 0 0 0 0 0 0 00
(XEN) 15 000 00 1 0 0 0 0 0 0 00
(XEN) 16 000 00 1 0 0 0 0 0 0 00
(XEN) 17 000 00 1 0 0 0 0 0 0 00
(XEN) Using vector-based indexing
(XEN) IRQ to pin mappings:
(XEN) IRQ240 -> 0:2
(XEN) IRQ48 -> 0:1
(XEN) IRQ56 -> 0:3
(XEN) IRQ64 -> 0:4
(XEN) IRQ72 -> 0:5
(XEN) IRQ80 -> 0:6
(XEN) IRQ88 -> 0:7
(XEN) IRQ96 -> 0:8
(XEN) IRQ104 -> 0:9
(XEN) IRQ112 -> 0:10
(XEN) IRQ120 -> 0:11
(XEN) IRQ136 -> 0:12
(XEN) IRQ144 -> 0:13
(XEN) IRQ152 -> 0:14
(XEN) IRQ160 -> 0:15
(XEN) IRQ176 -> 0:16
(XEN) IRQ184 -> 0:17
(XEN) IRQ168 -> 0:18
(XEN) IRQ216 -> 0:19
(XEN) .................................... done.
(XEN) Guest interrupt information:
(XEN) IRQ: 0 affinity:1 vec:f0 type=IO-APIC-edge status=00000000 timer_interrupt+0/0x18a
(XEN) IRQ: 1 affinity:1 vec:30 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 3 affinity:1 vec:38 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 4 affinity:1 vec:40 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 5 affinity:f vec:48 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 6 affinity:1 vec:50 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 7 affinity:1 vec:58 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 8 affinity:1 vec:60 type=IO-APIC-edge status=00000010 in-flight=0 domain-list=0: 8(----),
(XEN) IRQ: 9 affinity:1 vec:68 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 9(----),
(XEN) IRQ: 10 affinity:1 vec:70 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 11 affinity:1 vec:78 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 12 affinity:1 vec:88 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 13 affinity:f vec:90 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 14 affinity:1 vec:98 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 15 affinity:1 vec:a0 type=IO-APIC-edge status=00000002 mapped, unbound
(XEN) IRQ: 16 affinity:1 vec:b0 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 16(----),
(XEN) IRQ: 17 affinity:1 vec:b8 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 17(----),
(XEN) IRQ: 18 affinity:1 vec:a8 type=IO-APIC-level status=00000010 in-flight=0 domain-list=0: 18(----),
(XEN) IRQ: 19 affinity:f vec:d8 type=IO-APIC-level status=00000002 mapped, unbound
(XEN) IRQ: 24 affinity:1 vec:28 type=AMD-IOMMU-MSI status=00000000 iommu_interrupt_handler+0/0x57
(XEN) IRQ: 25 affinity:1 vec:c0 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:279(----),
(XEN) IRQ: 26 affinity:1 vec:c8 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:278(----),
(XEN) IRQ: 27 affinity:1 vec:d0 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:277(----),
(XEN) IRQ: 28 affinity:1 vec:21 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:276(----),
(XEN) IRQ: 29 affinity:1 vec:29 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:275(----),
(XEN) IRQ: 30 affinity:1 vec:31 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:274(----),
(XEN) IRQ: 31 affinity:1 vec:39 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:273(----),
(XEN) IRQ: 32 affinity:1 vec:41 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:272(----),
(XEN) IRQ: 33 affinity:1 vec:49 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:271(----),
(XEN) IRQ: 34 affinity:1 vec:51 type=PCI-MSI/-X status=00000010 in-flight=0 domain-list=0:270(----),
(XEN) IRQ: 35 affinity:1 vec:59 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:269(----),
(XEN) IRQ: 36 affinity:1 vec:61 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:268(----),
(XEN) IRQ: 37 affinity:1 vec:69 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:267(----),
(XEN) IRQ: 38 affinity:1 vec:71 type=PCI-MSI status=00000010 in-flight=0 domain-list=0:266(----),
(XEN) IO-APIC interrupt information:
(XEN) IRQ 0 Vec240:
(XEN) Apic 0x00, Pin 2: vec=f0 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 1 Vec 48:
(XEN) Apic 0x00, Pin 1: vec=30 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 3 Vec 56:
(XEN) Apic 0x00, Pin 3: vec=38 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 4 Vec 64:
(XEN) Apic 0x00, Pin 4: vec=40 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 5 Vec 72:
(XEN) Apic 0x00, Pin 5: vec=48 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=1 dest_id:15
(XEN) IRQ 6 Vec 80:
(XEN) Apic 0x00, Pin 6: vec=50 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 7 Vec 88:
(XEN) Apic 0x00, Pin 7: vec=58 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 8 Vec 96:
(XEN) Apic 0x00, Pin 8: vec=60 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 9 Vec104:
(XEN) Apic 0x00, Pin 9: vec=68 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 10 Vec112:
(XEN) Apic 0x00, Pin 10: vec=70 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 11 Vec120:
(XEN) Apic 0x00, Pin 11: vec=78 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 12 Vec136:
(XEN) Apic 0x00, Pin 12: vec=88 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 13 Vec144:
(XEN) Apic 0x00, Pin 13: vec=90 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=1 dest_id:15
(XEN) IRQ 14 Vec152:
(XEN) Apic 0x00, Pin 14: vec=98 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 15 Vec160:
(XEN) Apic 0x00, Pin 15: vec=a0 delivery=LoPri dest=L status=0 polarity=0 irr=0 trig=E mask=0 dest_id:1
(XEN) IRQ 16 Vec176:
(XEN) Apic 0x00, Pin 16: vec=b0 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 17 Vec184:
(XEN) Apic 0x00, Pin 17: vec=b8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 18 Vec168:
(XEN) Apic 0x00, Pin 18: vec=a8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=0 dest_id:1
(XEN) IRQ 19 Vec216:
(XEN) Apic 0x00, Pin 19: vec=d8 delivery=LoPri dest=L status=0 polarity=1 irr=0 trig=L mask=1 dest_id:15
(XEN) --- Dumping Per-dev IOMMU Interrupt Remapping Table ---
(XEN) BDF: 10, IRTE[ 448] : 0xc00145
(XEN) BDF: 80, IRTE[ 297] : 0x290145
(XEN) BDF: 80, IRTE[ 305] : 0x310145
(XEN) BDF: 80, IRTE[ 313] : 0x390145
(XEN) BDF: 81, IRTE[ 321] : 0x410145
(XEN) BDF: 81, IRTE[ 329] : 0x490145
(XEN) BDF: 81, IRTE[ 337] : 0x510145
(XEN) BDF: 88, IRTE[ 289] : 0x210145
(XEN) BDF: a0, IRTE[ 304] : 0x300145
(XEN) BDF: a0, IRTE[ 312] : 0x380145
(XEN) BDF: a0, IRTE[ 320] : 0x400145
(XEN) BDF: a0, IRTE[ 328] : 0x480f45
(XEN) BDF: a0, IRTE[ 336] : 0x500145
(XEN) BDF: a0, IRTE[ 344] : 0x580145
(XEN) BDF: a0, IRTE[ 352] : 0x600145
(XEN) BDF: a0, IRTE[ 360] : 0x680145
(XEN) BDF: a0, IRTE[ 368] : 0x700145
(XEN) BDF: a0, IRTE[ 376] : 0x780145
(XEN) BDF: a0, IRTE[ 392] : 0x880145
(XEN) BDF: a0, IRTE[ 400] : 0x900f45
(XEN) BDF: a0, IRTE[ 408] : 0x980145
(XEN) BDF: a0, IRTE[ 416] : 0xa00145
(XEN) BDF: a0, IRTE[ 424] : 0xa80145
(XEN) BDF: a0, IRTE[ 432] : 0xb00145
(XEN) BDF: a0, IRTE[ 440] : 0xb80145
(XEN) BDF: a0, IRTE[ 496] : 0xf00145
(XEN) BDF: a8, IRTE[ 456] : 0xc80145
(XEN) BDF: a9, IRTE[ 464] : 0xd00145
(XEN) BDF:100, IRTE[ 353] : 0x610145
(XEN) BDF:101, IRTE[ 369] : 0x710145
(XEN) BDF:300, IRTE[ 345] : 0x590145
(XEN) BDF:400, IRTE[ 361] : 0x690145
(XEN) --- Dumping Shared IOMMU Interrupt Remapping Table ---
[-- Attachment #4: 0001-Fix-IOAPIC-interrupt-routing-issue-introduced-in-the.patch --]
[-- Type: text/x-patch, Size: 4036 bytes --]
>From 1c63734faeda247441f37ea3efd8629501eff79d Mon Sep 17 00:00:00 2001
From: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Date: Wed, 24 Apr 2013 15:06:02 -0500
Subject: [PATCH 1/2] Fix IOAPIC interrupt routing issue introduced in the new
IRTE indexing scheme
With the new IRTE indexing scheme introduced in the patch
http://lists.xen.org/archives/html/xen-devel/2013-04/msg02442.html
IOAPIC routing entry (RTE) which has "mask" bit being sett does not
get setup in the IOMMU interrupt remapping table. This causes the
IOMMU to block interrupt from these devices. This patch fixes the
issue by allocating IOMMU remapping entry even though and use the
mask bit to "enable" or "disable" the IRTE.
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
---
xen/drivers/passthrough/amd/iommu_intr.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/xen/drivers/passthrough/amd/iommu_intr.c b/xen/drivers/passthrough/amd/iommu_intr.c
index a46064e..ed9ae79 100644
--- a/xen/drivers/passthrough/amd/iommu_intr.c
+++ b/xen/drivers/passthrough/amd/iommu_intr.c
@@ -75,9 +75,9 @@ static void free_intremap_entry(int seg, int bdf, int offset)
}
static void update_intremap_entry(u32* entry, u8 vector, u8 int_type,
- u8 dest_mode, u8 dest)
+ u8 dest_mode, u8 dest, u8 mask)
{
- set_field_in_reg_u32(IOMMU_CONTROL_ENABLED, 0,
+ set_field_in_reg_u32((mask == 0)? IOMMU_CONTROL_ENABLED: IOMMU_CONTROL_DISABLED, 0,
INT_REMAP_ENTRY_REMAPEN_MASK,
INT_REMAP_ENTRY_REMAPEN_SHIFT, entry);
set_field_in_reg_u32(IOMMU_CONTROL_DISABLED, *entry,
@@ -156,7 +156,9 @@ static int update_intremap_entry_from_ioapic(
* Low half of incoming RTE is already in remapped format,
* so need to recover vector and delivery mode from IRTE.
*/
- ASSERT(get_rte_index(rte) == offset);
+ if ((vector != 0) && (delivery_mode != 0))
+ ASSERT(get_rte_index(rte) == offset);
+
vector = get_field_from_reg_u32(*entry,
INT_REMAP_ENTRY_VECTOR_MASK,
INT_REMAP_ENTRY_VECTOR_SHIFT);
@@ -164,7 +166,7 @@ static int update_intremap_entry_from_ioapic(
INT_REMAP_ENTRY_INTTYPE_MASK,
INT_REMAP_ENTRY_INTTYPE_SHIFT);
}
- update_intremap_entry(entry, vector, delivery_mode, dest_mode, dest);
+ update_intremap_entry(entry, vector, delivery_mode, dest_mode, dest, rte->mask);
spin_unlock_irqrestore(lock, flags);
@@ -198,8 +200,6 @@ int __init amd_iommu_setup_ioapic_remapping(void)
for ( pin = 0; pin < nr_ioapic_entries[apic]; pin++ )
{
rte = __ioapic_read_entry(apic, pin, 1);
- if ( rte.mask == 1 )
- continue;
/* get device id of ioapic devices */
bdf = ioapic_sbdf[IO_APIC_ID(apic)].bdf;
@@ -225,7 +225,7 @@ int __init amd_iommu_setup_ioapic_remapping(void)
BUG_ON(offset >= INTREMAP_ENTRIES);
entry = get_intremap_entry(iommu->seg, req_id, offset);
update_intremap_entry(entry, vector,
- delivery_mode, dest_mode, dest);
+ delivery_mode, dest_mode, dest, rte.mask);
spin_unlock_irqrestore(lock, flags);
set_rte_index(&rte, offset);
@@ -240,6 +240,7 @@ int __init amd_iommu_setup_ioapic_remapping(void)
}
}
}
+
return 0;
}
@@ -397,7 +398,7 @@ static int update_intremap_entry_from_msi_msg(
}
entry = get_intremap_entry(iommu->seg, req_id, offset);
- update_intremap_entry(entry, vector, delivery_mode, dest_mode, dest);
+ update_intremap_entry(entry, vector, delivery_mode, dest_mode, dest, 0);
spin_unlock_irqrestore(lock, flags);
*data = (msg->data & ~(INTREMAP_ENTRIES - 1)) | offset;
--
1.7.10.4
[-- Attachment #5: 0002-Add-debug-key-for-dumping-IOMMU-IRTE.patch --]
[-- Type: text/x-patch, Size: 2896 bytes --]
>From e5ad3120b67dda98a77d0ae05773ceeb2be1c92f Mon Sep 17 00:00:00 2001
From: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Date: Wed, 24 Apr 2013 16:40:09 -0500
Subject: [PATCH 2/2] Add debug-key for dumping IOMMU IRTE.
Adding debug-key "j" to allow IOMMU IRTE dumping
Example: xl debug-key j
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
---
xen/drivers/passthrough/amd/iommu_intr.c | 57 ++++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/xen/drivers/passthrough/amd/iommu_intr.c b/xen/drivers/passthrough/amd/iommu_intr.c
index ed9ae79..ab16a5c 100644
--- a/xen/drivers/passthrough/amd/iommu_intr.c
+++ b/xen/drivers/passthrough/amd/iommu_intr.c
@@ -23,6 +23,7 @@
#include <asm/amd-iommu.h>
#include <asm/hvm/svm/amd-iommu-proto.h>
#include <asm/io_apic.h>
+#include <xen/keyhandler.h>
#define INTREMAP_TABLE_ORDER 1
#define INTREMAP_LENGTH 0xB
@@ -34,6 +35,14 @@ void *shared_intremap_table;
unsigned long *shared_intremap_inuse;
static DEFINE_SPINLOCK(shared_intremap_lock);
+static void _dump_amd_iommu_intremap_tables(unsigned char key);
+
+static struct keyhandler dump_iommu_intremap_table = {
+ .diagnostic = 0,
+ .u.fn = _dump_amd_iommu_intremap_tables,
+ .desc = "dump AMD iommu intremap tables"
+};
+
static spinlock_t* get_intremap_lock(int seg, int req_id)
{
return (amd_iommu_perdev_intremap ?
@@ -241,6 +250,8 @@ int __init amd_iommu_setup_ioapic_remapping(void)
}
}
+ register_keyhandler('j', &dump_iommu_intremap_table);
+
return 0;
}
@@ -554,3 +565,49 @@ int __init amd_setup_hpet_msi(struct msi_desc *msi_desc)
return 0;
}
+
+static void _dump_intremap_table (u32 bdf, u32 *table)
+{
+ u32 count;
+
+ if ( table == NULL ) {
+ return;
+ }
+
+ for (count = 0; count < INTREMAP_ENTRIES; count++) {
+ if (*(table+count) == 0)
+ continue;
+ printk(" BDF:%3x, IRTE[%4u] : 0x%x\n", bdf, count, *(table+count));
+ }
+}
+
+static int __dump_iommu_intremap_mapping(u16 seg, struct ivrs_mappings *ivrs_mapping)
+{
+ unsigned long flags;
+
+ if ( ivrs_mapping == NULL )
+ return 0;
+
+ spin_lock_irqsave(&(ivrs_mapping->intremap_lock), flags);
+
+ _dump_intremap_table(ivrs_mapping->dte_requestor_id, ivrs_mapping->intremap_table);
+
+ spin_unlock_irqrestore(&(ivrs_mapping->intremap_lock), flags);
+
+ return 0;
+}
+
+static void _dump_amd_iommu_intremap_tables(unsigned char key)
+{
+ unsigned long flags;
+
+ printk("--- Dumping Per-dev IOMMU Interrupt Remapping Table ---\n");
+
+ iterate_ivrs_entries(__dump_iommu_intremap_mapping);
+
+ printk("--- Dumping Shared IOMMU Interrupt Remapping Table ---\n");
+
+ spin_lock_irqsave(&shared_intremap_lock, flags);
+ _dump_intremap_table(-1, shared_intremap_table);
+ spin_unlock_irqrestore(&shared_intremap_lock, flags);
+}
--
1.7.10.4
[-- Attachment #6: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2013-04-24 21:52 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-19 10:50 [PATCH 0/6] x86/IOMMU: multi-vector MSI Jan Beulich
2013-04-19 10:57 ` [PATCH 1/6] AMD IOMMU: allocate IRTE entries instead of using a static mapping Jan Beulich
2013-04-23 13:21 ` Suravee Suthikulanit
2013-04-23 15:06 ` Suravee Suthikulanit
2013-04-24 13:34 ` Jan Beulich
2013-04-24 21:52 ` suravee suthikulpanit [this message]
2013-04-26 10:39 ` Jan Beulich
2013-04-26 17:13 ` Suravee Suthikulanit
2013-04-29 7:31 ` Jan Beulich
2013-04-29 7:33 ` Suthikulpanit, Suravee
2013-04-29 7:42 ` Jan Beulich
2013-04-19 10:57 ` [PATCH 2/6] AMD IOMMU: untie remap and vector maps Jan Beulich
2013-04-19 10:58 ` [PATCH 3/6] VT-d: enable for multi‑vector MSI Jan Beulich
2013-04-19 10:59 ` [PATCH 4/6] AMD IOMMU: enable for multi-vector MSI Jan Beulich
2013-04-19 10:59 ` [PATCH 5/6] x86: enable " Jan Beulich
2013-04-23 0:55 ` Suravee Suthikulanit
2013-04-23 6:26 ` Jan Beulich
2013-04-26 21:16 ` Suravee Suthikulanit
2013-04-19 11:00 ` [PATCH 6/6] pciif: add multi-vector-MSI command Jan Beulich
2013-04-19 14:48 ` [PATCH 0/6] x86/IOMMU: multi-vector MSI Jan Beulich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51785407.1000901@amd.com \
--to=suravee.suthikulpanit@amd.com \
--cc=JBeulich@suse.com \
--cc=jacob.shin@amd.com \
--cc=konrad.wilk@oracle.com \
--cc=xen-devel@lists.xen.org \
--cc=xiantao.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.