April 14, 201412 yr I bought a NVIDIA Quadro 2000 as it is listed as "Multi-OS" capable: http://wiki.xen.org/wiki/Xen_VGA_Passthrough_Tested_Adapters There is indeed no issue with passthrough with Windows 8, but it fails on Ubuntu 12.04: pyGRUB version 0.6 ????????????????????????????? ? Ubuntu, with Linux 3.2.0-60-generic ? ? Ubuntu, with Linux 3.2.0-60-generic (recovery mode) ? ? Ubuntu, with Linux 3.2.0-41-generic ? ? Ubuntu, with Linux 3.2.0-41-generic (recovery mode) ? ? ? ? ? ? ? ? ? ????????????????????????????? Use the ^ and ? keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, 'a' to modify the kernel arguments before booting, or 'c' for a command line. libxl: error: libxl_pci.c:990:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:990:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 2905 FATAL: Error inserting vesafb (/lib/modules/3.2.0-60-generic/initrd/vesafb.ko): No such device [ 3.338086] error in i2c_read_reg Loading the saved-state of the serial devices from /etc/serial.conf * Loading cpufreq kernel modules... [fail] * CPUFreq Utilities: Setting ondemand CPUFreq governor... [ OK ] * disabled, governor not available... * Exporting directories for NFS kernel daemon... [ OK ] * Starting NFS kernel daemon [ 16.653881] BUG: unable to handle kernel paging request at ffff8800040edda8 [ 16.653889] IP: [<ffffffff81045974>] ptep_set_access_flags+0x54/0x70 [ 16.653895] PGD 1c06067 PUD 1c0a067 PMD 4980067 PTE 80100000040ed065 [ 16.653901] Oops: 0003 [#1] SMP [ 16.653905] CPU 0 [ 16.653906] Modules linked in: snd_hda_intel(+) snd_hda_codec snd_hwdep snd_pcm snd_seq_midi stv090x snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device pata_jmicron(+) snd ngene(+) dvb_core soundcore cxd2099(C) snd_page_alloc nvidia(P) nfsd nfs lockd fscache auth_rpcgss nfs_acl sunrpc lp xen_pcifront parport [ 16.653931] [ 16.653933] Pid: 1112, comm: ethtool Tainted: P WC O 3.2.0-60-generic #91-Ubuntu [ 16.653937] RIP: e030:[<ffffffff81045974>] [<ffffffff81045974>] ptep_set_access_flags+0x54/0x70 [ 16.653943] RSP: e02b:ffff880036829bd8 EFLAGS: 00010202 [ 16.653945] RAX: 0000000000100001 RBX: ffff880038f036e0 RCX: 800000002fd5e167 [ 16.653949] RDX: ffff8800040edda8 RSI: 00007f538bfb59d0 RDI: ffff880038f036e0 [ 16.653952] RBP: ffff880036829bf8 R08: 0000000000000001 R09: a8000309fc000000 [ 16.653955] R10: 57ffe6f604c27f00 R11: 0000000000000000 R12: 00007f538bfb59d0 [ 16.653962] R13: 0000000000000001 R14: 00007f538bfb59d0 R15: ffff8800040edda8 [ 16.653969] FS: 00007f538bfb5700(0000) GS:ffff88003fc00000(0000) knlGS:0000000000000000 [ 16.653973] CS: e033 DS: 0000 ES: 0000 CR0: 000000008005003b [ 16.653976] CR2: ffff8800040edda8 CR3: 0000000037e98000 CR4: 0000000000002660 [ 16.653980] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 16.653983] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 16.653987] Process ethtool (pid: 1112, threadinfo ffff880036828000, task ffff880039381700) [ 16.653991] Stack: [ 16.653993] ffffea0000103b70 0000000000000000 ffff880038f036e0 00007f538bfb59d0 [ 16.653999] ffff880036829c88 ffffffff8113df2a ffffffff8100637d ffff880036829d55 [ 16.654005] ffff880038f036e0 ffff880038f182f8 ffff880000000000 ffff880036829c40 [ 16.656055] Call Trace: [ 16.656055] [<ffffffff8113df2a>] do_wp_page+0x37a/0x740 [ 16.656055] [<ffffffff8100637d>] ? pte_mfn_to_pfn+0x8d/0x110 [ 16.656055] [<ffffffff8100641e>] ? xen_pmd_val+0xe/0x10 [ 16.656055] [<ffffffff81005379>] ? __raw_callee_save_xen_pmd_val+0x11/0x1e [ 16.656055] [<ffffffff8113feeb>] handle_pte_fault+0x1cb/0x200 [ 16.656055] [<ffffffff811410f9>] handle_mm_fault+0x269/0x370 [ 16.656055] [<ffffffff816657fe>] do_page_fault+0x17e/0x540 [ 16.656055] [<ffffffff81004ed6>] ? xen_mc_flush+0x1b6/0x1c0 [ 16.656055] [<ffffffff816493e9>] ? printk+0x51/0x53 [ 16.656055] [<ffffffff810683bc>] ? warn_slowpath_common+0x8c/0xc0 [ 16.656055] [<ffffffff81662435>] page_fault+0x25/0x30 [ 16.656055] [<ffffffff8131d3ad>] ? __put_user_4+0x1d/0x30 [ 16.656055] [<ffffffff810612b3>] ? schedule_tail+0x63/0xb0 [ 16.656055] [<ffffffff8166a203>] ret_from_fork+0x13/0x80 [ 16.656055] Code: 45 85 c0 44 0f b6 e8 75 1e 44 89 e8 48 8b 5d e0 4c 8b 65 e8 4c 8b 6d f0 4c 8b 75 f8 c9 c3 66 0f 1f 84 00 00 00 00 00 84 c0 74 de <48> 89 0a 48 8b 3f 66 66 66 90 66 66 90 4c 89 e6 48 89 df e8 a4 [ 16.656055] RIP [<ffffffff81045974>] ptep_set_access_flags+0x54/0x70 [ 16.656055] RSP <ffff880036829bd8> [ 16.656055] CR2: ffff8800040edda8 [ 16.656055] ---[ end trace a885781317904cae ]--- [ 16.771349] ------------[ cut here ]------------ [ 16.771357] WARNING: at /build/buildd/linux-3.2.0/arch/x86/xen/multicalls.c:129 xen_mc_flush+0x1b6/0x1c0() [ 16.771361] Modules linked in: snd_hda_intel(+) snd_hda_codec snd_hwdep snd_pcm snd_seq_midi stv090x snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device pata_jmicron(+) snd ngene(+) dvb_core soundcore cxd2099(C) snd_page_alloc nvidia(P) nfsd nfs lockd fscache auth_rpcgss nfs_acl sunrpc lp xen_pcifront parport [ 16.771440] Pid: 1115, comm: sed Tainted: P D WC O 3.2.0-60-generic #91-Ubuntu [ 16.771444] Call Trace: [ 16.771446] ---[ end trace a885781317904caf ]--- Is that possible that an adapter can be passedthrough in one VM and fail in another?
April 15, 201412 yr Possibly. Nvidia isn't known to be the most "linux-friendly" company out there which could be a part of the issue. Please share all the config details for the VM and your base hardware. These issues can be a bit of a "needle and a haystack" so the more information we have, the better we can help track this down. Unfortunately I do not have a Quadro card of my own to test against...
April 16, 201412 yr Author I heard this as well - this is the reason that I was choosing the Quadro 2000, that is listed. I need the NVIDIA card for VDPAU (VDR). Anyhow let me share the information that is needed. I have upgraded to the Kernel 3.8.0-38 and get less errors. Base HW: see my signature under unRAID Backup windows8.cfg: name = 'Windows8' builder = 'hvm' vcpus = '4' memory = '1024' device_model_version="qemu-xen-traditional" disk = [ 'file:/mnt/cache/.VMs/win8/win8.img,ioemu:hda,w' ] vif = [ 'mac=00:16:3e:a1:bc:a8, bridge=br0, model=e1000' ] on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' boot = 'dc' acpi = '1' apic = '1' viridian = '1' xen_platform_pci='1' sdl = '0' vnc = '1' vnclisten = '0.0.0.0' vncpasswd = '' stdvga = '0' usb = '1' usbdevice = 'tablet' pci = [ '01:00.0','01:00.1','05:00.0','06:00.0' ] pci_permissive=1 extra ='iommu=soft' yaVDR.cfg: name = "yaVDR" bootloader = "pygrub" memory = 1024 vcpus = '1' disk = [ 'file:/mnt/cache/.VMs/yaVDR/yaVDR.img,xvda,w' ] vif = [ 'mac=00:16:3e:a1:bc:a7,bridge=br0' ] pci = [ '01:00.0','01:00.1','05:00.0','06:00.0' ] pci_permissive=1 extra ='iommu=soft' root@yaVDR:~# lspci 00:00.0 VGA compatible controller: NVIDIA Corporation GF106GL [Quadro 2000] (rev a1) 00:00.1 Audio device: NVIDIA Corporation GF106 High Definition Audio Controller (rev a1) 00:01.0 Multimedia video controller: Micronas Semiconductor Holding AG nGene PCI-Express Multimedia Controller (rev 01) 00:02.0 IDE interface: JMicron Technology Corp. JMB368 IDE controller root@yaVDR:~# dmesg | grep ngene [ 4.399109] ngene 0000:00:01.0: enabling device (0000 -> 0002) [ 4.399271] ngene 0000:00:01.0: Xen PCI mapped GSI18 to IRQ29 [ 4.399280] ngene: Found Mystique SaTiX-S2 Dual (v2) [ 4.407526] ngene: Device version 1 [ 4.412134] ngene: Loading firmware file ngene_18.fw. [ 4.833144] ngene 0000:00:01.0: DVB: registering adapter 0 frontend 0 (STV090x Multistandard)... [ 4.872783] ngene 0000:00:01.0: DVB: registering adapter 1 frontend 0 (STV090x Multistandard)... root@yaVDR:~# dmesg | grep nvidia [ 3.194061] nvidia: module license 'NVIDIA' taints kernel. [ 3.294685] nvidia 0000:00:00.0: enabling device (0000 -> 0003) [ 3.294805] nvidia 0000:00:00.0: Xen PCI mapped GSI16 to IRQ28 ...after starting: root@Tower2:/mnt/cache/.VMs/yaVDR# xl create yaVDR.cfg Parsing config from yaVDR.cfg libxl: error: libxl_pci.c:990:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01:00.0 libxl: error: libxl_pci.c:990:libxl__device_pci_reset: The kernel doesn't support reset from sysfs for PCI device 0000:01:00.1 Daemon running with PID 1981 Is there anything else that I can attach? What's your guidance where to look at next? Thanks a lot in advance.
April 16, 201412 yr you are not trying to pass-through the same card into both VM at the same time? are you?
April 16, 201412 yr Ok a couple more questions. First, if you try to do the passthrough to JUST the ubuntu VM (without even booting the Win8 VM), does it still not work? Second, have you tried any other linux operating systems (aside from Ubuntu) to test against first? Want to narrow this down... Sent from my LG-V500 using Tapatalk
April 16, 201412 yr Author Oh, you are so quick ... brings me under pressure First of all: I either boot the Windows VM or the yaVDR VM (to check if Win 8 can deal with the Nvidia card). So, vl1969, the answer to your question is no. Secondly: I booted an ArchVM - doesn't generate any error, but I can't test anything as the desktop environment is missing. [root@ArchVM ~]# dmesg | grep ngene [ 0.881797] ngene 0000:00:01.0: enabling device (0000 -> 0002) [ 0.882137] ngene 0000:00:01.0: Xen PCI mapped GSI18 to IRQ33 [ 0.882204] ngene: Found Mystique SaTiX-S2 Dual (v2) [ 0.891128] ngene: Device version 1 [ 0.891164] ngene 0000:00:01.0: Direct firmware load failed with error -2 [ 0.891166] ngene 0000:00:01.0: Falling back to user helper [ 0.944675] ngene: Could not load firmware file ngene_18.fw. [ 0.944683] ngene: Copy ngene_18.fw to your hotplug directory! [ 0.945029] ngene: probe of 0000:00:01.0 failed with error -1 That is clear - I didn't copied the firmware into the respective directory. But it recognize the TV card. [root@ArchVM ~]# dmesg | grep nvidia [ 1.169791] nvidia: module license 'NVIDIA' taints kernel. [ 1.710862] nvidia 0000:00:00.0: enabling device (0000 -> 0003) [ 1.714483] nvidia 0000:00:00.0: Xen PCI mapped GSI16 to IRQ34 [ 1.721688] [drm] Initialized nvidia-drm 0.0.0 20130102 for 0000:00:00.0 on minor 0 [root@ArchVM ~]# dmesg | grep HDA [ 1.706928] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci-0/pci0000:00/0000:00:00.1/sound/card0/input4 [ 1.707124] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci-0/pci0000:00/0000:00:00.1/sound/card0/input3 [ 1.707281] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci-0/pci0000:00/0000:00:00.1/sound/card0/input2 [ 1.707440] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci-0/pci0000:00/0000:00:00.1/sound/card0/input1 Issues at the very end: [ 1.765875] Call Trace: [ 1.765876] <IRQ> [<ffffffff81513754>] dump_stack+0x4d/0x6f [ 1.765886] [<ffffffff810ba392>] __report_bad_irq+0x32/0xd0 [ 1.765888] [<ffffffff810ba821>] note_interrupt+0x1a1/0x1f0 [ 1.765891] [<ffffffff810b8219>] handle_irq_event_percpu+0xd9/0x210 [ 1.765893] [<ffffffff810b838d>] handle_irq_event+0x3d/0x60 [ 1.765895] [<ffffffff810bb32a>] handle_fasteoi_irq+0x5a/0x100 [ 1.765898] [<ffffffff81366ddf>] __xen_evtchn_do_upcall+0x21f/0x350 [ 1.765901] [<ffffffff81368dab>] xen_evtchn_do_upcall+0x2b/0x50 [ 1.765904] [<ffffffff815235fe>] xen_do_hypervisor_callback+0x1e/0x30 [ 1.765905] <EOI> [<ffffffff810013aa>] ? xen_hypercall_sched_op+0xa/0x20 [ 1.765910] [<ffffffff810013aa>] ? xen_hypercall_sched_op+0xa/0x20 [ 1.765913] [<ffffffff8100aef0>] ? xen_safe_halt+0x10/0x20 [ 1.765916] [<ffffffff8101d61f>] ? default_idle+0x1f/0x110 [ 1.765917] [<ffffffff8101dfd6>] ? arch_cpu_idle+0x26/0x30 [ 1.765919] [<ffffffff810b77fa>] ? cpu_startup_entry+0x24a/0x2d0 [ 1.765921] [<ffffffff81505ad4>] ? rest_init+0x84/0x90 [ 1.765923] [<ffffffff818e9f64>] ? start_kernel+0x431/0x43c [ 1.765925] [<ffffffff818e993c>] ? repair_env_string+0x5c/0x5c [ 1.765927] [<ffffffff818e95ee>] ? x86_64_start_reservations+0x2a/0x2c [ 1.765929] [<ffffffff818ebffb>] ? xen_start_kernel+0x55e/0x56a [ 1.765931] handlers: [ 1.765940] [<ffffffffa03633e0>] ata_bmdma_interrupt [libata] [ 1.765945] Disabling IRQ #34 I think that I'm going to install an Ubuntu 13.10 and see what happens. Would that be the right move?
Archived
This topic is now archived and is closed to further replies.