December 13, 201510 yr I successfully passed through a 2-port SATA controller to a Windows 10 VM by adding pci-stub.ids=1b21:0612 to my syslinux.cfg default /syslinux/menu.c32 menu title Lime Technology prompt 0 timeout 50 label unRAID OS menu default kernel /bzimage append isolcpus=2,3 pci-stub.ids=1b21:0612 initrd=/bzroot label unRAID OS Safe Mode (no plugins) kernel /bzimage append initrd=/bzroot unraidsafemode label Memtest86+ kernel /memtest And replacing the XML section for vdisk1.img with the Sata Controler: <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </source> </hostdev> I loaded the Balloon, NetKVM, and vioSerial virtIO drivers. Windows picked up the SSD as it should have, without vioStor. The installer quickly proceeded to its first reboot, but instead of rebooting and continuing Windows setup, I receive "boot failed - Windows Boot Manager" What do I need to do to boot from the SSD by default? Complete XML below: <domain type='kvm' id='2'> <name>W10_2core</name> <uuid>d76c51cf-d6a9-84e7-56f8-1b0b4fb14e30</uuid> <metadata> <vmtemplate name="Custom" icon="windows.png" os="windows"/> </metadata> <memory unit='KiB'>10485760</memory> <currentMemory unit='KiB'>10485760</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>2</vcpu> <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> <emulatorpin cpuset='0-1'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type> <loader type='pflash'>/usr/share/qemu/ovmf-x64/OVMF-pure-efi.fd</loader> <boot dev='hd'/> </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='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/ISO/Windows10/Windows12112015.iso'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/ISO/VirtIO/virtio0.1.109.iso'/> <backingStore/> <target dev='hdb' bus='ide'/> <readonly/> <alias name='ide0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:bf:19:a7'/> <source bridge='virbr0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/W10_2core.org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </source> <alias name='hostdev0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <alias name='hostdev1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/> </source> <alias name='hostdev2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x046d'/> <product id='0xc01d'/> <address bus='1' device='5'/> </source> <alias name='hostdev3'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x045e'/> <product id='0x00dd'/> <address bus='1' device='4'/> </source> <alias name='hostdev4'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </memballoon> </devices> </domain>
December 18, 201510 yr Author Yep. Clearly don't know what I'm doing here. Tried SeaBios instead of OVFM, and besides being very slow to boot windows setup, Windows would not install to the SSD, saying it the "system did not support booting from this disk" and to "check that the controller is enabled in bios" Am I not able to pass a SATA controller through and boot from the attached SSD?
December 18, 201510 yr I had the exact same issue with a H310 SAS controller. I couldnt get windows to see the SSD on the controller, but i suspect that was a driver issue. I did however get through an ubuntu installation, but couldnt select the SSD as a boot device once the installation finished. I gave up soon after and reverted back to a working setup. not the reply you were hoping for, but if you do get any helpful responses, i'll be using the info for my own setup and will report back with any results.
December 30, 201510 yr I think i got almost the same problem! Running on a AsRock Z77 Pro4m. I set up a win7 vm and im able to passthrough the onboard sound and the sata ASM1062 controler. How to make the VM boot from the sata controller attached ssd?
December 31, 201510 yr Reading up, I don't think it's possible. The only way I can see this working is a bootloader on a normal vm disk that can then boot off a passed through controller. I've not done any testing to verify though, but if I went down this route again, that would be the approach I'd take
January 1, 201610 yr Author My original intent with this build was to pass through a 2 port controller with SSD and Bluray drive to a Windows 10 VM. I gave up, using the wonderful makemkv docker for the Bluray and ssd as cache (though I also played with the SSD mounted outside the array with the Unassigned devices plugin).
Archived
This topic is now archived and is closed to further replies.