Files
termux-packages/packages/mesa/0009-disable-resource_create_front-for-vtest.patch
termux-pacman-bot 75621753b2 bump(main/mesa): 25.2.4
- Fixes https://github.com/termux/termux-packages/issues/26526

- Fixes https://github.com/termux/termux-packages/issues/25371

- All patches seemed to only need minor rebasing and no other errors

- Tested working on Samsung Galaxy S9 SM-G960U with Adreno 630

- Add unofficial Adreno 710+720 support found here https://gitlab.freedesktop.org/mesa/mesa/-/issues/13036 and here db9f6d0b31

- After 3294cad341, a new change is required in order to preserve GPU acceleration in the edge case of **EGL+Zink+Turnip+Termux:X11+Adreno 630**. I have named this change `0018-preserve-egl-support-in-zink.patch` and it is an original creation based on my ~2 years of experience developing EGL software for running inside Termux:X11 on Samsung Galaxy S9 SM-G96U with Adreno 630. **Unfortunately, I do not know what the effects of this patch will be on other devices that I do not have, so please tell me ASAP if it appears to break Zink on your device**.

- After 622612f67e, the default behavior of Zink is to enable the "general layout" mode whenever Turnip is detected. In testing in Termux:X11 on Samsung Galaxy A70 SM-A705FN, that change is incorrect and results in severe artifacts in Firefox when Firefox has `gfx.webrender.all=true` and `gfx.x11-egl.force-disabled=true` set in `about:config`, so `0019-disable-general-layout-in-zink-for-turnip.patch` must be created to forcibly stop Zink from enabling "general layout" mode when Turnip is detected.
2025-10-14 16:41:06 +00:00

20 lines
851 B
Diff

This reverts https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11714,
which implements resource_create_front for vtest.
It breaks `glxinfo` with `virglrenderer-android`.
--- a/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c
+++ b/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c
@@ -369,7 +369,11 @@ virgl_vtest_winsys_resource_create(struct virgl_winsys *vws,
}
res->res_handle = new_handle;
+#ifndef __TERMUX__
if (map_front_private && res->ptr && res->dt) {
+#else
+ if (map_front_private && res->ptr && res->dt && getenv("TERMUX_ENABLE_GLXCOPYSUBBUFFERMESA_FOR_VTEST")) {
+#endif
void *dt_map = vtws->sws->displaytarget_map(vtws->sws, res->dt, PIPE_MAP_READ_WRITE);
uint32_t shm_stride = util_format_get_stride(res->format, res->width);
util_copy_rect(res->ptr, res->format, shm_stride, 0, 0,