Stuck on clean with free drivers using a Virtual Machine

Ok first thing is this:

file: /etc/X11/xorg.conf

This one will be loaded first and priorized over the file /etc/X11/xorg.conf.d/90-mhwd.conf. So delete the file completely, since you want to use 1050 to display and not GTX970. Then xorg should completely ignore it.

On the same file: /etc/X11/xorg.conf.d/90-mhwd.conf you need to adjuste this section to target exactly the GTX 1050 with a BusID (like GTX970 before):

Otherwise it autoselect it and set also

    Option "PrimaryGPU" "yes"

In this section.

Outputclass is not needed then.

Please do it and report back with the same command… but please just upload it somewhere else, since we don’t need everything, and post the link here you can do it for example like this:

<command> | curl -F'file=@-' https://0x0.st

:arrow_down:

for x in ${txt[@]}; do echo -e "\n---$x---\n$(cat $x)"; done | curl -F'file=@-' https://0x0.st

or just use pastebin or similiar…

If you have problems to post links, then post them as code…

2 Likes

is the file name what comes after the “/” in the url when accessing my file?

Yes it is the full path.

did a test run of the command that you gave me

export txt=("/etc/X11/xorg.conf.d/*" "/etc/modprobe.d/*" "/etc/modules-load.d/*" "/var/log/Xorg*")
[jonas@jonas-ms7b86 ~]$ for x in ${txt[@]}; do echo -e "\n---$x---\n$(cat $x)"; done | curl -F'file=@hallooma' https://0x0.st
curl: (26) Failed to open/read local data from file/application
[jonas@jonas-ms7b86 ~]$ 

oh okay i thought you can set the filename yourself

rebooting now

And this?

( for x in ${txt[@]}; do echo -e "\n---$x---\n$(cat $x)"; done ) | curl -F'file=@-' https://0x0.st`
1 Like

I’ve upgraded you to Basic user but you will be bumped down again in 24h, but at the moment you should be able to continue posting.

DM me if that’s not the case.

:bowing_man:

1 Like

the first one worked just fine, i thought i had to customize it myself (look at what ive wrote in the file parameter)

want to be a little careful with my messages now, how many i create.

IM ON 5.10!!!1

[jonas@jonas-ms7b86 ~]$ sudo dmesg | grep -i vfio
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=a27f0baf-14fa-41db-844a-9ff44f8c8f6f rw quiet apparmor=1 security=apparmor resume=UUID=d0dac5d0-5548-41e7-8572-14de99a109cc udev.log_priority=3 iommu=pt vfio-pci.ids=10de:13c2,10de:0fbb
[    0.063344] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=a27f0baf-14fa-41db-844a-9ff44f8c8f6f rw quiet apparmor=1 security=apparmor resume=UUID=d0dac5d0-5548-41e7-8572-14de99a109cc udev.log_priority=3 iommu=pt vfio-pci.ids=10de:13c2,10de:0fbb
[    3.071299] VFIO - User Level meta-driver version: 0.3
[    3.074375] vfio-pci 0000:26:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    3.089366] vfio_pci: add [10de:13c2[ffffffff:ffffffff]] class 0x000000/00000000
[    3.105916] vfio_pci: add [10de:0fbb[ffffffff:ffffffff]] class 0x000000/00000000
[  177.189425] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x1e@0x258
[  177.189443] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x19@0x900
[  177.190939] vfio-pci 0000:26:00.0: BAR 3: can't reserve [mem 0xc0000000-0xc1ffffff 64bit pref]
[  177.192508] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  181.673718] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  181.673774] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[jonas@jonas-ms7b86 ~]$ 

got the bar issue tho it seems :^) (could be any other issue tho, just looks like it from what i can see in those error messages)

so the guest stays black now, cant start

but at least i can boot now my passthrough kernel now :grin:

i know that im moving a little fast again rn but ive changed kernel parameters as described in the guide on the archwiki:

GRUB_CMDLINE_LINUX_DEFAULT="quiet apparmor=1 security=apparmor resume=UUID=d0dac5d0-5548-41e7-8572-14de99a109cc udev.log_priority=3 iommu=pt vfio-pci.ids=10de:13c2,10de:0fbb video=efifb:off"
GRUB_CMDLINE_LINUX=""

which did not help

i screenshot the cpu usage to give a better idea what was happening when my 2 logs were recorded:
https://i.imgur.com/VK8Bs9j.png

sudo dmesg | grep -i vfio
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=a27f0baf-14fa-41db-844a-9ff44f8c8f6f rw quiet apparmor=1 security=apparmor resume=UUID=d0dac5d0-5548-41e7-8572-14de99a109cc udev.log_priority=3 iommu=pt vfio-pci.ids=10de:13c2,10de:0fbb video=efifb:off
[    0.062908] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=a27f0baf-14fa-41db-844a-9ff44f8c8f6f rw quiet apparmor=1 security=apparmor resume=UUID=d0dac5d0-5548-41e7-8572-14de99a109cc udev.log_priority=3 iommu=pt vfio-pci.ids=10de:13c2,10de:0fbb video=efifb:off
[    3.067899] VFIO - User Level meta-driver version: 0.3
[    3.071093] vfio-pci 0000:26:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[    3.085387] vfio_pci: add [10de:13c2[ffffffff:ffffffff]] class 0x000000/00000000
[    3.102142] vfio_pci: add [10de:0fbb[ffffffff:ffffffff]] class 0x000000/00000000
[  125.565465] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x1e@0x258
[  125.565484] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x19@0x900
[  125.566861] vfio-pci 0000:26:00.0: BAR 3: can't reserve [mem 0xc0000000-0xc1ffffff 64bit pref]
[  125.568525] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  129.756149] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  129.756184] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  172.168081] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x1e@0x258
[  172.168095] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x19@0x900
[  172.169166] vfio-pci 0000:26:00.0: BAR 3: can't reserve [mem 0xc0000000-0xc1ffffff 64bit pref]
[  172.171229] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  176.454946] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[  176.455020] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[jonas@jonas-ms7b86 ~]$ 

ill wait now

Well you need to grab the device GTX970 and pass it through to the VM. But this is a configuration on the VM Manager… What configuration have you done so far there?

<domain type="kvm">
  <name>wintest</name>
  <uuid>b9b55015-1588-4a90-b64b-a5ef193c9e4b</uuid>
  <metadata>
    <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
      <libosinfo:os id="http://microsoft.com/win/10"/>
    </libosinfo:libosinfo>
  </metadata>
  <memory unit="KiB">8323072</memory>
  <currentMemory unit="KiB">8323072</currentMemory>
  <vcpu placement="static">14</vcpu>
  <os>
    <type arch="x86_64" machine="pc-q35-6.1">hvm</type>
    <loader readonly="yes" type="pflash">/usr/share/edk2-ovmf/x64/OVMF_CODE.fd</loader>
    <nvram>/var/lib/libvirt/qemu/nvram/wintest_VARS.fd</nvram>
    <boot dev="hd"/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv>
      <relaxed state="on"/>
      <vapic state="on"/>
      <spinlocks state="on" retries="8191"/>
      <vendor_id state="on" value="nfiogdhodgri"/>
    </hyperv>
    <kvm>
      <hidden state="on"/>
    </kvm>
    <vmport state="off"/>
  </features>
  <cpu mode="host-model" check="partial">
    <topology sockets="1" dies="1" cores="7" threads="2"/>
  </cpu>
  <clock offset="localtime">
    <timer name="rtc" tickpolicy="catchup"/>
    <timer name="pit" tickpolicy="delay"/>
    <timer name="hpet" present="no"/>
    <timer name="hypervclock" present="yes"/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <pm>
    <suspend-to-mem enabled="no"/>
    <suspend-to-disk enabled="no"/>
  </pm>
  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
    <disk type="file" device="disk">
      <driver name="qemu" type="qcow2"/>
      <source file="/var/lib/libvirt/images/wintest.qcow2"/>
      <target dev="vda" bus="virtio"/>
      <address type="pci" domain="0x0000" bus="0x03" slot="0x00" function="0x0"/>
    </disk>
    <disk type="file" device="cdrom">
      <driver name="qemu" type="raw"/>
      <source file="/home/jonas/VirtualBox VMs/Win10_20H2_v2_English_x64.iso"/>
      <target dev="sdb" bus="sata"/>
      <readonly/>
      <address type="drive" controller="0" bus="0" target="0" unit="1"/>
    </disk>
    <disk type="file" device="cdrom">
      <driver name="qemu" type="raw"/>
      <source file="/home/jonas/VirtualBox VMs/virtio-win-0.1.196.iso"/>
      <target dev="sdc" bus="sata"/>
      <readonly/>
      <address type="drive" controller="0" bus="0" target="0" unit="2"/>
    </disk>
    <controller type="usb" index="0" model="qemu-xhci" ports="15">
      <address type="pci" domain="0x0000" bus="0x02" slot="0x00" function="0x0"/>
    </controller>
    <controller type="sata" index="0">
      <address type="pci" domain="0x0000" bus="0x00" slot="0x1f" function="0x2"/>
    </controller>
    <controller type="pci" index="0" model="pcie-root"/>
    <controller type="pci" index="1" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="1" port="0x8"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x0" multifunction="on"/>
    </controller>
    <controller type="pci" index="2" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="2" port="0x9"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x1"/>
    </controller>
    <controller type="pci" index="3" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="3" port="0xa"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x2"/>
    </controller>
    <controller type="pci" index="4" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="4" port="0xb"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x3"/>
    </controller>
    <controller type="pci" index="5" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="5" port="0xc"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x4"/>
    </controller>
    <controller type="pci" index="6" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="6" port="0xd"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x5"/>
    </controller>
    <controller type="pci" index="7" model="pcie-root-port">
      <model name="pcie-root-port"/>
      <target chassis="7" port="0xe"/>
      <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x6"/>
    </controller>
    <interface type="network">
      <mac address="52:54:00:38:f9:ed"/>
      <source network="default"/>
      <model type="e1000e"/>
      <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/>
    </interface>
    <input type="tablet" bus="usb">
      <address type="usb" bus="0" port="3"/>
    </input>
    <input type="mouse" bus="ps2"/>
    <input type="keyboard" bus="ps2"/>
    <audio id="1" type="none"/>
    <hostdev mode="subsystem" type="pci" managed="yes">
      <source>
        <address domain="0x0000" bus="0x26" slot="0x00" function="0x0"/>
      </source>
      <rom bar="off"/>
      <address type="pci" domain="0x0000" bus="0x04" slot="0x00" function="0x0"/>
    </hostdev>
    <hostdev mode="subsystem" type="pci" managed="yes">
      <source>
        <address domain="0x0000" bus="0x26" slot="0x00" function="0x1"/>
      </source>
      <rom bar="off"/>
      <address type="pci" domain="0x0000" bus="0x05" slot="0x00" function="0x0"/>
    </hostdev>
    <hostdev mode="subsystem" type="usb" managed="yes">
      <source>
        <vendor id="0x046d"/>
        <product id="0xc248"/>
      </source>
      <address type="usb" bus="0" port="1"/>
    </hostdev>
    <hostdev mode="subsystem" type="usb" managed="yes">
      <source>
        <vendor id="0x1ea7"/>
        <product id="0x090e"/>
      </source>
      <address type="usb" bus="0" port="2"/>
    </hostdev>
    <redirdev bus="usb" type="spicevmc">
      <address type="usb" bus="0" port="4"/>
    </redirdev>
    <redirdev bus="usb" type="spicevmc">
      <address type="usb" bus="0" port="5"/>
    </redirdev>
    <memballoon model="virtio">
      <address type="pci" domain="0x0000" bus="0x06" slot="0x00" function="0x0"/>
    </memballoon>
  </devices>
</domain>

what i connected:

https://i.imgur.com/l7g3QiU.png
  1. Please be more specific: Guest or host? Ah, Windows guest.
  2. Always remove quiet when debugging…
  3. Looks like you’re all set now from the Manjaro perspective and anything else is Windows now.

(Or am I missing something?)

Well here I can just suggest this part of the tutorial:

https://github.com/vanities/GPU-Passthrough-Arch-Linux-to-Windows10#configuring-ovmf-and-running-libvirt

well idk whats gonna come
there is still a troubleshooting guide in the arch wiki…

i found this guide on yt

https://www.youtube.com/watch?v=h7SG7ccjn-g&t=916s

that one worked on my older pc which i replaced motherboard and cpu on and added a gpu to

also the guide you linked me is 3 years old

just removed the windows disc and i still got the

[ 4339.247030] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x1e@0x258
[ 4339.247044] vfio-pci 0000:26:00.0: vfio_ecap_init: hiding ecap 0x19@0x900
[ 4339.248139] vfio-pci 0000:26:00.0: BAR 3: can't reserve [mem 0xc0000000-0xc1ffffff 64bit pref]
[ 4339.250134] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[ 4343.575139] vfio-pci 0000:26:00.0: No more image in the PCI ROM
[ 4343.575188] vfio-pci 0000:26:00.0: No more image in the PCI ROM

error

just to show you how old it is:
if you search for nvram in the file youre supposed to put it in you get this:

#
# This configuration option is obsolete. Libvirt will follow the
# QEMU firmware metadata specification to automatically locate
# firmware images. See docs/interop/firmware.json in the QEMU
# source tree. These metadata files are distributed alongside any
# firmware images intended for use with QEMU.
#
# NOTE: if ANY firmware metadata files are detected, this setting
# will be COMPLETELY IGNORED.

I didnt use SCSI in my earlier setup and that worked fine (most of the time :smirk:)

also you dont need to enable amd_iommu anymore

EDIT: WRONG:
there is now an autostart option for those and i dont think you have to enable anymore:

$ sudo systemctl start libvirtd.service 
$ sudo systemctl start virtlogd.socket
$ sudo systemctl enable libvirtd.service
$ sudo systemctl enable virtlogd.socket

the autostart is for sudo virsh net-autostart default

Forget about YouTube for troubleshooting!!!

Although its easy to create a video, it’s hard to keep it updated so unless it’s 1 month old, it’s probably garbage.

This is not a Windows issue, so I’d advise you to please read this:

Especially the What’s this Upstream/Downstream business section and then take up the rest of the troubleshooting Upstream to qemu.

:bowing_man:

I dont remember there being any troubleshooting in that video

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.