I'm having issues adding my 8TB USB drive to a MacOS High Sierra guest. First I tried adding the USB device, but that only works for USB 2 devices. Then I tried adding the PCI device, but there are other devices that cannot be added in the IOMMU group. Then I tried adding the SCSI device for the drive, but the virtual machine doesn't start with the SCSI device added. Here is some of my XML file:
<emulator>/usr/local/sbin/qemu</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='raw' cache='writeback'/>
<source file='/mnt/user/domains/macOS/vdisk2.img'/>
<target dev='hdd' bus='sata'/>
<address type='drive' controller='0' bus='0' target='0' unit='3'/>
</disk>
<disk type='block' device='lun' rawio='no' sgio='filtered'>
<driver name='qemu' type='raw'/>
<source dev='/dev/sda'/>
<target dev='sda' bus='scsi'/>
<address type='drive' controller='3' bus='0' target='0' unit='0'/>
</disk>
<controller type='sata' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
</controller>
<controller type='scsi' index='0'>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</controller>
<controller type='scsi' index='1'>
<address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</controller>
<controller type='scsi' index='2'>
<address type='pci' domain='0x0000' bus='0x08' slot='0x00' function='0x0'/>
</controller>
<controller type='scsi' index='3' model='virtio-scsi'>
<address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
</controller>
Here is the log for the VM:
2017-12-31 19:05:11.628+0000: starting up libvirt version: 3.8.0, qemu version: 2.10.1, hostname: Tower
LC_ALL=C PATH=/bin:/sbin:/usr/bin:/usr/sbin HOME=/ QEMU_AUDIO_DRV=none /usr/local/sbin/qemu -name guest=macOS,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-14-macOS/master-key.aes -machine pc-q35-2.10,accel=kvm,usb=off,dump-guest-core=off,mem-merge=off -cpu host -drive file=/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd,if=pflash,format=raw,unit=0,readonly=on -drive file=/etc/libvirt/qemu/nvram/33f01bfd-1db9-ee18-892e-c2fafdbac8bc_VARS-pure-efi.fd,if=pflash,format=raw,unit=1 -m 6144 -realtime mlock=off -smp 8,sockets=1,cores=8,threads=1 -uuid 33f01bfd-1db9-ee18-892e-c2fafdbac8bc -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-14-macOS/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -boot strict=on -device pcie-root-port,port=0x10,chassis=1,id=pci.1,busat=raw,if=none,id=drive-scsi3-0-0-0 -device scsi-block,bus=scsi3.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi3-0-0-0,id=scsi3-0-0-0 -netdev tap,fd=26,id=hostnet0 -device e1000-82545em,netdev=hostnet0,id=net0,mac=52:54:00:85:ac:52,bus=pci.2,addr=0x0 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channel/target/domain-14-macOS/org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 -device usb-tablet,id=input0,bus=usb.0,port=2 -vnc 0.0.0.0:0,websocket=5700 -k en-us -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1 -device virtio-balloon-pci,id=balloon0,bus=pci.3,addr=0x0 -usb -device usb-mouse,bus=usb-bus.0 -device usb-kbd,bus=usb-bus.0 -smbios type=2 -cpu Penryn,vendor=GenuineIntel,kvm=on,+invtsc,vmware-cpuid-freq=on, -msg timestamp=on
2017-12-31 19:05:11.628+0000: Domain id=14 is tainted: high-privileges
2017-12-31 19:05:11.628+0000: Domain id=14 is tainted: custom-argv
2017-12-31 19:05:11.628+0000: Domain id=14 is tainted: host-cpu
2017-12-31 19:05:11.659+0000: shutting down, reason=failed
I am at my wit's end here. I made the VM so I could prepare a backup disk for remote backup with a Mac backend, and since the initial backup is terrabytes, I really need to get this working.