Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Can't get passed UEFI boot

Featured Replies

I have been trying to get my MSI GTX 970 videocard passedthrough to Windows without any success. Tried most things as suggested by the forum and the wiki.

I did manage to get into Windows 8.1 with the Seabios and I440fx setting. But ran into the code 43 nvidia issue. When downloading the latest driver, window crashes on reboot: BSOD.

 

A thing I did not yet try but would like to do, is booting in UEFI via OVMF. However, I cannot get passed the boot shell prompt. When trying fs0: it states it fs0: is an invalid mapping.

When typing exit, I can go through the boot menu. But whatever I do, I get back to the shell prompt one way or another.  I know my motherboard (X9SCM-IIF) supports UEFI. I have a CPU is XEON. Are there any particular settings I am missing out on?

Screen_Shot_2015-07-29_at_15_54_50.png.f7f620534ece35d855f8fe5ecf22c5a9.png

Is your motherboard BIOS up to date?

 

Have you tried moving the GPU to an alternate PCI slot?

 

With the code 43, you didn't adjust the hyper v setting on the VM page to on, did you?

When you start the VM, immediately start tapping the delete key to bring you to the OVMF "BIOS" (I doubt it's technically a BIOS). If you get to the shell prompt, type "reset" and try again.

 

From the "BIOS", you can set boot order and boot configurations. There's another thread stating that this information is shared between all OVMF VMs (or more likely that it resets on UnRAID reboot?), so this could be part of your problem. Essentially, you want to find an "Misc" device - this should be the VM's primary volume and should allow you to boot no issues. I'm sticking with SeaBIOS for now.

 

Side note, possibly related: I was getting blue screens due to testing different GPU configurations. I got enough that I corrupted the install and it was unrecoverable. You might need to do another install.

  • Author

OK I'll probably also have a better bed staying with SEABIOS for now.... 

As JONP suggested I put the Hyper-V back on and at least it is booting again into window using SEABIOS. One step closer ;-)

But I am back to square one on the 43 error of the video card, which now has the latest drivers.

OK I'll probably also have a better bed staying with SEABIOS for now.... 

As JONP suggested I put the Hyper-V back on and at least it is booting again into window using SEABIOS. One step closer ;-)

But I am back to square one on the 43 error of the video card, which now has the latest drivers.

 

Unless he said something elsewhere, he wanted this set to "off", no Hyper-v!

If it is on you will need to use old drivers for code 43 to not appear.

So current drivers would be Hyper-v = No, old drivers (340.52 or previous) you can use Hyper-v = Yes.

  • Author

Got a step further... in addition to my GPU, also a generic display adapter shows up under the device manager, although I am not passing anything through besides my GTX.

When I disable the generic display adapter and reboot, the GPU goes from an error 43 to error 12: this device can find enough free resources ?! Anyone a clue how to resolve this?

I disables as much as I can under hardware. The only options I had was to disable the cd-roms...

 

Problem status is reporting: Conflicting Address Range. The specified address range conflicts with the address space.

 

Screen_Shot_2015-07-31_at_09_14_27.png.4306d870dc4f92b557b562b339904f26.png

Got a step further... in addition to my GPU, also a generic display adapter shows up under the device manager, although I am not passing anything through besides my GTX.

When I disable the generic display adapter and reboot, the GPU goes from an error 43 to error 12: this device can find enough free resources ?! Anyone a clue how to resolve this?

I disables as much as I can under hardware. The only options I had was to disable the cd-roms...

 

Problem status is reporting: Conflicting Address Range. The specified address range conflicts with the address space.

 

Please share your xml.

  • Author

Sure no problem:

 

<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>

  <name>Windows_Test</name>

  <uuid>68577d45-f921-15a7-ccdc-f7583935e647</uuid>

  <metadata>

    <vmtemplate name="Custom" icon="windows.png" os="windows"/>

  </metadata>

  <memory unit='KiB'>4194304</memory>

  <currentMemory unit='KiB'>4194304</currentMemory>

  <memoryBacking>

    <nosharepages/>

    <locked/>

  </memoryBacking>

  <vcpu placement='static'>2</vcpu>

  <cputune>

    <vcpupin vcpu='0' cpuset='2'/>

    <vcpupin vcpu='1' cpuset='3'/>

  </cputune>

  <os>

    <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type>

  </os>

  <features>

    <acpi/>

    <apic/>

  </features>

  <cpu mode='host-passthrough'>

    <topology sockets='1' cores='2' threads='1'/>

  </cpu>

  <clock offset='localtime'>

    <timer name='rtc' tickpolicy='catchup'/>

    <timer name='pit' tickpolicy='delay'/>

    <timer name='hpet' present='no'/>

  </clock>

  <on_poweroff>destroy</on_poweroff>

  <on_reboot>restart</on_reboot>

  <on_crash>restart</on_crash>

  <devices>

    <emulator>/usr/bin/qemu-system-x86_64</emulator>

    <disk type='file' device='disk'>

      <driver name='qemu' type='raw' cache='writeback'/>

      <source file='/mnt/disks/vmdata/Windows_Test/vdisk1.img'/>

      <target dev='hdc' bus='virtio'/>

      <boot order='1'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>

    </disk>

    <controller type='usb' index='0'>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>

    </controller>

    <controller type='pci' index='0' model='pci-root'/>

    <controller type='virtio-serial' index='0'>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>

    </controller>

    <interface type='bridge'>

      <mac address='52:54:00:38:60:b2'/>

      <source bridge='br0'/>

      <model type='virtio'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>

    </interface>

    <serial type='pty'>

      <target port='0'/>

    </serial>

    <console type='pty'>

      <target type='serial' port='0'/>

    </console>

    <channel type='unix'>

      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/Windows_Test.org.qemu.guest_agent.0'/>

      <target type='virtio' name='org.qemu.guest_agent.0'/>

      <address type='virtio-serial' controller='0' bus='0' port='1'/>

    </channel>

    <input type='tablet' bus='usb'/>

    <input type='mouse' bus='ps2'/>

    <input type='keyboard' bus='ps2'/>

    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>

      <listen type='address' address='0.0.0.0'/>

    </graphics>

    <video>

      <model type='vmvga' vram='16384' heads='1'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>

    </video>

    <memballoon model='virtio'>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>

    </memballoon>

  </devices>

  <qemu:commandline>

    <qemu:arg value='-device'/>

    <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>

    <qemu:arg value='-device'/>

    <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on'/>

  </qemu:commandline>

</domain>

 

Looks like you have been playing manually here, I'd recommend against that.

 

You have both VNC and a passthrough GPU assigned to the VM, which is not supported and in general a bad idea.

However, you also don't have any input devices defined to control the VM once you remove the VNC part.

 

So as much as my edits below may help you, you won't be able to DO anything but see a pretty picture.

 

I would delete this VM, but not the image.

Add VM from the editor.

Set CPU/resources (ram) as you prefer.

Map the disk image you already have for this VM.

No need to map virtio, or install path.

Select your GPU, and sound card (I'd assume you'd want this, it is not in your XML now).

Select a USB devices or two for keyboard/mouse.

Start VM

 

You should be good!

 

Manually this looks to be your issues, but note you will have no way to control it without USB peripheral.

 

Remove this

 

 

    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>

      <listen type='address' address='0.0.0.0'/>

    </graphics>

    <video>

      <model type='vmvga' vram='16384' heads='1'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>

    </video>

 

Also maybe change this

 

  </devices>

  <qemu:commandline>

    <qemu:arg value='-device'/>

    <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>

    <qemu:arg value='-device'/>

    <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on'/>

  </qemu:commandline>

</domain>

 

To this

</devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/>
  </qemu:commandline>
</domain>

  • Author

The problem was indeed having both vnc with an additional GPU. Removed VNC and all is working. As for the original post, i am still having the Uefi boot problem. But hey, got everything working with Seabios.

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.