Jump to content

[6.9.2] Win10 VM XML file being massively changed/corrupted by unRAID


Recommended Posts

I've spent about 2 solid days trying to get a WIn10 "Daily Driver" VM to work consistently with GPU and other device pass-through - and I've experienced just about every issue in the book. I finally got it sorta working - though I had to abandon passthrough of a AMD 5700XT card in favor of a GTX 1080 - but now I've run into a repeatable/consistent problem which completely breaks my VM.

 

That is - if I make a single change via the unRAID web GUI to the VM (while VM is off), unRAID significantly changes the XML version of the VM config and breaks the VM (fails to boot).

 

Info on my setup:

Ryzen 3700X CPU

msi tomahawk b550 mobo

Quadro P2000 in MAIN PCIe mobo slot - for unRAID terminal output and Plex transcoding

GTX 1080 in 2nd PCIe slot - used for win10 VM passthrough

OS is a sorta old Win10 LTSC iso that will NOT boot with UEFI - it only boots for some reason with SeaBIOS - but it does work.

 

So - I make a VM by clicking the Win10 VM template and entering all my info - VM works great - see image below:

Win10WORKS.thumb.PNG.1ad2e270a0d6b3f842637b5497d4a85f.PNG

 

Now - if I stop the VM, edit the VM by one item - lets say removing one of the cores as in this below screenshot - and try to restart, the VM breaks / will not boot at all. The vDisk remains ok, and if I make a brand new Win10 VM with the template and same settings as in the original working VM, all is good and it boots again.

 

Win10FAILSwithCoreChange.thumb.PNG.bbf4f77904369d5898bb60b456bd0539.PNG

 

I noticed some changes in the XML view between the single change config and the "pure config", so I saved the two XML files and diffed them in VScode. They're hugely different - I have no clue what actual line or lines are causing the VM to fail to boot, but why would the configs be changing so much with only a single change from the gui?

 

For instance, every reference to "alias" has been removed from the config where I changed one thing from the web GUI.

 

Diff image 1:

 

DiffImage1.thumb.PNG.7b7793c9d6b4f33f8f923ac6c14723d4.PNG

 

Diff image 2:

 

DiffImage2.thumb.PNG.d94fc40fbf39d3b194660d9c50667cdc.PNG

 

The two full XML files should also be attached if anyone wants to diff them separately.

 

Any reason this would be happening? I literally can't make changes to the VM after it's been created without it failing to boot on the next startup.

 

 

workingXML.xml removedOneCPUWTF.xml

Link to comment

Yes I read that occurs - but my only manual change to the default XML was to adjust the GPU config section so pass-through worked properly. This doesn't explain the other massive XML changes that happened between the "GUI change" and the original?

 

My 1st edit of the default XML:

<hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>

      <driver name='vfio'/>

      <source>

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

      </source>

      <alias name='hostdev0'/>

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

    </hostdev>

    <hostdev mode='subsystem' type='pci' managed='yes'>

      <driver name='vfio'/>

      <source>

        <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/>

      </source>

      <alias name='hostdev1'/>

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

    </hostdev>

 

XML AFTER a single "web GUI" edit unrelated to the GPU at all:

    <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>

      <driver name='vfio'/>

      <source>

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

      </source>

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

    </hostdev>

    <hostdev mode='subsystem' type='pci' managed='yes'>

      <driver name='vfio'/>

      <source>

        <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/>

      </source>

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

    </hostdev>

Link to comment

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.

×
×
  • Create New...