unraid 6.x problem running/using VM's with win7/10.


amstel

Recommended Posts

Hello,

 

for quite time that I'm using the KVM feature to run vm's in VNC mode.

 

not long ago I've switched to passthrugh option and I'm encountering many problems.

 

When rebooting, shutting down, or just like that in idle state,

the VM freezes and so do the Unraid machine.

 

The VM image is on the cache drive (EVO 840 250GB).

passing thru GT610.

Windows 7/10 doing the same.

Only buttoned shutdown solves it, SSH nor console isn't working.

 

HW is:

CPU: i3-6100

MB: Asus B150M-C

RAM: 8GB DDR4

GPU: nVidia GT610

 

 

 

so? what could be the issue?

tried already all the combinations of seabios/ovmf,

Hyper-V set to NO (tried also with YES),

tried machine i440fx/Q35.

tried Emulated (QEMU64)/Host passthrough.

tried with 2/3/4 cpus.

using 5GB of RAM.

 

 

any thoughts?

is it a problem with the nVidia GPU?

is there a wrong settings?

 

will getting AMD Radeon will do the same or solve the problem?

 

Thanks.

Link to comment

hello

 

i didn;t understand what is the problem you are encountering (or the "many problems"). i assume you cannot start the Vm properly, or you can start it only once, or it's unstable.

 

 

few things to consider:

1) go over the pinned post with the CPU pinning. you will find do's and dont's.

Try to use single CPU - cpu0 for that Windows VM, till installation completes. then once is fine, allocate more cpu's.

sometimes you will require also to put it to cpu0, for updates of windows os to succeed (i know, these updates are very hard to control their occurence).

 

2)

try to dump the rom for that GPU card. then add it's rom file in the xml.

 

adding the rom solved an issue with my 550ti card, where the VM could only start once per unraid box restart. any consequent try would fail...

 

see more here:

http://lime-technology.com/forum/index.php?topic=52960.msg535568#msg535568

 

Go over also the OP from gridrunner to see the guide...

 

good luck

-d

Link to comment

hey,

10 for the reply.

 

I followed the pinned post and took the rom from the GPU,

but that didn't help.

 

couldn't run the VM after at all...

 

maybe I need to create a new fresh VM and start it with the rom itself?

 

does the best option to run a VM is to use an AMD GPU?

 

Thanks.

Link to comment

this is my XML:

 

<domain type='kvm'>
  <name>Windows 10</name>
  <uuid>2b14e8e3-b778-6707-280d-57587907b6e1</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/>
  </metadata>
  <memory unit='KiB'>4194304</memory>
  <currentMemory unit='KiB'>4194304</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </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.7'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='1' threads='2'/>
  </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/local/sbin/qemu</emulator>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/mnt/user/2TB/Downloads/Programs/virtio-win-0.1.126-2.iso'/>
      <target dev='hdb' bus='sata'/>
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='1'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/vms/Windows 10/vdisk1.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'/>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </controller>
    <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:ac:2a:fc'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
      </source>
      <rom file='/mnt/user/2TB/gt610.dump'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x045e'/>
        <product id='0x0083'/>
      </source>
      <address type='usb' bus='0' port='1'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x04b3'/>
        <product id='0x3025'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </memballoon>
  </devices>
</domain>

 

 

I've tried afresh VM but it won't start at all.

Link to comment

Copy the rom line from the xml and any other manual edits (none?)

Edit the VM and to leave only cpu0 assigned

Add back the rom line and any other manual edits that you require...

 

Give it a try...

 

My GTX 550ti has similar issue (but unraid does not crash) - i cannot pass it through to a windows VM.

linux mint same, also elementary i believe have same / similar issue. Fedora, ubuntu gnome were ok...

gtx 1060 works without an issue to passthrough ...

Link to comment

hey,

10 for the reply.

 

I followed the pinned post and took the rom from the GPU,

but that didn't help.

 

couldn't run the VM after at all...

 

maybe I need to create a new fresh VM and start it with the rom itself?

 

does the best option to run a VM is to use an AMD GPU?

 

Thanks.

 

Enable the integrated graphics option on your motherboard BIOS IGP option.

 

This way it can free up the GT610 for passthrough.

 

 

Link to comment

hey,

10 for the reply.

 

I followed the pinned post and took the rom from the GPU,

but that didn't help.

 

couldn't run the VM after at all...

 

maybe I need to create a new fresh VM and start it with the rom itself?

 

does the best option to run a VM is to use an AMD GPU?

 

Thanks.

 

Enable the integrated graphics option on your motherboard BIOS IGP option.

 

This way it can free up the GT610 for passthrough.

 

I'm in the bios,

the closest thing to IGP is:

iGPU Multi-Monitor, that is enabled.

 

maybe resetting the bios's configuration will do something.

Link to comment

No not multi monitor.

 

Your Intel CPU i3-6100 has iris 530. This MUST be the priority for boot device. One of two options, check your manual.

 

Put HDMI into motherboard IO socket not gpu. Test monitor/TV signal. If it shows unRAID booting then it's working.

 

Select you GT610 in VM template. Start VM. Swap HDMI cable to GPU socket. Check monitor/TV

 

Careful don't touch HDMI plug to chassis metal. I blew a power supply doing that once :-(

 

 

Link to comment

No not multi monitor.

 

Your Intel CPU i3-6100 has iris 530. This MUST be the priority for boot device. One of two options, check your manual.

 

Put HDMI into motherboard IO socket not gpu. Test monitor/TV signal. If it shows unRAID booting then it's working.

 

Select you GT610 in VM template. Start VM. Swap HDMI cable to GPU socket. Check monitor/TV

 

Careful don't touch HDMI plug to chassis metal. I blew a power supply doing that once :-(

 

 

done that, still not working.

now I can describe 3 scenarios that happening:

1. old VM with mint linux is loading and working as before, also with the new <rom.../> line.

 

2. old VM with win10 is loading, but streams nothing to the screen.

instead it simulates some 800*600 pixels device with not actual screen.

I've figure that out thanks to the Teamviewer that was installed there.

after starting the VM, I logged to that VM and it showed me that little virtual screen instead of the normal resolution.

once I got into the device manager, it shows that there is a problem with the nvidia card.

I've updated the drivers, but still the same behaviour.

 

3. new VM with win10 is not loading at all.

I guess that it has something to do with previous problem, just here I cannot log with Teamviewer.

 

 

any other solution??

 

 

Link to comment

Has it given you the option to start installing windows 10?

Via VNC

 

So the Linux mint install VM is running with your GPU passed through? Or is that vnc?

 

 

Windows is running well via VNC.

 

the Linux mint VM is running with the GPU passthrugh and also vnc.

Link to comment

The only time i have seen my gtx980 show error in device manager is when it couldnt passthrough the card properly. supermicro bios option to prioritise IGP solved this issue and windows let me install current nVidia drivers no probs.

 

The only way you can passthrough the GT610 when using Linux Mint is to configure the dumped rom file in the template?

 

what options does the graphics passthrough menu in the Win10 template show?

 

Iam reaching my experience limit here.

 

 

Link to comment

well,

 

I have downloaded another rom file for my GPU,

and it now passing through the GPU.

 

but,

the problem has not solved.

 

started my win10 VM,

it had to update the windows to 1607 version, but it crashes each reboot.

also tried to use only cpu0, like mentioned here:

https://lime-technology.com/forum/index.php?topic=56407.0

without any success.

 

so I made a new win10 from scratch,

it crashes after completing the installation and doing a restart..

 

any other ideas?!!??

Link to comment

amstel, not sure what is best advice.

as i understood, amd gpu's does not need this trick with the rom, will pass through directly while being in 1st slot...

also, so far only amd has a single-slot modern graphics card (his and xfx) if this matter to you. just an example below:

http://xfxforce.com/en-us/products/amd-radeon-rx-400-series/rx-460-2gb-sf-rx-460p2tfg5

 

While browsing the forum, did you find somebody with reporting windows 10 with an old gpu like 610? (i don't remember)

my 550ti also has some issues, so i have limited success with it. win 10 not working at all with 550ti, and because of this issue, i am currently using win 10 with 1060 (first slot).

That's the reason why i'm getting a small 1050ti, to replace my 550ti and get rid of this annoyance.

-d

 

Link to comment

amstel, not sure what is best advice.

as i understood, amd gpu's does not need this trick with the rom, will pass through directly while being in 1st slot...

also, so far only amd has a single-slot modern graphics card (his and xfx) if this matter to you. just an example below:

http://xfxforce.com/en-us/products/amd-radeon-rx-400-series/rx-460-2gb-sf-rx-460p2tfg5

 

While browsing the forum, did you find somebody with reporting windows 10 with an old gpu like 610? (i don't remember)

my 550ti also has some issues, so i have limited success with it. win 10 not working at all with 550ti, and because of this issue, i am currently using win 10 with 1060 (first slot).

That's the reason why i'm getting a small 1050ti, to replace my 550ti and get rid of this annoyance.

-d

 

think of getting gtx 1060 :-)

 

does the VM uses the GPU RAM for other then gaming?

 

which would you recommend:

EVGA GTX 1060 6GB

or

Radeon RX 480 8GB

?

 

I plan of using constant of 2-3 monitor for daily use (not gaming)

and for home steam gaming (if that is possible) to another PC or TV.

and also for 1080p gaming in the monitor's them self.

Link to comment

do you have already a modern card? if yes, buy from same from team...

in this way, if you need to switch them among the vm's, you won't need to worry about drivers.

 

before switching to unraid, i happen to switch my 2 cards from time to time, and windows would accept the "new" card without complaining.

if you have gpu's from both the teams (e.g. amd + nvidia) then you have more work with driver's configuration when switching the assigned cards to your vm's

 

1060 vs 480 - really not in position to provide an unbiased opinion - since i did't try them both...

 

Link to comment

do you have already a modern card? if yes, buy from same from team...

in this way, if you need to switch them among the vm's, you won't need to worry about drivers.

 

before switching to unraid, i happen to switch my 2 cards from time to time, and windows would accept the "new" card without complaining.

if you have gpu's from both the teams (e.g. amd + nvidia) then you have more work with driver's configuration when switching the assigned cards to your vm's

 

1060 vs 480 - really not in position to provide an unbiased opinion - since i did't try them both...

 

no,

I do not have another card, except for this nvidia GT610 that is not working well...

I don't really care whether it would be an AMD or Nvidia card,

as long as it would fit and work well with my unRAID machine's VM.

Link to comment

Hey, I´d the same problem last year with my old GTX 480. There is no fix for this problem!

I talked with NVIDIA and they said there are some issues with the cards. Normally you shutdown your card with the shutdown command in windows. Now your power supply also shuts down and your graphic card is completely currentless (reset!). Unraid doesn´t have this option, because you only shut down the vm. After the shutdown command in the vm, your GPU still have power. Here is the fault, now you wanna restart or start your vm again, but the GPU can´t start again, because there was no reset. The card have to do this itself.

 

NVIDIA said they have solved the problem in newer generation of their cards.

Here is a small list of GPUs that work.

 

HD4870

HD4890

HD7970

GTX770

GTX670

GTX980ti

 

Link to comment

Hey, I´d the same problem last year with my old GTX 480. There is no fix for this problem!

I talked with NVIDIA and they said there are some issues with the cards. Normally you shutdown your card with the shutdown command in windows. Now your power supply also shuts down and your graphic card is completely currentless (reset!). Unraid doesn´t have this option, because you only shut down the vm. After the shutdown command in the vm, your GPU still have power. Here is the fault, now you wanna restart or start your vm again, but the GPU can´t start again, because there was no reset. The card have to do this itself.

 

NVIDIA said they have solved the problem in newer generation of their cards.

Here is a small list of GPUs that work.

 

HD4870

HD4890

HD7970

GTX770

GTX670

GTX980ti

 

at least i was lucky and made it work...

i had the same problem with my 550ti (e.g. not able to retart the VM using 550ti as passthrough and had to restart entire box).

Then i used the rom for the 550ti, even if 550ti placed in second slot, and was able to restart the respective VM's using the 550ti, without having to restart the entire unraid box.

Without rom, i had to restart entire box...

 

So i suspect that if amstel is able to take the dump from the 610, or to find a rom that will work, then this problem might be solved.

 

See this thread with the limitations faced by me while working with 550ti

http://lime-technology.com/forum/index.php?topic=52960.msg535568#msg535568

-d

Link to comment
  • 7 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.