VirtioFS Support Page


Recommended Posts

49 minutes ago, mackid1993 said:

So maybe it's a qemu issue or something with Unraid.

 

It's not limited to unraid.  I have the issue with opensuse tumbleweed as the host.  I have not seen any change across multiple version upgrades.  Currently my qemu version is 8.1.2.

 

I'm also not sure how it could be caused by qemu, as that's running on the host.  The memory leak is inside of the windows guest OS, so it seems to me that it has to be caused by the virtio-win kernel driver, or winfsp.

Edited by christophocles
  • Thanks 1
Link to comment
On 11/15/2023 at 7:41 AM, christophocles said:

 

 

Oh cool, someone actually read my reddit post.  It would have been even cooler if one of you guys had left a comment linking back to this thread for further discussion 😀.  So here we are 7 months later, I have more data to share.

 

I am 99% sure this has nothing to do with refs.sys.  If you do a case-insensitive search for mmdi you will see the actual string it finds in refs.sys: MmDisableModifiedWriteOfSection.  So it's not really a match to that pool name.

 

There's a thread on superuser that describes more methods for hunting down these non-paged pool leaks.   Note where it says: 

 

 

Mmdi is found in pooltag.txt so you actually have to use xperf and wpa for further debug.  Following the method described there, I captured a snapshot of memory growth, opened it in wpa, loaded symbols, and expanded the Mmdi pool to find stack references to winfsp-x64.dll and virtiofs.exe.  So there's the smoking gun, one of these drivers is the culprit.

 

I upgraded to the latest versions of WinFSP (2.0) and Virtio-win guest tools (0.1.240) and the leak is still active.

 

 

 

findstr mmdi.jpg

xperf wpa nonpaged mmdi.jpg

viofs driver versions.jpg

@SimonF, this post explains the issue way better than I can. Maybe you can open an issue, I'm guessing with the Virtio win driver team?

Edited by mackid1993
  • Like 1
Link to comment
1 hour ago, christophocles said:

 

It's not limited to unraid.  I have the issue with opensuse tumbleweed as the host.  I have not seen any change across multiple version upgrades.  Currently my qemu version is 8.1.2.

 

I'm also not sure how it could be caused by qemu, as that's running on the host.  The memory leak is inside of the windows guest OS, so it seems to me that it has to be caused by the virtio-win kernel driver, or winfsp.

@mackid1993

 

Created this issue, Christoph, please add additional comments as required.

 

https://github.com/virtio-win/kvm-guest-drivers-windows/issues/1004

  • Like 2
Link to comment
5 hours ago, christophocles said:

 

I added more supporting info and I also submitted a bug report for WinFsp.

 

https://github.com/winfsp/winfsp/issues/534

Thanks for filling this out and explaining the issue so well. Hopefully one of these teams will patch it. I'm betting its Virtio-win's problem as WinFSP is used in a lot of projects and is pretty stable. I use it with Cryptomator with no issue.

Link to comment
On 12/2/2023 at 3:30 PM, christophocles said:

 

I added more supporting info and I also submitted a bug report for WinFsp.

 

https://github.com/winfsp/winfsp/issues/534

Seems like it's a Virtio driver issue. Winfsp closed their report and provided a pretty good explanation. Hopefully the virtio-win team can reproduce and fix this and hopefully in the next driver release we'll finally be able to use VirtioFS.

Link to comment
  • 5 weeks later...

The new VirtoFS Windows driver can be downloaded here. To use it you have to enable driver test mode at an admin command prompt with

bcdedit /set testsigning on

 

I also went into certmgr and added viofs.cat to Trusted Root Certification Authorities and Trusted Publishers.

 

If the watermark bothers you, this little tool makes it go away: https://winaero.com/download-universal-watermark-disabler/

 

It's useful until this fix is released with the newest Virtio drivers per the Virtio-win team.

 

Once the new drivers are released uninstall the watermark removal tool and turn off testsigning:

 

bcdedit /set testsigning off

 

It seems that after further testing the Virto-win team fixed the leak: https://github.com/virtio-win/kvm-guest-drivers-windows/pull/1022

 

I made a copy of these drivers so if they disappear someone ping me and I can share a new link.

 

@SimonF and @christophocles thank you for all of your help with this!

Edited by mackid1993
more info
  • Thanks 1
Link to comment
2 minutes ago, SimonF said:

As @mackid1993 has been testing along with some others on the github issue it looks like they have fixed the issue.

 

Hopefully in the next week or so a new virtio cd will be released with the new driver.

 

@mackid1993 are you using the rust version for the host?

I'm just using stock Unraid, no rust. I'm on 6.12.6 with the test driver and it's very stable.

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.