Hi Maaz,

Yes, it is set up here now.

One practical detail: 26.1.7 never reached this machine. Arch upgraded us from 26.1.6 to 26.2.0 in one step on 17 August, so rather than the release I am using the build we made on 7 August, which is 26.1.6 with your commit 2ed36c6 applied. I diffed that tree against the mesa-26.1.7 tag: src/gallium/winsys/svga/ and src/gallium/drivers/svga/ are identical, so for the svga paths it is that version. Our vmwgfx module reports 2.21.0.0, so have_drm_2_21 is true and the new branch is the one that runs.

Results will take a day or two, and I would rather explain why than send you a number too early. With 3D enabled our leak has run between 5 and 161 MB/hour, and the debugfs counter we track is logged in 10 MB steps, so a short window cannot resolve it. A ten-minute run last night came out flat, which says nothing either way. I will run a multi-hour window on stock mesa and an identical window on the patched build, under the same synthetic render load, and send you both.

Two things you may want to know in the meantime.

First, mesa 26.2.0 does not contain your fix. It was tagged on 5 August, a week before 26.1.7, so it predates the backport:

  mesa-26.1.6         29 Jul 2026   absent
  mesa-26.2.0         05 Aug 2026   absent    (what Arch ships today)
  mesa-26.1.7         12 Aug 2026   present
  origin/staging/26.2               present
  origin/main                       present

In the 26.2.0 tree, vmw_screen_dri.c:331 still reads

  ret = drmPrimeHandleToFD(vws->ioctl.drm_fd, vsrf->sid, ...)

staging/26.2 and main both carry the fix, so 26.2.1 should bring it along. Until then every distribution that moves from 26.1.7 to 26.2.0 loses it again.

Second, enabling 3D on 26.2.0 took our desktop down, in the dmabuf path:

  dmabuf import failed to mmap: Invalid argument   (x4)
plasma-plasmashell.service: Main process exited, code=dumped, status=11/SEGV

There is one reliable way to trigger it: hovering the mouse over a task manager icon of a running window, so that Plasma raises the window thumbnail preview. That killed plasmashell every single time. As long as we stayed away from those icons the session looked stable. A thumbnail preview is a dmabuf import of another client's buffer, which fits the error above.

Once it starts, systemd restarts plasmashell, the shell rebuilds the panel and dies again: three crashes within eight seconds, then the restart limit gave up and we were left with an empty desktop. A manual restart behaved the same way.

The precondition is 3D enabled together with LIBGL_ALWAYS_SOFTWARE=1, which is the configuration in our original report of 5 August. Removing that variable, so the session really runs on svga, makes it stable: the same hover over the same icons is now uneventful, and the desktop has been up since.

I am not claiming your fix addresses that. We have not tested it, and this was on 26.2.0, which does not have it. But it is the same handle export path and it is now reproducible on demand here, which it was not before. If a backtrace or an strace of the failing mmap would help, say the word.

Finally, a small thing in the patch itself, which does not affect us since we are on 2.21: in vmw_drm_surface_get_handle(), ret is declared uninitialised, and when have_drm_2_21 is false while vsrf->buf is non-NULL neither branch assigns it. The following "if (ret)" then reads an indeterminate value.


Best regards,
Jellis

Op 18-08-2026 om 00:02 schreef Maaz Mombasawala:
For the 3D enabled case, that sounds a lot like the memory leak for which I 
submitted the
fix to mesa recently. The fix has been included in mesa version 26.1.7, could 
you try with
that version? I see you're using mesa 26.1.6 right now.




Reply via email to