http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1569
Summary: [VT-d] NIC assignment with MSI may fail to work in guest
on Corei7 Platform
Product: Xen
Version: unstable
Platform: All
OS/Version: Linux
Status: NEW
Severity: major
Priority: P1
Component: Hypervisor
AssignedTo: xen-bugs@xxxxxxxxxxxxxxxxxxx
ReportedBy: jiajun.xu@xxxxxxxxx
Environment:
------------
Service Arch (ia32/ia32e/IA64): ia32e
Guest Arch (ia32/ia32e/IA64): ia32e
Guest OS Type (Linux/Windows): Linux
Change Set: 20844
Hardware: Core i7
Other:
xen-changeset: 20844:ca0759a08057
pvops git:
commit 60e0545e9649b08dd8ef5f2b991930049c40537e
Merge: b5624ab... 444c982...
Author: Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>
ioemu git:
commit a0066d08514ecfec34c717c7184250e95519f39c
Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Date: Thu Jan 14 18:27:13 2010 +0000
Bug detailed description:
--------------------------
NIC assignment to guest with MSI enabled may fail to work. The issue does not
occur each time but reboot guest several times will reproduce it. Device
assignment with pci=nomsi option has no such issue. The two NICs on
Gulftown-HEDT both have the same issue.
Since the bug does not occur each time, I can not make sure which old c/s is
the workable one.
xm dmesg log:
############
(XEN) HVM13: HVM Loader
(XEN) HVM13: Detected Xen v4.0.0-rc2-pre
(XEN) HVM13: CPU speed is 2400 MHz
(XEN) irq.c:243: Dom13 PCI link 0 changed 0 -> 5
(XEN) HVM13: PCI-ISA link 0 routed to IRQ5
(XEN) irq.c:243: Dom13 PCI link 1 changed 0 -> 10
(XEN) HVM13: PCI-ISA link 1 routed to IRQ10
(XEN) irq.c:243: Dom13 PCI link 2 changed 0 -> 11
(XEN) HVM13: PCI-ISA link 2 routed to IRQ11
(XEN) irq.c:243: Dom13 PCI link 3 changed 0 -> 5
(XEN) HVM13: PCI-ISA link 3 routed to IRQ5
(XEN) HVM13: pci dev 01:3 INTA->IRQ10
(XEN) HVM13: pci dev 03:0 INTA->IRQ5
(XEN) HVM13: pci dev 04:0 INTA->IRQ5
(XEN) HVM13: pci dev 05:0 INTA->IRQ10
(XEN) HVM13: pci dev 02:0 bar 10 size 02000000: f0000008
(XEN) HVM13: pci dev 03:0 bar 14 size 01000000: f2000008
(XEN) HVM13: pci dev 04:0 bar 10 size 00020000: f3000000
(XEN) domctl.c:990:d0 memory_map:add: gfn=f3000 mfn=d3d00 nr_mfns=20
(XEN) HVM13: pci dev 05:0 bar 10 size 00020000: f3020000
(XEN) domctl.c:990:d0 memory_map:add: gfn=f3020 mfn=d3c20 nr_mfns=20
(XEN) domctl.c:990:d0 memory_map:add: gfn=f3040 mfn=d3c00 nr_mfns=20
(XEN) HVM13: pci dev 05:0 bar 14 size 00020000: f3040000
(XEN) HVM13: pci dev 05:0 bar 30 size 00020000: f3060000
(XEN) HVM13: pci dev 02:0 bar 14 size 00001000: f3080000
(XEN) domctl.c:990:d0 memory_map:add: gfn=f3081 mfn=d3d23 nr_mfns=1
(XEN) HVM13: pci dev 04:0 bar 14 size 00001000: f3081000
(XEN) HVM13: pci dev 03:0 bar 10 size 00000100: 0000c001
(XEN) HVM13: pci dev 04:0 bar 18 size 00000020: 0000c101
(XEN) domctl.c:1046:d0 ioport_map:add f_gport=c100 f_mport=7100 np=20
(XEN) HVM13: pci dev 05:0 bar 18 size 00000020: 0000c121
(XEN) domctl.c:1046:d0 ioport_map:add f_gport=c120 f_mport=5000 np=20
(XEN) HVM13: pci dev 01:1 bar 20 size 00000010: 0000c141
(XEN) HVM13: Multiprocessor initialisation:
(XEN) HVM13: - CPU0 ... 36-bit phys ... fixed MTRRs ... var MTRRs [2/8] ...
done.
(XEN) HVM13: - CPU1 ... 36-bit phys ... fixed MTRRs ... var MTRRs [2/8] ...
done.
(XEN) HVM13: Testing HVM environment:
(XEN) HVM13: - REP INSB across page boundaries ... passed
(XEN) HVM13: - GS base MSRs and SWAPGS ... passed
(XEN) HVM13: Passed 2 of 2 tests
(XEN) HVM13: Writing SMBIOS tables ...
(XEN) HVM13: Loading ROMBIOS ...
(XEN) HVM13: 9628 bytes of ROMBIOS high-memory extensions:
(XEN) HVM13: Relocating to 0xfc000000-0xfc00259c ... done
(XEN) HVM13: Creating MP tables ...
(XEN) HVM13: Loading Cirrus VGABIOS ...
(XEN) HVM13: Loading ACPI ...
(XEN) HVM13: - Lo data: 000ea020-000ea04f
(XEN) HVM13: - Hi data: fc002800-fc01887f
(XEN) HVM13: vm86 TSS at fc018c00
(XEN) HVM13: BIOS map:
(XEN) HVM13: c0000-c8fff: VGA BIOS
(XEN) HVM13: eb000-eb177: SMBIOS tables
(XEN) HVM13: f0000-fffff: Main BIOS
(XEN) HVM13: Invoking ROMBIOS ...
(XEN) HVM13: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $
(XEN) stdvga.c:147:d13 entering stdvga and caching modes
(XEN) HVM13: VGABios $Id: vgabios.c,v 1.67 2008/01/27 09:44:12 vruppert Exp $
(XEN) HVM13: Bochs BIOS - build: 06/23/99
(XEN) HVM13: $Revision: 1.221 $ $Date: 2008/12/07 17:32:29 $
(XEN) HVM13: Options: apmbios pcibios eltorito PMM
(XEN) HVM13:
(XEN) HVM13: ata0-0: PCHS=10402/16/63 translation=lba LCHS=652/255/63
(XEN) HVM13: ata0 master: QEMU HARDDISK ATA-7 Hard-Disk (5120 MBytes)
(XEN) HVM13: ata0-1: PCHS=40/16/32 translation=none LCHS=40/16/32
(XEN) HVM13: ata0 slave: QEMU HARDDISK ATA-7 Hard-Disk ( 10 MBytes)
(XEN) HVM13: ata1 master: QEMU DVD-ROM ATAPI-4 CD-Rom/DVD-Rom
(XEN) HVM13: IDE time out
(XEN) HVM13:
(XEN) HVM13:
(XEN) HVM13:
(XEN) HVM13: Press F12 for boot menu.
(XEN) HVM13:
(XEN) HVM13: Booting from Hard Disk...
(XEN) HVM13: Booting from 0000:7c00
(XEN) HVM13: int13_harddisk: function 41, unmapped device for ELDL=82
(XEN) HVM13: int13_harddisk: function 08, unmapped device for ELDL=82
(XEN) HVM13: *** int 15h function AX=00c0, BX=0000 not yet supported!
(XEN) HVM13: *** int 15h function AX=ec00, BX=0002 not yet supported!
(XEN) HVM13: KBD: unsupported int 16h function 03
(XEN) HVM13: int13_harddisk: function 02, unmapped device for ELDL=82
(XEN) HVM13: int13_harddisk: function 41, unmapped device for ELDL=82
(XEN) domctl.c:1070:d0 ioport_map:remove f_gport=c100 f_mport=7100 np=20
(XEN) domctl.c:1046:d0 ioport_map:add f_gport=c100 f_mport=7100 np=20
(XEN) domctl.c:1070:d0 ioport_map:remove f_gport=c120 f_mport=5000 np=20
(XEN) domctl.c:1046:d0 ioport_map:add f_gport=c120 f_mport=5000 np=20
(XEN) irq.c:243: Dom13 PCI link 0 changed 5 -> 0
(XEN) irq.c:243: Dom13 PCI link 1 changed 10 -> 0
(XEN) irq.c:243: Dom13 PCI link 2 changed 11 -> 0
(XEN) irq.c:243: Dom13 PCI link 3 changed 5 -> 0
(XEN) io.c:327:d0 pt_irq_destroy_bind_vtd: machine_gsi=55 guest_gsi=32,
device=4, intx=0.
(XEN) io.c:382:d0 XEN_DOMCTL_irq_unmapping: m_irq = 0x37 device = 0x4 intx =
0x0
(XEN) [VT-D]io.c:302:d0 VT-d irq bind: m_irq = 14 device = 4 intx = 0
(XEN) io.c:327:d0 pt_irq_destroy_bind_vtd: machine_gsi=54 guest_gsi=36,
device=5, intx=0.
(XEN) io.c:382:d0 XEN_DOMCTL_irq_unmapping: m_irq = 0x36 device = 0x5 intx =
0x0
(XEN) [VT-D]io.c:302:d0 VT-d irq bind: m_irq = 10 device = 5 intx = 0
############
qemu log:
############
domid: 13
qemu: the number of cpus is 2
qemu: the avail cpu bitmap is 3
Strip off blktap sub-type prefix to /share/xvs/var/img.vmxVTD_ASS2_02_1 (drv
'qcow')
Watching /local/domain/0/device-model/13/logdirty/cmd
Watching /local/domain/0/device-model/13/command
char device redirected to /dev/pts/6
qemu_map_cache_init nr_buckets = 10000 size 4194304
shared page at pfn feffd
buffered io page at pfn feffb
Guest uuid = 156053bd-690c-b3ee-e11a-47162fda55e0
Time offset set 6
populating video RAM at ff000000
mapping video RAM from ff000000
Register xen platform.
Done register platform.
platform_fixed_ioport: changed ro/rw state of ROM memory area. now is rw state.
xs_read(/local/domain/0/device-model/13/xen_extended_power_mgmt): read error
xs_read(): vncpasswd get error.
/vm/156053bd-690c-b3ee-e11a-47162fda55e0/vncpasswd.
medium change watch on `hdc' (index: 2):
I/O request not ready: 0, ptr: 0, port: 0, data: 0, count: 0, size: 0
Log-dirty: no command yet.
I/O request not ready: 0, ptr: 0, port: 0, data: 0, count: 0, size: 0
xs_read(/local/domain/13/log-throttling): read error
dm-command: hot insert pass-through pci dev
register_real_device: Assigning real physical device 00:19.0 ...
register_real_device: Enable MSI translation via per device option
register_real_device: Disable power management
pt_iomul_init: Error: pt_iomul_init can't open file /dev/xen/pci_iomul: No such
file or directory: 0x0:0x19.0x0
pt_register_regions: IO region registered (size=0x00020000
base_addr=0xd3d00000)
pt_register_regions: IO region registered (size=0x00001000
base_addr=0xd3d23000)
pt_register_regions: IO region registered (size=0x00000020
base_addr=0x00007101)
pt_msi_setup: msi mapped with pirq 37
pci_intx: intx=1
register_real_device: Real physical device 00:19.0 registered successfuly!
IRQ type = MSI-INTx
dm-command: hot insert pass-through pci dev
register_real_device: Assigning real physical device 02:00.0 ...
register_real_device: Enable MSI translation via per device option
register_real_device: Disable power management
pt_iomul_init: Error: pt_iomul_init can't open file /dev/xen/pci_iomul: No such
file or directory: 0x2:0x0.0x0
pt_register_regions: IO region registered (size=0x00020000
base_addr=0xd3c20000)
pt_register_regions: IO region registered (size=0x00020000
base_addr=0xd3c00000)
pt_register_regions: IO region registered (size=0x00000020
base_addr=0x00005001)
pt_register_regions: Expansion ROM registered (size=0x00020000
base_addr=0xd3e00000)
pt_msi_setup: msi mapped with pirq 36
pci_intx: intx=1
register_real_device: Real physical device 02:00.0 registered successfuly!
IRQ type = MSI-INTx
cirrus vga map change while on lfb mode
pt_iomem_map: e_phys=f3000000 maddr=d3d00000 type=0 len=131072 index=0
first_map=1
pt_iomem_map: e_phys=f3020000 maddr=d3c20000 type=0 len=131072 index=0
first_map=1
pt_iomem_map: e_phys=f3040000 maddr=d3c00000 type=0 len=131072 index=1
first_map=1
pt_iomem_map: e_phys=f3081000 maddr=d3d23000 type=0 len=4096 index=1
first_map=1
pt_ioport_map: e_phys=c100 pio_base=7100 len=32 index=2 first_map=1
pt_ioport_map: e_phys=c120 pio_base=5000 len=32 index=2 first_map=1
mapping vram to f0000000 - f0400000
platform_fixed_ioport: changed ro/rw state of ROM memory area. now is rw state.
platform_fixed_ioport: changed ro/rw state of ROM memory area. now is ro state.
pt_ioport_map: e_phys=ffff pio_base=7100 len=32 index=2 first_map=0
pt_ioport_map: e_phys=c100 pio_base=7100 len=32 index=2 first_map=0
pt_pci_write_config: Warning: Guest attempt to set address to unused Base
Address Register. [00:04.0][Offset:30h][Length:4]
pt_ioport_map: e_phys=ffff pio_base=5000 len=32 index=2 first_map=0
pt_ioport_map: e_phys=c120 pio_base=5000 len=32 index=2 first_map=0
pt_msgctrl_reg_write: guest enabling MSI, disable MSI-INTx translation
pci_intx: intx=1
pt_msi_update: Update msi with pirq 37 gvec b9 gflags 0
pt_msgctrl_reg_write: guest enabling MSI, disable MSI-INTx translation
pci_intx: intx=1
pt_msi_update: Update msi with pirq 36 gvec c9 gflags 0
pt_msi_update: Update msi with pirq 37 gvec b9 gflags 2
pt_msi_update: Update msi with pirq 36 gvec c9 gflags 2
############
--
Configure bugmail:
http://bugzilla.xensource.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
_______________________________________________
Xen-bugs mailing list
Xen-bugs@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-bugs
|