reluctantflux

Members
  • Posts

    187
  • Joined

  • Last visited

Everything posted by reluctantflux

  1. This vm was working fine with a different card (ATI). New card is Nvidia. No docker containers are running that share the cache drive. I did take a snapshot of the machine yesterday, but it was working fine earlier today after the snapshot but before the new vid card.
  2. Sooooo, I added a new video card, and bound it to my HTPC, and now my Disk Activity active time is 100%. Also, the average response time is crazy high, like 2000-30000ms. Has anyone seen anything crazy like this before? It's a qcow2 on my SSD cache drive.
  3. http://www.agix.com.au/blog/?p=2696 qemu-img convert -f raw -O qcow2 /home/libvirt/images/vmguest1.img /home/libvirt/images/vmguest1.qcow2 I'd probably make a copy of the .img file and then convert that guy. Realistically, it's copying your img to a new file anyway and the original img file should be untouched, but better safe than sorry.
  4. To run VM Manager: Install the VM manager plugin: https://raw.githubusercontent.com/dmacias72/vmMan/master/vmMan.plg Then install the Virtman Libvirt plugin: https://raw.githubusercontent.com/dmacias72/virtMan/master/virtMan.plg Then go to the Settings tab and start the virtMan setting. What format are your images in? I know KVM works best with .qcow2 image files. If it's not qcow2, you can probably convert it to qcow2. I did that from a VirtualBox .vdi image. For the containers, you set your "config" directory. Just locate that on the host and copy your config files into there. I've never done it, but I don't see why it wouldn't work as long as your permissions are set correctly.
  5. My guess is that the best config for 4 vcpus would be: 2 sockets, 2 cores, and 1 thread? Basically looking at an 8 vcpu setup. 2 for Unraid 2 for Win 8.1 WMC VM (pinned to cpu2,3) 2 sockets, 1 core, 1 thread 4 for Win 8.1 Gaming VM (pinned to cpu 4-7) 2 sockets, 2 cores, 1 thread (only on when needed) 4 for Win 8.1 Testing VM (pinned to cpu 4-7) 2 sockets, 2 cores, 1 thread (only on when needed) Testing and Gaming VM's would never be on at the same time. Would you recommend something different?
  6. From command line: qemu-img resize IMAGE.qcow2 +15GB Found here. You'll then have to expand the disk from the OS side, as well, since the additional space will be considered "unallocated".
  7. Is it possible to do 9P sharing with Windows 8.1? Is it worth it to do so if it is possible? What are Pros/Cons? Thanks!
  8. Quick question, does the vcpu drop down know how many vcpu's my machine has total, or just defaults to 16? I have an i7 4790, and figured I have only 8 vcpu's (hyperthreaded quadcore). Just curious if I have more virtual cores than I thought I did. Thanks.
  9. Upon quick research, having it set as Virtio instead of IDE supposedly significantly decreases CPU usage. Not sure if this is the same for hard drive passthrough or if it is set to SATA, but I figured it was a fresh image and just reinstalled to make sure it was using Virtio.
  10. Once I completed the install, I removed the Win81.iso from my xml, along with the <bootmenu> and <cdrom> entries from the <os> tag, and it booted up fine. I was curious if there was a performance difference if I set the SSD <disk> as a sata device instead of virtio. Oddly enough, I was able to boot with it set to Sata, but was then not able to go back to Virtio. I don't know if there will be a performance increase or decrease like this, but I'm going to leave it unless I notice significant issues.
  11. Yes, but it gives block level access to the SSD, so there's no qcow2 file or anything. So when I installed Windows 8.1, it created the NTFS file system on the actual SSD, instead of within an image file. I found this to have excellent performance just from my initial messing around (no tests run yet). The "source" should be pointed to your individual drive at /dev/disk/by-id folder instead of a /dev/sdx or whatever, because the sdx might change upon reboots. You'll also want to add to the <os> </os> section: <os> <boot dev='cdrom'/> <bootmenu enable='yes' timeout='3000'/>' </os> This seems necessary in order to be able to boot from an iso to do the initial install.
  12. I found a bug. If your file extension is in caps, VMman won't see it. I.E. Win81.ISO would show in the storage pool, but was not an option in the drop down for the "Create" tab. I changed it to Win81.iso and was then able to select it. Secondly, would it be possible in the Create VM section to select disks not mounted in the array? I did this to give my gaming VM direct access to a spare SSD I had. It would need to read the /dev/disk/by-id/ and add the following code to the xml file: <disk type='block' device='disk'> <source dev='/dev/disk/by-id/ata-Corsair_CSSD-F120GB2_1109650632000461003B' /> <target dev='hdc' bus='virtio' /> </disk> The following may also need to be added in order to install from an iso to the hard drive: <os> <boot dev='cdrom'/> <bootmenu enable='yes' timeout='3000'/>' </os> If not, no biggie. I know how to do it manually. Thanks for the great plugin!
  13. Just make sure your motherboard also supports VT-d. I bought a new processor, and I needed to install a new bios to get VT-d on the board to work, but it broke other things like my Sata controller cards, so make sure that your board supports it out of the box without specialized bios roms.
  14. Yeah, it'll display a boot menu for 3 seconds. For some reason, if I didn't have that, you don't have a chance to "hit any key to boot from DVD/CDRom", and it just moves on and stops at the no OS on Hard Disk spot.
  15. Success! I couldn't just change the boot device, I ended up having to have both <boot dev='cdrom'/> and <boot dev='hd'/> along with <bootmenu enable='yes timeout='3000'/> I've just now installed Windows 8.1 in about 2 1/2 minutes. This is so crazy and awesome! The <disk> stuff in red is what I added to the xml. VMmanager added the rest. So I added: <disk type='block' device='disk'> <source dev='/dev/disk/by-id/ata-Corsair_CSSD-F120GB2_1109650632000461003B' /> <target dev='hdc' bus='virtio' /> </disk> Along with adding the following to the <os> tag: <boot dev='cdrom'/> <bootmenu enable='yes' timeout='3000'/>'
  16. This is kind of easy. So my old bootable Windows SSD was attached to my VM by adding the following: <disk type='block' device='disk'> <source dev='/dev/disk/by-id/ata-Corsair_CSSD-F120GB2_1109650632000461003B' /> <target dev='hdc' bus='virtio' /> </disk> I set the /dev/disk/by-id/.... so that upon reboot, if my Corsair SSD ended up a different sdX, it would still work. I was able to boot the vm, and it tried to load windows, but then went into a bsod boot loop. This was to be expected, so I deleted the partitions on the disk using fdisk. Now, though, when I boot, it tries to boot from that drive, and then fails. For some reason, it doesn't see my .iso boot image. If I remove the hard drive from the xml, then the vm boots into the iso install. I'm not sure why it is not seeing my iso as a bootable device. Both are /dev/hdx devices in my xml. All my disk devices: <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/cache/iso/Win81Pro.iso'/> <target dev='hdb' bus='ide'/> <readonly/> <address type='drive' controller='0' bus='1' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/cache/iso/virtio-win-0.1-81.iso'/> <target dev='hdd' bus='ide'/> <readonly/> <address type='drive' controller='0' bus='1' target='0' unit='1'/> </disk> <disk type='block' device='disk'> <driver name='qemu' type='raw'/> <source dev='/dev/disk/by-id/ata-Corsair_CSSD-F120GB2_1109650632000461003B'/> <target dev='hdc' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk> Thoughts on how to get it to boot to my Win81.iso while still having my ssd attached?
  17. I'm having trouble finding any documentation on hard drive passthrough. Is this possible? I have an SSD that I would like to give direct passthrough to a VM with a GPU passthrough for optimal gaming performance. I'd rather not have it be an image on an SSD with a bunch of other processes running on it. Thanks!
  18. I gave it a shot tonight, and this is the error that VMman gave me: message: Error while starting domain: internal error: early end of file from monitor: possible problem: 2014-11-15T13:24:01.932705Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: failed to set iommu for container: Operation not permitted 2014-11-15T13:24:01.932720Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: failed to setup container for group 2 2014-11-15T13:24:01.932725Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: vfio: failed to get group 2 2014-11-15T13:24:01.932732Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device initialization failed. 2014-11-15T13:24:01.932738Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on: Device 'vfio-pci' could not be initialized I had simply changed my working xml with the following hardware passthrough: <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.1,bus=pcie.0'/> </qemu:commandline> to <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=00:02.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=00:03.0,bus=pcie.0'/> </qemu:commandline> My lspci -knn pertinent part is: 00:02.0 Display controller [0380]: Intel Corporation Haswell Integrated Graphics Controller [8086:0412] (rev 06) Subsystem: ASRock Incorporation Device [1849:0412] Kernel driver in use: vfio-pci 00:03.0 Audio device [0403]: Intel Corporation Haswell HD Audio Controller [8086:0c0c] (rev 06) Subsystem: ASRock Incorporation Device [1849:0c0c] Kernel driver in use: vfio-pci 01:00.0 VGA compatible controller [0300]: AMD/ATI [Advanced Micro Devices, Inc.] Cape Verde XT [Radeon HD 7770 GHz Edition] [1002:683d] Subsystem: PC Partner Limited Device [174b:e244] Kernel driver in use: vfio-pci 01:00.1 Audio device [0403]: AMD/ATI [Advanced Micro Devices, Inc.] Cape Verde/Pitcairn HDMI Audio [Radeon HD 7700/7800 Series] [1002:aab0] Subsystem: PC Partner Limited Device [174b:aab0] Kernel driver in use: vfio-pci My guess is that it has something to do because it's not actually within a PCI lane, hence binding it to vfio-pci driver isn't going to get it to work right. Anyway, thought I'd post my results in case it helps anyone else crack the elusive iGPU passthrough.
  19. Lowered the ram on my HTPC from 8GB to 6GB and now it is running (still can't see the screen cause I'm not home). Looks like it was a RAM issue, so looks like I'll have to upgrade my RAM sooner than later.
  20. So I created a new VM with just a VNC connection (no hardware passthrough), and he's not playing nice with my other VM. Basically, I can only have one of them running at a time. I have total RAM of 12GB, 2GB allocated to the new guy, 8GB allocated to the old guy, and 2GB for the host. I haven't done any vcpu pinning. XML of new Test VM: <domain type='kvm' id='24'> <name>Test Machine</name> <uuid>93299f8d-6272-fa38-2c7b-269948e7ec3a</uuid> <memory unit='KiB'>2097152</memory> <currentMemory unit='KiB'>2097152</currentMemory> <vcpu placement='static'>1</vcpu> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.1'>hvm</type> <boot dev='cdrom'/> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <pae/> </features> <clock offset='localtime'> <timer name='rtc' tickpolicy='catchup'/> <timer name='pit' tickpolicy='delay'/> <timer name='hpet' present='yes'/> </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='qcow2'/> <source file='/mnt/cache/vm/testmachine.qcow2'/> <backingStore/> <target dev='hda' bus='virtio'/> <alias name='virtio-disk0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/cache/iso/Halloweenpsycho Windows 8 Pro.iso'/> <backingStore/> <target dev='hdc' bus='ide'/> <readonly/> <alias name='ide0-1-0'/> <address type='drive' controller='0' bus='1' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/cache/iso/virtio-win-0.1-81.iso'/> <backingStore/> <target dev='hdd' bus='ide'/> <readonly/> <alias name='ide0-1-1'/> <address type='drive' controller='0' bus='1' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb0'/> <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='ide0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='bridge'> <mac address='52:54:00:84:9a:dc'/> <source bridge='br0'/> <target dev='vnet1'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/3'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/3'> <source path='/dev/pts/3'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <input type='tablet' bus='usb'> <alias name='input0'/> </input> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='5900' autoport='yes' websocket='5700' listen='0.0.0.0'> <listen type='address' address='0.0.0.0'/> </graphics> <video> <model type='cirrus' vram='9216' heads='1'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </memballoon> </devices> </domain> XML of HTPC VM with GPU and USB passthrough <domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> <name>WMC8.1</name> <uuid>554cbf6b-aa75-4044-b1b3-c1005bea6064</uuid> <memory unit='KiB'>7813120</memory> <currentMemory unit='KiB'>7812500</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>4</vcpu> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-q35-2.1'>hvm</type> <boot dev='hd'/> <bootmenu enable='no'/> </os> <features> <acpi/> <apic eoi='on'/> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='4' threads='1'/> </cpu> <clock offset='localtime'> <timer name='rtc' tickpolicy='catchup'/> <timer name='pit' tickpolicy='delay'/> <timer name='hpet' present='yes'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/mnt/cache/vm/WindowsMediaCenter.qcow2'/> <target dev='vdc' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='2'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/cache/iso/virtio-win-0.1-81.iso'/> <target dev='hdb' bus='ide'/> <readonly/> <address type='drive' controller='0' bus='1' target='0' unit='0'/> </disk> <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='dmi-to-pci-bridge'> <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/> </controller> <controller type='pci' index='2' model='pci-bridge'> <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/> </controller> <controller type='usb' index='0' model='ich9-ehci1'> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x7'/> </controller> <controller type='usb' index='0' model='ich9-uhci1'> <master startport='0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='usb' index='0' model='ich9-uhci2'> <master startport='2'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x1'/> </controller> <controller type='usb' index='0' model='ich9-uhci3'> <master startport='4'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x2'/> </controller> <controller type='ide' index='0'/> <interface type='bridge'> <mac address='52:54:00:14:b4:7b'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> </interface> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x046d'/> <product id='0xc52b'/> </source> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x046d'/> <product id='0xc50e'/> </source> </hostdev> <hostdev mode='subsystem' type='usb' managed='no'> <source> <vendor id='0x045e'/> <product id='0x006d'/> </source> </hostdev> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x02' slot='0x06' function='0x0'/> </memballoon> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.1,bus=pcie.0'/> </qemu:commandline> </domain> I'm not at home so I can't see what's happening with my HTPC, but with the Test VM running, I'll start my HTPC VM, and he'll say running for about 15 seconds and then he'll be shutoff. Am I missing something obvious? Thanks!
  21. I like it. It works great for gaming. I have some HDCP issues with my machine for Windows Media Center, though, that I'm not sure is card, driver, or something else related. It has worked great for me with hardware passthrough. No issues installing and running the drivers, nor any issues through rebooting. I did have some issues with Windows 7 where the HDMI audio would only output through stereo, and that was the driver issue I was mentioning where I had to use a specific legacy driver from Sapphire to get 7.1 sound. If I were to get a new card, I'd stick with AMD, but would probably get a different model. Sapphire seems like a reliable brand.
  22. I had an Asus EAH4850 that I really liked for a long time. I'm rocking a Sapphire Radeon HD 7770 now, though. I'd recommend downloading your drivers from Asus website instead of AMD. I had major sound issues with my Sapphire Radeon HD 7770 until I got the drivers from Sapphire instead of AMD.
  23. This is an overscan issue. You can fix it by installing your graphic card's drivers and changing the overscan in the advanced settings. Not from what I've seen. Marvell is a PITA, and only some chipsets work. So many troubles I ended up buying a new motherboard with enough Sata ports that didn't utilize the Marvell chipset at all. I realize this isn't a feasible solution for everyone. You may want to look at Sata controller cards. Compatible cards. I did buy a SYBA SI-PEX40071, but I haven't had a chance to install it as I'm doing a major data migration currently. Since this is a VM, it's not really seeing your motherboard hardware so you won't be able to install chipset drivers and whatnot. Use the vfio drivers and windows update for your exclamation point devices in device manager (except for hardware passthrough items like USB or discrete graphics card (which also probably contains your audio, if you passed that through as well). You should install Catalyst Control Center, as this will give you access to the Overscan settings, and better graphics card performance.
  24. Any idea what the current hangups are? I looked in my lspci and could find the intel audio device but not the video device. It's possible that I just need to make sure that the setting is set in the bios for it to run the igpu even when a discrete gpu is detected. Is it that it's too difficult to identify the iGPU, or when you set it to passthrough, it just doesn't work, or doesn't sustain through reboots?
  25. Now that I have a stable HTPC VM, I'm looking at moving the HTPC to the iGPU and creating a new VM for as a gaming machine using my discrete card. Has anyone had any success at all getting iGPU passthrough working? Is it just not possible on the current kernel?