[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] VGA Passthrough on Xen Unstable Progress
Hello all, Did some more brute force testing and made some progress. The installer now boots and I can install windows 7 (but the installed windows 7 doesn't boot and the installer produces a black screen at the end). It appears there are a few problems: 1. Enabling HAP has been the cause of all the reboots in my previous emails. Disabling HAP fixes that. 2. The maximum amount of memory I can allocate to the guest is 2824MB. Any more and weird things start to happen. Not sure if these are useful, but here's what happens with different amount of memory allocated: <2824, bootable into installer> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0100000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000300 2MB PAGES: 0x000000000000037f 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25369 <2825, seems bootable, cursor appears but severe display corruption> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0100000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000300 2MB PAGES: 0x000000000000037f 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25486 <"Progressive" display corruptions are mostly white in colour and slowly increases row by row from top to bottom, ends when the windows logo starts to appear> <2826, stuck at pulsating logo, "progressive" display corruption at top> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0200000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000200 2MB PAGES: 0x0000000000000380 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25601 <2827, stuck at pulsating logo, "progressive" display corruption at top + display corruption at bottom> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0300000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000300 2MB PAGES: 0x0000000000000380 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25727 <2828, stuck at pulsating logo, "progressive" display corruption at center> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0400000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000200 2MB PAGES: 0x0000000000000381 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25835 <2829, stuck at pulsating logo, "progressive" display corruption at center> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0500000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000300 2MB PAGES: 0x0000000000000381 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 26074 <2830, stuck at pulsating logo, no display corruption> # xl create /etc/xen/W7Test.cfg Parsing config file /etc/xen/W7Test.cfg xc: info: VIRTUAL MEMORY ARRANGEMENT: Loader: 0000000000100000->00000000001885d4 TOTAL: 0000000000000000->00000000b0600000 ENTRY ADDRESS: 0000000000100000 xc: info: PHYSICAL MEMORY ALLOCATION: 4KB PAGES: 0x0000000000000200 2MB PAGES: 0x0000000000000382 1GB PAGES: 0x0000000000000001 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:741:libxl__device_pci_reset The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 25952 Somewhere after 2830MB, the logo doesn't even appear (only the "Starting Windows" text). Regarding these messages: pt_pci_write_config: Warning: Guest attempt to set address to unused Base Address Register. [00:05.0][Offset:30h][Length:4] pt_pci_read_config: Error: Failed to read register with invalid access size alignment. [00:04.0][Offset:0eh][Length:4] pt_pci_read_config: Error: Failed to read register with invalid access size alignment. [00:05.0][Offset:0eh][Length:4] After looking through xen's dmesg (attached), it appears that xen is giving my PCI devices some sort of internal PCI ID? The following appears, which I believe is related to my VGA card (though lspci lists them as 01:00.0 and 01:00.1): (XEN) HVM7: Make vBAR = pBAR of assigned gfx (XEN) domctl.c:986:d0 memory_map:add: gfn=f4000 mfn=f4000 nr_mfns=2000 (XEN) domctl.c:986:d0 memory_map:add: gfn=b0000 mfn=b0000 nr_mfns=8000 (XEN) domctl.c:986:d0 memory_map:add: gfn=b8000 mfn=b8000 nr_mfns=4000 (XEN) domctl.c:1042:d0 ioport_map:add f_gport=4c00 f_mport=4c00 np=80 (XEN) HVM7: pci dev 05:0 INTB->IRQ11 (XEN) HVM7: pci dev 06:0 INTA->IRQ11 In my dom0 dmesg, I also see some interesting logs: [ 1.205757] pnp 00:0b: disabling [mem 0x00000000-0x0009ffff] because it overlaps 0000:04:00.0 BAR 2 [mem 0x00000000-0x007fffff 64bit] [ 1.205760] pnp 00:0b: disabling [mem 0x000c0000-0x000cffff] because it overlaps 0000:04:00.0 BAR 2 [mem 0x00000000-0x007fffff 64bit] [ 1.205763] pnp 00:0b: disabling [mem 0x000e0000-0x000fffff] because it overlaps 0000:04:00.0 BAR 2 [mem 0x00000000-0x007fffff 64bit] [ 1.205766] pnp 00:0b: disabling [mem 0x00100000-0x9fffffff] because it overlaps 0000:04:00.0 BAR 2 [mem 0x00000000-0x007fffff 64bit] [ 1.205773] pnp 00:0b: disabling [mem 0x00000000-0x0009ffff disabled] because it overlaps 0000:0b:00.0 BAR 0 [mem 0x00000000-0x01ffffff] [ 1.205776] pnp 00:0b: disabling [mem 0x000c0000-0x000cffff disabled] because it overlaps 0000:0b:00.0 BAR 0 [mem 0x00000000-0x01ffffff] [ 1.205779] pnp 00:0b: disabling [mem 0x000e0000-0x000fffff disabled] because it overlaps 0000:0b:00.0 BAR 0 [mem 0x00000000-0x01ffffff] [ 1.205782] pnp 00:0b: disabling [mem 0x00100000-0x9fffffff disabled] because it overlaps 0000:0b:00.0 BAR 0 [mem 0x00000000-0x01ffffff] [ 1.205785] pnp 00:0b: disabling [mem 0x00000000-0x0009ffff disabled] because it overlaps 0000:0b:00.0 BAR 1 [mem 0x00000000-0x07ffffff 64bit pref] [ 1.205788] pnp 00:0b: disabling [mem 0x000c0000-0x000cffff disabled] because it overlaps 0000:0b:00.0 BAR 1 [mem 0x00000000-0x07ffffff 64bit pref] [ 1.205791] pnp 00:0b: disabling [mem 0x000e0000-0x000fffff disabled] because it overlaps 0000:0b:00.0 BAR 1 [mem 0x00000000-0x07ffffff 64bit pref] [ 1.205794] pnp 00:0b: disabling [mem 0x00100000-0x9fffffff disabled] because it overlaps 0000:0b:00.0 BAR 1 [mem 0x00000000-0x07ffffff 64bit pref] [ 1.205797] pnp 00:0b: disabling [mem 0x00000000-0x0009ffff disabled] because it overlaps 0000:0b:00.0 BAR 3 [mem 0x00000000-0x03ffffff 64bit pref] [ 1.205800] pnp 00:0b: disabling [mem 0x000c0000-0x000cffff disabled] because it overlaps 0000:0b:00.0 BAR 3 [mem 0x00000000-0x03ffffff 64bit pref] [ 1.205803] pnp 00:0b: disabling [mem 0x000e0000-0x000fffff disabled] because it overlaps 0000:0b:00.0 BAR 3 [mem 0x00000000-0x03ffffff 64bit pref] [ 1.205805] pnp 00:0b: disabling [mem 0x00100000-0x9fffffff disabled] because it overlaps 0000:0b:00.0 BAR 3 [mem 0x00000000-0x03ffffff 64bit pref] Sorry for the long post, hopefully someone can give me an idea about how to go about getting VGA passthrough to work. Thanks! Attachment:
xendmesg Attachment:
W7Test.cfg _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |