- U_egl-x11-sw-fix-partial-image-uploads.patch
* culprit for the regression in 24.1.4; reverse apply this for now (boo#1228164) OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=1326
This commit is contained in:
parent
00c04c92a0
commit
36582e646f
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 13 15:42:12 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_egl-x11-sw-fix-partial-image-uploads.patch
|
||||
* culprit for the regression in 24.1.4; reverse apply this for
|
||||
now (boo#1228164)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 5 19:20:59 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package Mesa
|
||||
# spec file
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
@ -184,6 +184,7 @@ Patch54: n_drirc-disable-rgb10-for-chromium-on-amd.patch
|
||||
Patch58: u_dep_xcb.patch
|
||||
Patch100: U_fix-mpeg1_2-decode-mesa-20.2.patch
|
||||
Patch400: n_stop-iris-flicker.patch
|
||||
Patch500: U_egl-x11-sw-fix-partial-image-uploads.patch
|
||||
%ifarch %{ix86} x86_64
|
||||
BuildRequires: DirectX-Headers
|
||||
%endif
|
||||
@ -839,6 +840,7 @@ cp %{SOURCE6} subprojects/packagecache/
|
||||
%patch -P 58 -p1
|
||||
%patch -P 100 -p1
|
||||
%patch -P 400 -p1
|
||||
%patch -P 500 -p1 -R
|
||||
|
||||
# Remove requires to vulkan libs from baselibs.conf on platforms
|
||||
# where vulkan build is disabled; ugly ...
|
||||
|
52
U_egl-x11-sw-fix-partial-image-uploads.patch
Normal file
52
U_egl-x11-sw-fix-partial-image-uploads.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From 5903c215ab5b4c5d3bb1c952c0c784b78a0412fc Mon Sep 17 00:00:00 2001
|
||||
From: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
|
||||
Date: Tue, 13 Feb 2024 13:10:30 -0500
|
||||
Subject: [PATCH] egl/x11/sw: fix partial image uploads
|
||||
|
||||
* swrast allocates images aligned to 64x64 tiles, which results in images
|
||||
that are larger than the window. PutImage requests must be clamped on
|
||||
the y-axis to avoid uploading/damaging out-of-bounds regions
|
||||
* winsys coords are y-inverted
|
||||
|
||||
cc: mesa-stable
|
||||
|
||||
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29910>
|
||||
(cherry picked from commit 6088a0bf51dd6bdfe39d9160a748bdde016f2c96)
|
||||
---
|
||||
.pick_status.json | 2 +-
|
||||
src/egl/drivers/dri2/platform_x11.c | 5 +++++
|
||||
2 files changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/.pick_status.json b/.pick_status.json
|
||||
index cc044e5e788..802f9799d23 100644
|
||||
--- a/.pick_status.json
|
||||
+++ b/.pick_status.json
|
||||
@@ -164,7 +164,7 @@
|
||||
"description": "egl/x11/sw: fix partial image uploads",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
- "resolution": 0,
|
||||
+ "resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c
|
||||
index 97436a0254b..e0d9ddb343e 100644
|
||||
--- a/src/egl/drivers/dri2/platform_x11.c
|
||||
+++ b/src/egl/drivers/dri2/platform_x11.c
|
||||
@@ -174,6 +174,11 @@ swrastPutImage(__DRIdrawable *draw, int op, int x, int y, int w, int h,
|
||||
return;
|
||||
}
|
||||
|
||||
+ /* clamp to drawable size */
|
||||
+ if (y + h > dri2_surf->base.Height)
|
||||
+ h = dri2_surf->base.Height - y;
|
||||
+ /* y-invert */
|
||||
+ y = dri2_surf->base.Height - y - h;
|
||||
if (size < max_req_len) {
|
||||
cookie = xcb_put_image(
|
||||
dri2_dpy->conn, XCB_IMAGE_FORMAT_Z_PIXMAP, dri2_surf->drawable, gc, w,
|
||||
--
|
||||
2.43.0
|
||||
|
Loading…
Reference in New Issue
Block a user