That was a good suggestion, I've just
tried passing through a USB controller and that worked fine. The
driver installed correctly and I can use devices attached to the
relevant ports. The problem therefore seems to be to do with gpu
passthrough specifically. I'm just going to describe my system
and some settings I have in the bios as this is starting to feel
like a system specific problem. The system is
Asus Z9PE-D8 WS motherboard (chipset is intel C602)
Dual Xeon 2620
64 GB non-ecc memory
Dual AMD radeon HD 7970 in slots 1 & 5 (it's the one in slot 5
I'm trying to pass through)
In the bios I have vt-d enabled. I also have sub-feature settings
for "Coherency Support" and "ATS Support" which are disabled by
default. I've tried all combinations of these enabled and
disabled. If I enable "ATS Support" I do however have to add the
option "iommu=no-qinval,no-intremap" to the xen boot otherwise the
system hangs as per this
thread. If the problem is to no with these options then I
think I have a problem.
Has anybody got any thoughts?
Matt
On 11/03/2013 14:57, Peter Maloney wrote:
Did you try other devices, such as
your onboard sound card, your onboard USB controllers, etc.?
Maybe your board doesn't do passthrough properly.
Or did you try another PCIe port for the card? Maybe there are
bugs where the addresses overlap with some other device, but in
another slot it wouldn't happen.
On 2013-03-11 14:48, Matthew Dean wrote:
First of all, thank you for the
suggestions. I've now re-installed windows and I've tried
driver versions 12.3, 12.8 and 13.1 all with and without the
CCC as I read in various places that it can cause problems.
For 13.1 I never get anywhere close as per my previous
messages. For 12.3 and 12.8 I at least get a BSOD,
#######################################################################
A problem has been detected ...
Attempt to reset the display driver and recover from timeout
failed.
If this is ...
Techinal information:
*** STOP: 0x00000116
(0xFFFFFA8002AAF010,0xFFFFF88003D95AE4,0x0000000000000000,0x0000000000000002)
*** atikmpag.sys - Address FFFFF88003D95AE4 base at
FFFFF88003D8E000, Datestamp 4f597fca
#######################################################################
Does anybody have any further ideas?
Matt
On 07/03/2013 21:42, John Sherwood wrote:
(and I should probably mention that it has been my
experience that that is the expected and correct behavior)
On Thu, Mar 7, 2013 at 1:41 PM, John
Sherwood <jrs@xxxxxx>
wrote:
Having
the windows logo freeze in the VNC window has been my
experience with GPU passthrough as well.
On Thu, Mar 7, 2013 at 1:38
PM, Andreas Falck <falck.andreas.lists@xxxxxxxxx>
wrote:
Hi,
I believe that the Windows logo freezing in the
vnc window is normal behaviour when secondary GPU
passthrough is working as it should, since the
display should be handed over to the GPU. At least
that was the case before when I was passing
through a HD6850 card as secondary to win7 using
xl. But you should expect output on the GPU, of
course.
Have you tried different versions of the catalyst
driver? I think that some users have reported
problems with the latest one (13-something).
Regards,
Andreas
2013/3/7 Matthew Dean <mcd40@xxxxxxxxx>
Hi all,
I've managed to get a windows 7 x64 hvm to
boot and install and I'm now looking to pass
through a HD 7970 as a secondary GPU. in
order to prepare the devices for passthrough
I've used
xl pci-assignable-add 83:00.0
xl pci-assignable-add 83:00.1
Where I've identified the device pci ids using
lspci. This works fine and the devices appear
when I call 'xl pci-assignable-list'. After
adding them to the vm config (see below) I was
able to get the vm to boot and the devices
appeared in device manager. Installing the
ATI drivers however has meant that on further
boots the machine never gets past the windows
logo in the VNC window and no output is
generated from the ATI card. It simply
freezes there and the only way I can get back
into windows is via safe mode, even after
uninstalling the ATI software.
Has anybody else experienced similar issues or
have any advice as to how to get this to work?
I'm a bit stumped and the wiki implies that
this should 'just work'.
Thank you in advance for any help.
Matt
Here is my machine config
###########################################################
builder='hvm'
memory = 2048
name = 'Windows7Test'
vcpus=4
pae=1
acpi=1
apic=1
disk = [ 'file:/xen-guests/img/windows7Test.img,hda,w'
]
pci = [ '83:00.0' , '83:00.1' ]
on_reboot = 'restart'
on_crash = 'destroy'
boot='cd'
sdl=0
vnc=1
vncconsole=0
vncpasswd=''
vnclisten='172.24.226.84'
stdvga=0
serial='pty'
usbdevice='tablet'
gfx_passthru=0
pci_power_mgmt=1
xen_platform_pci=1
pci_msitranslate=1
viridian=1
hpet=1
############################################################
And the vm produces the following qemu log in
/var/log/xen/
############################################################
domid: 4
-videoram option does not work with cirrus vga
device model. Videoram set to 4M.
Strip off blktap sub-type prefix to
/xen-guests/img/windows7Test.img (drv 'aio')
Using file /xen-guests/img/windows7Test.img in
read-write mode
Watching
/local/domain/0/device-model/4/logdirty/cmd
Watching
/local/domain/0/device-model/4/command
Watching /local/domain/4/cpu
char device redirected to /dev/pts/3
qemu_map_cache_init nr_buckets = 10000 size
4194304
shared page at pfn feffd
buffered io page at pfn feffb
Guest uuid =
e09f5a51-7de1-4d92-9cec-826b9d66aeb6
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/4/xen_extended_power_mgmt):
read error
Log-dirty: no command yet.
I/O request not ready: 0, ptr: 0, port: 0,
data: 0, count: 0, size: 0
I/O request not ready: 0, ptr: 0, port: 0,
data: 0, count: 0, size: 0
vcpu-set: watch node error.
I/O request not ready: 0, ptr: 0, port: 0,
data: 0, count: 0, size: 0
xs_read(/local/domain/4/log-throttling): read
error
qemu: ignoring not-understood drive
`/local/domain/4/log-throttling'
medium change watch on
`/local/domain/4/log-throttling' - unknown
device, ignored
I/O request not ready: 0, ptr: 0, port: 0,
data: 0, count: 0, size: 0
dm-command: hot insert pass-through pci dev
register_real_device: Assigning real physical
device 83:00.0 ...
register_real_device: Enable MSI translation
via per device option
register_real_device: Enable power management
pt_iomul_init: Error: pt_iomul_init can't open
file /dev/xen/pci_iomul: No such file or
directory: 0x83:0x0.0x0
pt_register_regions: IO region registered
(size=0x10000000 base_addr=0xe000000c)
pt_register_regions: IO region registered
(size=0x00040000 base_addr=0xf0000004)
pt_register_regions: IO region registered
(size=0x00000100 base_addr=0x0000f001)
pt_register_regions: Expansion ROM registered
(size=0x00020000 base_addr=0xf0040000)
pt_msi_setup: msi mapped with pirq 67
pci_intx: intx=1
register_real_device: Real physical device
83:00.0 registered successfuly!
IRQ type = MSI-INTx
dm-command: hot insert pass-through pci dev
register_real_device: Assigning real physical
device 83:00.1 ...
register_real_device: Enable MSI translation
via per device option
register_real_device: Enable power management
pt_iomul_init: Error: pt_iomul_init can't open
file /dev/xen/pci_iomul: No such file or
directory: 0x83:0x0.0x1
pt_register_regions: IO region registered
(size=0x00004000 base_addr=0xf0060004)
pt_msi_setup: msi mapped with pirq 66
pci_intx: intx=2
register_real_device: Real physical device
83:00.1 registered successfuly!
IRQ type = MSI-INTx
pt_iomem_map: e_phys=e0000000 maddr=e0000000
type=8 len=268435456 index=0 first_map=1
cirrus vga map change while on lfb mode
pt_iomem_map: e_phys=f3000000 maddr=f0000000
type=0 len=262144 index=2 first_map=1
pt_iomem_map: e_phys=f3060000 maddr=f0060000
type=0 len=16384 index=0 first_map=1
pt_ioport_map: e_phys=c100 pio_base=f000
len=256 index=4 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_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:04:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_pci_read_config: [00:05:0] Error: Failed to
read register with invalid access size
alignment. [Offset:0eh][Length:4]
pt_iomem_map: e_phys=ffffffff maddr=e0000000
type=8 len=268435456 index=0 first_map=0
pt_iomem_map: e_phys=ffffffff maddr=f0000000
type=0 len=262144 index=2 first_map=0
pt_ioport_map: e_phys=ffff pio_base=f000
len=256 index=4 first_map=0
pt_iomem_map: e_phys=e0000000 maddr=e0000000
type=8 len=268435456 index=0 first_map=0
pt_iomem_map: e_phys=f3000000 maddr=f0000000
type=0 len=262144 index=2 first_map=0
pt_ioport_map: e_phys=c100 pio_base=f000
len=256 index=4 first_map=0
pt_iomem_map: e_phys=ffffffff maddr=f0060000
type=0 len=16384 index=0 first_map=0
pt_iomem_map: e_phys=f3060000 maddr=f0060000
type=0 len=16384 index=0 first_map=0
pt_iomem_map: e_phys=ffffffff maddr=e0000000
type=8 len=268435456 index=0 first_map=0
pt_iomem_map: e_phys=ffffffff maddr=f0000000
type=0 len=262144 index=2 first_map=0
pt_ioport_map: e_phys=ffff pio_base=f000
len=256 index=4 first_map=0
pt_iomem_map: e_phys=e0000000 maddr=e0000000
type=8 len=268435456 index=0 first_map=0
pt_iomem_map: e_phys=f3000000 maddr=f0000000
type=0 len=262144 index=2 first_map=0
pt_ioport_map: e_phys=c100 pio_base=f000
len=256 index=4 first_map=0
pt_msgctrl_reg_write: guest enabling MSI,
disable MSI-INTx translation
pci_intx: intx=1
pt_msi_disable: Unmap msi with pirq 67
pt_msgctrl_reg_write: setup msi for dev 20
pt_msi_setup: msi mapped with pirq 67
pt_msi_update: Update msi with pirq 67 gvec b0
gflags 130f
pt_iomem_map: e_phys=ffffffff maddr=f0060000
type=0 len=16384 index=0 first_map=0
pt_iomem_map: e_phys=f3060000 maddr=f0060000
type=0 len=16384 index=0 first_map=0
######################################################################
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxx
http://lists.xen.org/xen-users
--
--------------------------------------------
Peter Maloney
Brockmann Consult
Max-Planck-Str. 2
21502 Geesthacht
Germany
Tel: +49 4152 889 300
Fax: +49 4152 889 333
E-mail: peter.maloney@xxxxxxxxxxxxxxxxxxxx
Internet: http://www.brockmann-consult.de
--------------------------------------------
|