Open baldrianbandit opened 1 year ago
I don't have much knowledge about this CAD stuff but maybe you find some "inspiration" :wink: here: Autodesk-Fusion-360-for-Linux - Shedding some light on various problems
So my first thought would be to try out the very experimental Wayland port of Wine. However, at the moment, as far I know, Gallium Nine is not Wayland compliant, so DXVK has to be used. But that would trigger then another bug in Wine, the missing DXVK "child support".
And finally, perhaps there exist the chance that also a native Windows dll file will improve the situation? Ergo I would also check what the overall behavior is with a native gdiplus.dll file. (But don't use the stone old variant from winetricks.)
Nine doesn't create the X windows, it's done by wine. However we do listen on the X drawable and other stuff to present content. The issue doesn't occur with normal wine ?
I don't see anything obvious in the code. We should free the connections. Activating debug infos should help figure out what is going on (@dhewg do you remember what is needed to enable all debug info in the wine nine standalone ?)
The CAD software Altium Designer runs out of the box with recent wine-8.6 builds. Switching on gallium-nine improves 3D performance by a great deal.
The actual issue: While zooming in and out in 3D view, new connections to the X server are made, but never closed. I watch their number increasing by employing
watch -n 1 "lsof -p $(pidof Xorg) | wc -l"
When reaching a total of 512 (~200 by CAD), the X server won't allow any more connections, also suppressing further 3D rendering of the CAD software. Running it with gallium-nine disabled, the number of connections keeps low at a total of 380 (~30 by CAD).
Intel i7-8650U w/ integrated graphics 6.2.12-arch1-1 wine-8.6.1 gallium-0.9.0.396 installed via winetricks gallium-0.10.0.404-devel via AUR