diff --git a/Mesa.changes b/Mesa.changes index e41e253..142b008 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Mon Sep 19 10:00:05 UTC 2016 - zaitor@opensuse.org + +- Add u_Mesa_i965-import-prime-buffers.patch: i965: import prime + buffers in the current context, not screen (fdo#71759, + boo#991638). + +------------------------------------------------------------------- +Sat Sep 17 16:40:56 UTC 2016 - mimi.vx@gmail.com + +- update to 12.0.3 +* fdo#97781 - [HSW, BYT, IVB] es2-cts.gtf.gl2extensiontests.depth_texture_cube_map.depth_texture_cube_map +* Revert "i965/miptree: Stop multiplying cube depth by 6 in HiZ calculations" + ------------------------------------------------------------------- Mon Sep 5 17:05:57 UTC 2016 - mimi.vx@gmail.com diff --git a/Mesa.spec b/Mesa.spec index cf072aa..aa67592 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -18,7 +18,7 @@ %define glamor 1 %define _name_archive mesa -%define _version 12.0.2 +%define _version 12.0.3 %define with_opencl 0 %define with_vulkan 0 %ifarch %ix86 x86_64 %arm ppc ppc64 ppc64le s390x @@ -45,7 +45,7 @@ %endif Name: Mesa -Version: 12.0.2 +Version: 12.0.3 Release: 0 Summary: System for rendering interactive 3-D graphics License: MIT @@ -62,6 +62,7 @@ Source7: Mesa.keyring Patch0: n_Fixed-build-against-wayland-1.2.1.patch # to be upstreamed Patch11: u_Fix-crash-in-swrast-when-setting-a-texture-for-a-pix.patch +Patch12: u_Mesa_i965-import-prime-buffers.patch # Patch from Fedora, fix 16bpp in llvmpipe Patch13: u_mesa-8.0.1-fix-16bpp.patch # Patch from Fedora, use shmget when available, under llvmpipe @@ -579,6 +580,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} #%patch11 -p1 #%patch15 -p1 #%patch13 -p1 +%patch12 -p1 %patch18 -p1 %patch21 -p1 diff --git a/mesa-12.0.2.tar.xz b/mesa-12.0.2.tar.xz deleted file mode 100644 index aa212fa..0000000 --- a/mesa-12.0.2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d957a5cc371dcd7ff2aa0d87492f263aece46f79352f4520039b58b1f32552cb -size 8576848 diff --git a/mesa-12.0.2.tar.xz.sig b/mesa-12.0.2.tar.xz.sig deleted file mode 100644 index f724635..0000000 Binary files a/mesa-12.0.2.tar.xz.sig and /dev/null differ diff --git a/mesa-12.0.3.tar.xz b/mesa-12.0.3.tar.xz new file mode 100644 index 0000000..1100483 --- /dev/null +++ b/mesa-12.0.3.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dc86dd9b51272eee1fad3df65e18cda2e556ef1bc0b6e07cd750b9757f493b1 +size 8577408 diff --git a/mesa-12.0.3.tar.xz.sig b/mesa-12.0.3.tar.xz.sig new file mode 100644 index 0000000..babda26 Binary files /dev/null and b/mesa-12.0.3.tar.xz.sig differ diff --git a/u_Mesa_i965-import-prime-buffers.patch b/u_Mesa_i965-import-prime-buffers.patch new file mode 100644 index 0000000..7cb86a1 --- /dev/null +++ b/u_Mesa_i965-import-prime-buffers.patch @@ -0,0 +1,65 @@ +From e180e9e3c830d3611a6cf7d32e988b4c28d20942 Mon Sep 17 00:00:00 2001 +From: Martin Peres +Date: Wed, 3 Aug 2016 12:58:23 +0300 +Subject: [PATCH] i965: import prime buffers in the current context, not screen + +This mirrors the codepath taken by DRI2 in IntelSetTexBuffer2() and +fixes many applications when using DRI3: + - Totem with libva on hw-accelerated decoding + - obs-studio, using Window Capture (Xcomposite) as a Source + - gstreamer with VAAPI + +Cc: mesa-stable@lists.freedesktop.org +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71759 +Signed-off-by: Martin Peres +--- + src/mesa/drivers/dri/i965/intel_screen.c | 25 +++++++++++++++++++++++-- + 1 file changed, 23 insertions(+), 2 deletions(-) + +diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c +index ae51c40..169d578 100644 +--- a/src/mesa/drivers/dri/i965/intel_screen.c ++++ b/src/mesa/drivers/dri/i965/intel_screen.c +@@ -702,8 +702,11 @@ intel_create_image_from_fds(__DRIscreen *screen, + int *fds, int num_fds, int *strides, int *offsets, + void *loaderPrivate) + { ++ GET_CURRENT_CONTEXT(ctx); + struct intel_screen *intelScreen = screen->driverPrivate; ++ struct brw_context *brw = brw_context(ctx); + struct intel_image_format *f; ++ dri_bufmgr *bufmgr; + __DRIimage *image; + int i, index; + +@@ -744,8 +747,26 @@ intel_create_image_from_fds(__DRIscreen *screen, + size = end; + } + +- image->bo = drm_intel_bo_gem_create_from_prime(intelScreen->bufmgr, +- fds[0], size); ++ /* Let's import the buffer into the current context instead of the current ++ * screen as some applications like gstreamer, totem, or obs create multiple ++ * X connections which end up creating multiple screens and thus multiple ++ * buffer managers. They then proceed to use a different X connection than ++ * the one used by the currently-bound context to call GLXBindTexImageExt() ++ * which should then import the buffer in the current bound context and not ++ * the current screen. This is done properly upstairs for texture management ++ * so we need to mirror this behaviour if we don't want the kernel rejecting ++ * our pushbuffers as the buffer would not have been imported by the same ++ * buffer manager that sent the pushbuffer referencing it. ++ * ++ * If there is no context currently bound, then revert to using the screen's ++ * buffer manager and hope for the best... ++ */ ++ if (brw) ++ bufmgr = brw->bufmgr; ++ else ++ bufmgr = intelScreen->bufmgr; ++ ++ image->bo = drm_intel_bo_gem_create_from_prime(bufmgr, fds[0], size); + if (image->bo == NULL) { + free(image); + return NULL; +-- +2.9.0