Mesa (13.0): 60 new commits
Emil Velikov
evelikov at kemper.freedesktop.org
Wed Jan 25 14:54:25 UTC 2017
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9185a3385beff97fe2f0857b6fae95dc8db9d4e5
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Wed Jan 25 13:34:42 2017 +0000
get-pick-list.sh: Require explicit "13.0" for nominating stable patches
A nomination unadorned with a specific version is now interpreted as
being aimed at the 17.0 branch, which was recently opened.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b602f4f5bd1dc259bf01cf218271be7305e76d45
Author: Nayan Deshmukh <nayan26deshmukh at gmail.com>
Date: Fri Jan 13 18:45:31 2017 +0530
st/va: delay calling begin_frame until we have all parameters
If begin_frame is called before setting intra_matrix and
non_intra_matrix it leads to segmentation faults when
vl_mpeg12_decoder.c is used.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92634
Signed-off-by: Nayan Deshmukh <nayan26deshmukh at gmail.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
(cherry picked from commit 4b0e9babc673bc4dd834127086982e290b2a3a42)
Squashed with commit:
st/va: make sure that we call begin_frame() only once v2
This fixes "st/va: delay calling begin_frame until we have all parameters".
v2: call begin frame after decoder (re)creation as well.
Signed-off-by: Christian König <christian.koenig at amd.com>
Reviewed-by: Nayan Deshmukh <nayan26deshmukh at gmail.com>
Tested-by: Andy Furniss <adf.lists at gmail.com>
(cherry picked from commit 1338d912f52b69f76ef75d1ad313893db77d4da8)
[Emil Velikov: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/gallium/state_trackers/va/va_private.h
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=12ba860584f8fa4c4208d36f6f3e464689691b50
Author: Heiko Przybyl <lil_tux at web.de>
Date: Sun Nov 20 14:42:28 2016 +0100
r600/sb: Fix loop optimization related hangs on eg
Make sure unused ops and their references are removed, prior to entering
the GCM (global code motion) pass, to stop GCM from breaking the loop
logic and thus hanging the GPU.
Turns out, that sb has problems with loops and node optimizations
regarding associative folding:
- the global code motion (gcm) pass moves ops up a loop level/basic block
until they've fulfilled their total usage count
- if there are ops folded into others, the usage count won't be
fulfilled and thus the op moved way up to the top
- within GCM the op would be visited and their deps would be moved
alongside it, to fulfill the src constaints
- in a loop, an unused op is moved out of the loop and GCM would move
the src value ops up as well
- now here arises the problem: if the loop counter is one of the src
values it would get moved up as well, the loop break condition would
never get hit and the shader turn into an endless loop, resulting in the
GPU hanging and being reset
A reduced (albeit nonsense) piglit example would be:
[require]
GLSL >= 1.20
[fragment shader]
uniform int SIZE;
uniform vec4 lights[512];
void main()
{
float x = 0;
for(int i = 0; i < SIZE; i++)
x += lights[2*i+1].x;
}
[test]
uniform int SIZE 1
draw rect -1 -1 2 2
Which gets optimized to:
===== SHADER #12 OPT ================================== PS/BARTS/EVERGREEN =====
===== 42 dw ===== 1 gprs ===== 2 stack =========================================
ALU 3 @24
1 y: MOV R0.y, 0
t: MULLO_UINT R0.w, [0x00000002 2.8026e-45].x, R0.z
LOOP_START_DX10 @22
PUSH @6
ALU 1 @30 KC0[CB0:0-15]
2 M x: PRED_SETGE_INT __.x, R0.z, KC0[0].x
JUMP @14 POP:1
LOOP_BREAK @20
POP @14 POP:1
ALU 2 @32
3 x: ADD_INT R0.x, R0.w, [0x00000002 2.8026e-45].x
TEX 1 @36
VFETCH R0.x___, R0.x, RID:0 MFC:16 UCF:0 FMT[..]
ALU 1 @40
4 y: ADD R0.y, R0.y, R0.x
LOOP_END @4
EXPORT_DONE PIXEL 0 R0.____ EOP
===== SHADER_END ===============================================================
Notice R0.z being the loop counter/break condition relevant register
and being never incremented at all. Also some of the loop content
has been moved out of it, to fulfill the requirements for the one unused
op.
With a debug build of mesa this would produce an error like
error at : PRED_SETGE_INT __, __, EM.2, R1.x.2||FP at R0.z, C0.x
: operand value R1.x.2||FP at R0.z was not previously written to its gpr
and the compilation would fail due to this. On a release build it gets
passed to the GPU.
When using this patch, the loop remains intact:
===== SHADER #12 OPT ================================== PS/BARTS/EVERGREEN =====
===== 48 dw ===== 1 gprs ===== 2 stack =========================================
ALU 2 @24
1 y: MOV R0.y, 0
z: MOV R0.z, 0
LOOP_START_DX10 @22
PUSH @6
ALU 1 @28 KC0[CB0:0-15]
2 M x: PRED_SETGE_INT __.x, R0.z, KC0[0].x
JUMP @14 POP:1
LOOP_BREAK @20
POP @14 POP:1
ALU 4 @30
3 t: MULLO_UINT T0.x, [0x00000002 2.8026e-45].x, R0.z
4 x: ADD_INT R0.x, T0.x, [0x00000002 2.8026e-45].x
TEX 1 @40
VFETCH R0.x___, R0.x, RID:0 MFC:16 UCF:0 FMT[..]
ALU 2 @44
5 y: ADD R0.y, R0.y, R0.x
z: ADD_INT R0.z, R0.z, 1
LOOP_END @4
EXPORT_DONE PIXEL 0 R0.____ EOP
===== SHADER_END ===============================================================
Piglit: ./piglit summary console -d results/*_gpu_noglx
name: unpatched_gpu_noglx patched_gpu_noglx
---- ------------------- -----------------
pass: 18016 18021
fail: 748 743
crash: 7 7
skip: 1124 1124
timeout: 0 0
warn: 13 13
incomplete: 0 0
dmesg-warn: 0 0
dmesg-fail: 0 0
changes: 0 5
fixes: 0 5
regressions: 0 0
total: 19908 19908
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94900
Tested-by: Heiko Przybyl <lil_tux at web.de>
Tested-on: Barts PRO HD6850
Signed-off-by: Heiko Przybyl <lil_tux at web.de>
Signed-off-by: Marek Olšák <marek.olsak at amd.com>
(cherry picked from commit e933246013eef376804662f3fcf4646c143c6c88)
Nominated-by: Andreas Boll <andreas.boll.dev at gmail.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b9fd9a693b00bf4e0e773d972113a71663885d82
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Fri Jan 6 00:09:53 2017 -0800
i965: Properly flush in hsw_pause_transform_feedback().
Fixes a number of transform feedback tests when run with Linux 4.8,
which allows us to use the MI_LOAD_REGISTER_REG command, at which point
we started using this new broken path.
ES3-CTS.functional.transform_feedback.array_element.interleaved.lines.*
and Piglit's arb_transform_feedback2/draw-auto are both fixed by this
patch, for example.
Thanks to Chris Wilson for catching this mistake!
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99030
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
(cherry picked from commit 2138347a45fa6dad1934b1c58a9e7d7f53194828)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=830b1051ab5dbeeaa0ead7f975dcf48d423db35b
Author: Andres Rodriguez <andresx7 at gmail.com>
Date: Wed Jan 18 17:48:36 2017 -0500
radv: fix include order for installed headers v2
In situations where libdrm_amdgpu and mesa are installed to the same
location, the mesa installed headers will take precedence over the git
source headers.
This is due to the AMDGPU_CFLAGS containing the install directory.
This situation can cause build errors if the git version of a header is
newer than the currently installed version of a header (e.g. git pull
updates vulkan.h)
Note: using the same install prefix for mesa and libdrm is probably a
common occurrence since it is described in the radeonBuildHowTo wiki:
https://www.x.org/wiki/radeonBuildHowTo/
v2: added sign-off
Signed-off-by: Andres Rodriguez <andresx7 at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit a3ad6a34c6ba222ec93a2cfd0cac205c62574eb7)
Nominated-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=15432c29beea8f663e1dee282b82c3299c8f8b93
Author: Andres Rodriguez <andresx7 at gmail.com>
Date: Wed Jan 18 18:07:56 2017 -0500
vulkan/wsi: clarify the severity of lack of DRI3 v2
The current message sounds like a small warning, clarify that it can
result in lack of presentation support and application crashes.
v2: add "if they do" (Bas)
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98263
Signed-off-by: Andres Rodriguez <andresx7 at gmail.com>
Acked-by: Jason ekstrand <jason at jlekstrand.net>
Acked-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit e0674e740bf84085dec898ffd87bdeb2027e620f)
Nominated-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c148b51a835a0295a264f651f4093136bd02dc57
Author: Rob Clark <robdclark at gmail.com>
Date: Mon Aug 15 13:41:04 2016 -0400
freedreno: some fence cleanup
Prep-work for next patch, mostly move to tracking last_fence as a
pipe_fence_handle (created now only in fd_gmem_render_tiles()), and a
bit of superficial renaming.
Signed-off-by: Rob Clark <robdclark at gmail.com>
(cherry picked from commit 16f6ceaca9e25f86bcdc509fc0abb48e2d51c3fa)
Fixes a glxgears issues.
Reported-by: Nicolas Dechesne <nicolas.dechesne at linaro.org>
Nominated-by: Nicolas Dechesne <nicolas.dechesne at linaro.org>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=704072afed2a0f83d52e4e7cef6f80ca57b40a20
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Mon Dec 19 14:32:57 2016 -0800
glsl: Use ir_var_temporary when generating inline functions.
We were using ir_var_auto for the inlined function parameter variables,
which is wrong, as it suggests that those are real variables declared
by the program.
Normally this doesn't matter. However, if you called built-ins at
global scope, it would pollute the global variable namespace with
these new parameter temporaries. If the shader already had variables
with those names, the linker might see contradictory global variable
declarations and raise an error.
Making them temporaries indicates that these are just things generated
by the compiler internally. This avoids confusing the linker.
Fixes a new Piglit test: glsl-fs-multiple-builtins.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99154
Reported-by: Niels Ole Salscheider <niels_ole at salscheider-online.de>
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
Reviewed-by: Iago Toral Quiroga <itoral at igalia.com>
(cherry picked from commit 62b8bcda1cb7ad18acee7042d40c01b56385e124)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d88fee9df00b42b7a70f974ea94243644e3ebb2a
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Thu Jan 12 17:18:51 2017 +0000
automake: use shared llvm libs for make distcheck
Cc: "12.0 13.0" <mesa-dev at lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit 23dcce0c03db055c168696c9120637506b68b13d)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ae281206525a052a8e5503f18a3c5325c7d89daa
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Fri Jan 6 12:20:14 2017 -0800
isl: Mark A4B4G4R4_UNORM as supported on gen8
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Cc: "13.0" <mesa-dev at lists.freedesktop.org>
(cherry picked from commit 4e7958fb13ec26233ce08b4e49c325bc12a0dc40)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=501c380d87cdfd15009418f88d55808ca5c01706
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Fri Jan 20 01:19:49 2017 +0100
gallium/hud: add missing break in hud_cpufreq_graph_install()
Fixes: e99b9395bef "gallium/hud: Add support for CPU frequency monitoring"
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Emil Velikov <emil.l.velikov at gmail.com>
(cherry picked from commit 383fc8e9f340e80695aca2cd585957af0e081eb9)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=645b47c32baa26cf091a86a842df70eceec0337f
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Jan 18 22:15:35 2017 +0100
radeonsi: don't forget to add HTILE to the buffer list for texturing
This fixes VM faults. Discovered by Samuel Pitoiset.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98975
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99450
Cc: 17.0 13.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
Reviewed-by: Edward O'Callaghan <funfunctor at folklore1984.net>
(cherry picked from commit e490b7812cae778c61004971d86dc8299b6cd240)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d446f455674bd224f93d106a8e2efee0bfc8ea3e
Author: Zachary Michaels <zmichaels at oblong.com>
Date: Thu Jan 19 10:50:16 2017 +0100
radeonsi: Always leave poly_offset in a valid state
This commit makes si_update_poly_offset set poly_offset to NULL if
uses_poly_offset is false. This way poly_offset either points into the
currently queued rasterizer, or it is NULL.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99451
Cc: "13.0 17.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit d7d32b3bfe86bd89d94d59393907bce1cb9dab7c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ced6fd3508bd32b3dc3eb8c1068dbeca84c953cb
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Mon Nov 28 18:25:18 2016 +0000
egl/wayland: use the destroy_window_callback for swrast
As described in commit 690ead4a135 ("egl/wayland-egl: Fix for segfault
in dri2_wl_destroy_surface.") if we attempt to destroy a EGL surface
attached to already destroyed Wayland window we'll get a segfault.
v2: set the correct callback alongside the window->private. (Dan)
Cc: Daniel Stone <daniels at collabora.com>
Cc: "12.0 13.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
(cherry picked from commit bfd63143502ff03ceae903f959a6f41666b849bc)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5dd74b9c404278d3eaa4037be65e633388c95866
Author: Marek Olšák <marek.olsak at amd.com>
Date: Tue Jan 17 13:45:42 2017 +0100
radeonsi: for the tess barrier, only use emit_waitcnt on SI and LLVM 3.9+
Cc: 17.0 13.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Edward O'Callaghan <funfunctor at folklore1984.net>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit 57f18623fb94891c04f3a395cfd977ea3747ee61)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ee1118d1df2c25cb64112b295d09609b16523460
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Sat Jan 14 16:23:10 2017 -0800
i965: Make BLORP disable the NP Z PMA stall fix.
This may fix GPU hangs on Gen8. I don't know if it does though.
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 7a2b65a1d749fd6dcc31d47205445dabace0d265)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f9cac64aee12287fc25e61113cd299a03d9bbdea
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Fri Jan 13 08:55:59 2017 +0100
radv: Support loader interface version 3.
Port of 1e41d7f7b0855934744fe578ba4eae9209ee69f7:
"anv: Support loader interface version 3 (patch v2)"
Signed-off-by: Bas Nieuwenhuizen <basni at google.com>
Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit 6d2fb04f0922047232d10b2a5d292d68c9506f45)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=259e74f682c1604a54a991e6c158ed9d983c2683
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Fri Jan 20 19:17:04 2017 +0000
cherry-ignore: add wayland race condition fix
The commit resolves the issue by using new Wayland API thus bumping the
Wayland build requirement from 1.2 to 1.11. Allowing requirement changes
[for stable] is a rare exception and in this case we jump over 3 years
worth, which is not cool.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bf556db1c965aa5f6af9e81dbec179bf1e139ee9
Author: Jonas Ådahl <jadahl at gmail.com>
Date: Fri Jan 13 23:05:09 2017 +0800
egl/wayland: Cleanup private display connection when init fails
When failing to initializing the Wayland EGL driver, don't leak the
display server connection if it was us who created it.
Signed-off-by: Jonas Ådahl <jadahl at gmail.com>
Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
(cherry picked from commit 361796651c5abb21ff429466c061119dce8f33d5)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c0709db9cfe73d849e469c469f30254bbf8b84a5
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Fri Jan 20 19:12:27 2017 +0000
cherry-ignore: add "_mesa_ClampColor extension/version fix"
As requested by Nicolai, on the mailing list.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c865a39636396f8e98e5a3cce373096783d3022a
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Fri Dec 16 15:08:30 2016 +0000
get-typod-pick-list.sh: add new script
Typos do happen as people nominate patches for stable. This script aims
to catch most of those.
Due to the subtle nature of things, one has to pay special attention to
the output, similar to get-extra-pick-list.sh.
At the moment only the following is handled:
grep -i "CC:.*mesa-dev"
Cc: 12.0 13.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit f0bdd13fdbc0bec1119b296d99820899183e26ab)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=83a83a89ea7840efa41dc686da25a491e3d3e87c
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date: Tue Jan 10 22:07:53 2017 -0500
nouveau: take extra push space into account for pushbuf_space calls
Ever since a long time ago when I messed around with fences, I ensure
that after a PUSH_SPACE call there is enough space to write a fence out
into the pushbuf.
However the PUSH_SPACE macro is not all-knowing, and so sometimes we
have to invoke nouveau_pushbuf_space manually with the relocs/pushes
args set. If we don't take the extra allocation from PUSH_SPACE into
account, then we will end up accidentally flushing when the code was not
expecting a flush. This can lead to various runtime and rendering
failures.
The amount of extra allocation isn't that important - it has to be at
least 8 based on the current nouveau_winsys.h setting, but even more
won't hurt. I just rounded up to powers of 2.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99354
Cc: "12.0 13.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Acked-by: Ben Skeggs <bskeggs at redhat.com>
(cherry picked from commit eb60a89bc3ac2b43faf52d06e05670bbbca7292d)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=eba4c8fea02dacf210d64643b27bf65065cedadf
Author: Grazvydas Ignotas <notasas at gmail.com>
Date: Sun Jan 8 19:38:09 2017 +0200
mapi: update the asm code to support x32
Fixes crashes when both glx-tls and asm are enabled on x32.
Cc: mesa-stable at lists.freedesktop.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94512
Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=575458
Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
Reviewed-by: Edward O'Callaghan <funfunctor at folklore1984.net>
(cherry picked from commit 89458366585c34879b70110758bb4fd3acb62ce0)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8a1113ce3f20a50feae16ec110afc2462c636815
Author: Chuck Atkins <chuck.atkins at kitware.com>
Date: Fri Jan 6 08:27:44 2017 -0500
glx: Add missing glproto dependency for gallium-xlib glx
Cc: mesa-stable at lists.freedesktop.org
Cc: Bruce Cherniak <bruce.cherniak at intel.com>
Signed-of-by: Chuck Atkins <chuck.atkins at kitware.com>
Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit e9a4ec4bd806107223b4e3f656071de3a08756a0)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fdb01cdb92c9054c11abb1283c8bc1ae2c5331bd
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Fri Jan 20 18:54:46 2017 +0000
cherry-ignore: add radv: Call nir_lower_constant_initializers."
Depends on nir_lower_constant_initializers() which isn't in stable.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f33d1100b4d2954ac79558e8651bf6573a8b66c1
Author: Chad Versace <chadversary at chromium.org>
Date: Tue Jan 10 17:29:08 2017 -0800
anv: Support loader interface version 3 (patch v2)
This patch implements vk_icdNegotiateLoaderICDInterfaceVersion(), which
brings us to loader interface v3.
v2:
- Drop the pragmas. [emil]
- Advertise v3 instead of v2. Anvil supported more than I
thought. [jason]
- s/Surface/SurfaceKHR/ in comments. [emil]
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Cc: mesa-stable at lists.freedesktop.org
Cc: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 1e41d7f7b0855934744fe578ba4eae9209ee69f7)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=023e380ccc2102fac64e635e94ae8b4d8e122529
Author: Chad Versace <chadversary at chromium.org>
Date: Tue Jan 10 12:40:55 2017 -0800
vulkan: Update vk_icd.h to interface version 3
Import from commit f2aeefec on branch 'master'
of https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit 98cf089849a2bae08a834d01f459b8f38c544918)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=213791e86cf52ebac09cc7b0604bed5267d50750
Author: Chad Versace <chadversary at chromium.org>
Date: Tue Jan 10 13:23:06 2017 -0800
vulkan: Add new cast macros for VkIcd types
We can't import the latest vk_icd.h because the new header breaks the
Mesa build. This patch defines new casting macros,
ICD_DEFINE_NONDISP_HANDLE_CASTS() and ICD_FROM_HANDLE(), which can
handle both the old and new vk_icd.h, and will prevent the build from
breaking when we update the header.
In the old vk_icd.h, types were defined as:
typedef struct _VkIcdFoo {
...
} VkIcdFoo;
Commit 6ebba1f6 in the Vulkan loader changed the above to
typedef {
...
} VkIcdFoo;
because the old definitions violated the C and C++ specs. According to
the specs, identifiers that begins with an underscore followed by an
uppercase letter are reserved. (It's pedantic, I know), See the Github
issue referenced below.
References: https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/7
References: https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/commit/6ebba1f630015af7a78767a15c1e74ba9b23601c
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit c085bfcec9915879e97a33c5235cf21607c72318)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0c54aa1568256725d2f87261bc0ba55b35ced1f9
Author: Timothy Arceri <timothy.arceri at collabora.com>
Date: Wed Jan 11 15:13:35 2017 +1100
util: fix list_is_singular()
Currently its dependant on the user calling and checking the result
of list_empty() before using the result of list_is_singular().
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 0252ba26c545a9752b158470cb66741df0f222ce)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e2a522b7556489e7d2fdcefc5438f94f485e639b
Author: Nanley Chery <nanley.g.chery at intel.com>
Date: Thu Jan 5 06:58:03 2017 -0800
anv/image: Disable HiZ for depth buffer arrays
We currently don't perform clears or resolves on multiple array layers
with HiZ.
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 5857858aa6c869f4eed31029a376876f50bd6a62)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d5a941b7d9a7ded14febdb3cf2a33e4ee9433bfd
Author: Nanley Chery <nanley.g.chery at intel.com>
Date: Thu Jan 5 01:23:27 2017 -0800
anv/cmd_buffer: Fix programmed HiZ qpitch
Match the comment above the field by using units of pixels and not HiZ
blocks.
Cc: mesa-stable at lists.freedesktop.org
Suggested-by: Jason Ekstrand <jason at jlekstrand.net>
Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 9f1d3a0c971e95c9e04cf6bfcd60f8b0d8c6742b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8b3beddd036e626c9b5108a96866abc7b5a92a92
Author: Nanley Chery <nanley.g.chery at intel.com>
Date: Mon Dec 19 09:37:03 2016 -0800
anv/cmd_buffer: Fix arrayed depth/stencil attachments
Enable multiple layers of the depth/stencil buffers to be accessible.
Fixes the crucible test, func.depthstencil.arrayed_clear.
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Nanley Chery <nanley.g.chery at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 61992e0afe5f717aad7321d9748588b2cd27f8ee)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fb51df52d021a857a66ff5b0c5804a3260933ee5
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Tue Jan 10 10:24:55 2017 -0800
nir/search: Only allow matching SSA values
This is more correct and should also be a tiny bit faster since we're
just comparing pointers instead of calling nir_src_equal.
Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit c472568b4e458c9882a98850668f99144c7ca6bf)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f41850eaad8ce11049de67399522ec7e7a007b2e
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Sun Jan 8 23:03:25 2017 -0800
spirv: Move cursor before calling vtn_ssa_value() in phi 2nd pass.
vtn_ssa_value() can produce variable loads, and the cursor might
be after a return statement, causing nir_builder assert failures
about not inserting instructions after a jump.
This fixes:
dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_if
dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_switch
Cc: "13.0 12.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 203c1287816f2a73475a48dd72a9a2ed03a42ac1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=37dcca9a78bf6923ff8d007a36fdd4ad1c079814
Author: Timothy Arceri <timothy.arceri at collabora.com>
Date: Fri Jan 6 10:26:24 2017 +1100
glsl: fix opt_minmax redundancy checks against baserange
Marking operations as redundant if they are equal to the base
range is fine when the tree structure is something like this:
max
/ \
max b
/ \
3 max
/ \
3 a
But the opt falls apart with a tree like this:
max
/ \
max max
/ \ / \
3 a b 3
The problem is that both branches are treated the same: descending in
the left branch will prune the constant, and then descending the right
branch will prune the constant there as well, because limits[0] wasn't
updated to take the change on the left branch into account, and so we
still get [3,\infty) as baserange.
In order to fix the bug we just disable the marking of redundant expressions
when they match the baserange.
NIR algebraic opt will clean up the first tree for anyway, hopefully
other backends are smart enough to do this also.
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit 1edc53a66b33e4d17688a3d03b1bdffed2aec414)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=17cd8edc37ce41f35f7e8b5a8ed91e55d95e83b8
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Fri Jan 6 12:50:47 2017 -0800
anv/formats: Use the real format for B4G4R4A4_UNORM_PACK16 on gen8
Because border color is handled pre-swizzle, when we move the alpha
channel around in the format, the OPAQUE_BLACK border colors don't work
correctly on B4G4R4A4_UNORM_PACK16 with the hack. This fixes the
following Vulkan CTS tests on Broadwell:
dEQP-VK.pipeline.sampler.view_type.2d_array.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black
dEQP-VK.pipeline.sampler.view_type.1d_array.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black
dEQP-VK.pipeline.sampler.view_type.2d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black
dEQP-VK.pipeline.sampler.view_type.1d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black
dEQP-VK.pipeline.sampler.view_type.3d.format.b4g4r4a4_unorm_pack16.address_modes.all_mode_clamp_to_border_opaque_black
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 2d7bed6158a1f119411d4e9f34beb7846065ae93)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=512728415df2d72bff6d2bc72f902720bc651b59
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Fri Jan 6 01:13:24 2017 -0800
i965: Fix texturing in the vec4 TCS and GS backends.
We were failing to zero m0.2 of the sampler message header for TCS and
GS messages in the simple case. fs_generator has done this for about
a year now, but we missed it in vec4_generator.
Fixes ES31-CTS.core.texture_cube_map_array.sampling,
GL45-CTS.texture_cube_map_array.sampling, and many
dEQP-GLES31.functional.shaders.opaque_type_indexing.sampler subtests:
- dynamically_uniform.tessellation_control.isampler3d
- dynamically_uniform.tessellation_control.isamplercube
- dynamically_uniform.tessellation_control.sampler2d
- dynamically_uniform.tessellation_control.usamplercube
- dynamically_uniform.tessellation_control.sampler2darray
- dynamically_uniform.tessellation_control.isampler2darray
- dynamically_uniform.tessellation_control.usampler3d
- dynamically_uniform.tessellation_control.usampler2darray
- dynamically_uniform.tessellation_control.usampler2d
- dynamically_uniform.tessellation_control.sampler3d
- dynamically_uniform.tessellation_control.samplercube
- dynamically_uniform.tessellation_control.isampler2d
- uniform.tessellation_control.isampler3d
- uniform.tessellation_control.isamplercube
- uniform.tessellation_control.usampler2d
- uniform.tessellation_control.usampler3d
- uniform.tessellation_control.sampler2darray
- uniform.tessellation_control.isampler2darray
- uniform.tessellation_control.usampler2darray
- uniform.tessellation_control.sampler2d
- uniform.tessellation_control.usamplercube
- uniform.tessellation_control.sampler3d
- uniform.tessellation_control.samplercube
- uniform.tessellation_control.isampler2d
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 4295af646fa7cf9b2cd8d0c2a481a7fc5eb43553)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5afc33bcb37be509c9e531f7b6e8c2f98977f177
Author: Fredrik Höglund <fredrik at kde.org>
Date: Sun Jan 1 15:34:17 2017 +0100
dri3: Fix MakeCurrent without a default framebuffer
In OpenGL 3.0 and later it is legal to make a context current without
a default framebuffer.
This has been broken since DRI3 support was introduced.
Cc: "13.0 12.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
(cherry picked from commit b6670157d742548e7f2430614786c733eb4c20e9)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=32d50d0f7507298a3f1f3561b10df663ba53ecdd
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Wed Dec 14 03:29:29 2016 -0800
i965: Fix last slot calculations
If the VUE map has slots at the end which the shader does not write,
then we'd "flush" (constructing an URB write) on the last output it
actually wrote. Then, we'd construct another SEND with EOT, but with
no actual payload data. That's not legal.
For example, SSO programs have clip distance slots allocated no matter
what, but the shader may not write them. If it doesn't write any user
defined varyings, then the clip distance slots will be the last ones.
Found while debugging
dEQP-VK.tessellation.shader_input_output.gl_position_vs_to_tcs_to_tes
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>
(cherry picked from commit 480d6c1653713dcae617ac523b2ca5deee01c845)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f7d13af06346dcef66b20d2986a84cb40895b632
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Jan 4 11:42:13 2017 +0100
va: call texture_get_handle while the mutex is being held
The context may be used by texture_get_handle.
Reviewed-by: Christian König <christian.koenig at amd.com>
Cc: 13.0 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 89975e29d33d93021a303b2b41b56de65e854843)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=071c058d9d35a39083c4c6f239811f8644939820
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Jan 4 11:42:13 2017 +0100
vdpau: call texture_get_handle while the mutex is being held
The context may be used by texture_get_handle.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99158
Reviewed-by: Christian König <christian.koenig at amd.com>
Cc: 13.0 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit dbba4e03b16b80bf4071016b8197369ccb20c72b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b5ad01d579022e4b8b28ff7c269195626ffc4775
Author: Chad Versace <chadversary at chromium.org>
Date: Thu Dec 29 13:05:27 2016 -0800
meta: Disable dithering during glGenerateMipmap
Fixes tests 'dEQP-GLES3.functional.texture.mipmap.*.generate.rgba5551*' on
Intel Broadwell 0x1616.
The GL 4.5 spec describes the algorithm of glGenerateMipmap as:
The contents of the derived images are computed by repeated, filtered
reduction of the level base image. [...] No particular filter algorithm is
required, though a box filter is recommended as the default filter.
Consider a texture for which all pixels are identical at level 0.
From the spec's description above, one may reasonably assume that the "filtered
reduction" of level 0 produces a new miplevel for which again all pixels are
identical. For any 2x2 subspan of identical pixels, it is difficult to see how
the "filtered reduction" of that subspan can produce a pixel that differs from
the source pixels.
Dithering during _mesa_meta_GenerateMipmap() violated that reasonable
assumption.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99210
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit c4b87f129eb036c9615df3adcc1cebd9df10fc84)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a2ba1f43933705114368075465dd57f6006e380b
Author: Christian König <christian.koenig at amd.com>
Date: Wed Dec 14 15:03:35 2016 +0100
vl/zscan: fix "Fix trivial sign compare warnings"
The variable actually needs to be signed, otherwise converting it to a
float doesn't work as expected.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=98914
Signed-off-by: Christian König <christian.koenig at amd.com>
Reviewed-by: Nayan Deshmukh <nayan26deshmukh at gmail.com>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Fixes: 1fb4179f927 ("vl: Fix trivial sign compare warnings")
(cherry picked from commit ac57bcda1e0e6dcfa81e24468d5b682686120649)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=84317907b15ab9bb0bb72f52a80d46df41a9abcf
Author: Chad Versace <chadversary at chromium.org>
Date: Tue Dec 27 14:26:24 2016 -0800
mesa/shaderobj: Fix races on refcounts
Use atomic ops when updating gl_shader::RefCount.
Fixes intermittent failures and crashes in
'dEQP-EGL.functional.sharing.gles2.multithread.*'.
All tests in that group now pass except
'dEQP-EGL.functional.sharing.gles2.multithread.simple_egl_server_sync.textures.copyteximage2d_texsubimage2d_render'.
Tested with:
mesa: branch 'master' at d6545f2
deqp: branch 'nougat-cts-dev' at 4acf725 with additional local fixes
DEQP_TARGET: x11_egl
hw: Intel Broadwell 0x1616
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99085
Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
Cc: mesa-stable at lists.freedesktop.org
Cc: Mark Janes <mark.a.janes at intel.com>
Cc: Haixia Shi <hshi at chromium.org>
(cherry picked from commit 464b23b1f289e8f9ede7c9d817c1678bbef0ad8d)
[Emil Velikov: add u_atomic.h include to resolve the build]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c4ebd16e9253e1d9e69af6fe2ae368b3e3d10c1
Author: Chad Versace <chadversary at chromium.org>
Date: Tue Dec 27 10:25:58 2016 -0800
anv: Handle vkGetPhysicalDeviceQueueFamilyProperties with count == 0
The spec implicitly allows the incoming count to be 0. From the Vulkan
1.0.38 spec, Section 4.1 Physical Devices:
If the value referenced by pQueueFamilyPropertyCount is not 0 [then
do stuff].
Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit d6545f234593fb00d02fdc07f9b2a803d2b569f6)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ca96e995e21cc6f3e44d33b32103fa9a8089a68
Author: Chad Versace <chadversary at chromium.org>
Date: Thu Dec 22 17:06:14 2016 -0800
egl: Emit correct error when robust context creation fails
Fixes dEQP-EGL.functional.create_context_ext.robust_*
on Intel with GBM.
If the user sets the EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR in
EGL_CONTEXT_FLAGS_KHR when creating an OpenGL ES context, then
EGL_KHR_create_context spec requires that we unconditionally emit
EGL_BAD_ATTRIBUTE because that flag does not exist for OpenGL ES. When
creating an OpenGL context, the spec requires that we emit EGL_BAD_MATCH
if we can't support the request; that error is generated in the egl_dri2
layer where the driver capability is actually checked.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99188
Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
(cherry picked from commit b85c0b569fe133b71a767a068e8608868158134e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=23ecfe8f09ff1c64198a23eba1cc376cf47c00c3
Author: Damien Grassart <damien at grassart.com>
Date: Sun Dec 25 01:00:58 2016 +0100
anv: return count of queue families written
The Vulkan spec indicates that
vkGetPhysicalDeviceQueueFamilyProperties() should overwrite
pQueueFamilyPropertyCount with the number of structures actually
written to pQueueFamilyProperties.
Signed-off-by: Damien Grassart <damien at grassart.com>
Reviewed-by: Chad Versace <chadversary at chromium.org>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit 75252826e82ffa9c091ebe5bcf303c9d7569c3a3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dcf5c0549963fde25d91f0e11539823c3fd7b618
Author: Chad Versace <chadversary at chromium.org>
Date: Thu Dec 22 14:39:44 2016 -0800
mesa/texformat: Handle GL_RGBA + GL_UNSIGNED_SHORT_5_5_5_1
_mesa_choose_tex_format() already handles GL_RGBA + GL_UNSIGNED_SHORT_1_5_5_5_REV
by converting it to MESA_FORMAT_B5G5R5A1_UNORM. Teach it do the same for
the non-reversed type. Otherwise, the switch's fallthrough converts it
to an 8888 format, which has incompatible precision in the alpha
channel.
Patch 2/2 to fix dEQP-EGL.functional.image.modify.tex_rgb5_a1_tex_subimage_rgba8
on Intel.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99185
Cc: Haixia Shi <hshi at chromium.org>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit f3739810e337d0f03514b9b967594c8dc010dfa4)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ca81a9f9df0d032106d099b7d538fd16f1926cf4
Author: Chad Versace <chadversary at chromium.org>
Date: Thu Dec 22 14:44:47 2016 -0800
dri: Add __DRI_IMAGE_FORMAT_ARGB1555
This allows eglCreateImage() to accept textures of said format.
Patch 1/2 to fix
dEQP-EGL.functional.image.modify.tex_rgb5_a1_tex_subimage_rgba8
on Intel.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99185
Cc: Haixia Shi <hshi at chromium.org>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 9aa6ab074876dfa853863a74edad0b5b017fb8c7)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e8a2e40260acabd9ce94d6ed860b6c0e62e061c4
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Thu Dec 22 15:26:12 2016 -0800
i965/generator/tex: Handle an immediate sampler with an indirect texture
In this case we were dying when we tried to do SHL addr sampler imm(8)
because that puts an immediate in src0 of a two source instruction. This
fixes 2704 of the new separate sampler Vulkan CTS tests on Sky Lake.
Reviewed-by: Eduardo Lima Mitev <elima at igalia.com>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 88b5acfa09d4efa2aea1fc9cc4f8169a48c40286)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b5c7a1e2d7b75125578b8073094c5ad50792b25b
Author: Arda Coskunses <acoskunses at gmail.com>
Date: Thu Dec 22 15:03:11 2016 -0700
vulkan/wsi/x11: don't crash on null wsi x11 connection
Without this check driver crash when application window
closed unexpectedly.
Acked-by: Edward O'Callaghan <funfunctor at folklore194.net>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 99de7b752546c3f87aa8a18f72fd46856270555f)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=94d521cd8826e120269a9e13eaa22992c4890e5b
Author: Arda Coskunses <acoskunses at gmail.com>
Date: Thu Dec 22 14:55:03 2016 -0700
vulkan/wsi/x11: don't crash on null visual
When application window closed unexpectedly due to
lost window visualtypes getting invlaid parameters
which is causing a crash. Necessary check is added
to prevent the crash.
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 01dd363e671ac3a457bc3ff60b43b04e108c33fc)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8c8d81906544b928d76b66a3db1caeeb0b023dcf
Author: Fredrik Höglund <fredrik at kde.org>
Date: Wed Dec 7 19:20:08 2016 +0100
radv: fix dual source blending
Add the index to the location when assigning driver locations for
output variables.
Otherwise two fragment shader outputs declared as:
layout (location = 0, index = 0) out vec4 output1;
layout (location = 0, index = 1) out vec4 output2;
will end up aliasing one another.
Note that this patch will make the second output variable in the above
example alias a possible third output variable with location = 1 and
index = 0. But this shouldn't be a problem in practice since only one
color attachment is supported when dual-source blending is used.
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 27a8aab882980e35b66f7f318fd2fd7b500401b4)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a83fb211c00b3b060bc0260a2ba12939edb801e4
Author: Dave Airlie <airlied at redhat.com>
Date: Wed Dec 21 22:09:46 2016 +0000
radv: flush smem for uniform buffer bit.
(cc'ing stable as I'd like to backport the ubo speedup as well)
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied at redhat.com>
(cherry picked from commit 9d23b8a18e3e83c629f575f94b66c347ec81d704)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=19d2f006da770995e3ff0bc551f432ef77152db8
Author: Chad Versace <chadversary at chromium.org>
Date: Fri Dec 16 11:00:13 2016 -0800
egl: Check config's surface types in eglCreate*Surface()
If the provided EGLConfig does not support the requested surface type,
then emit EGL_BAD_MATCH.
Fixes dEQP-EGL.functional.negative_api.create_pbuffer_surface
on GBM.
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
(cherry picked from commit fbb4af96c6b6be08ed93e8d5a704b9f7002642f8)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1cc110517b269a40eac7787d9d9da76a4daf8684
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Mon Dec 19 11:21:27 2016 -0800
i965: Don't bail on vertex element processing if we need draw params.
BaseVertex, BaseInstance, DrawID, and some edge flag conditions need
vertex buffer and elements structs. We can't bail early in this case.
Gen4-7 already do this properly. Gen8+ did not.
Thanks to Ilia Mirkin for helping track this down.
Cc: mesa-stable at lists.freedesktop.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99144
Reported-by: Pierre-Eric Pelloux-Prayer <pelloux at gmail.com>
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 8fc5443a2b39aaa8292984f7225a2c7968d568ae)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b63515f2211337aeb74094b66d5ec5a7cabb0d3
Author: Michel Dänzer <michel.daenzer at amd.com>
Date: Fri Dec 16 18:05:58 2016 +0900
cso: Don't restore nr_samplers in cso_restore_fragment_samplers
If info->nr_samplers > ctx->nr_fragment_samplers_saved, the assignment
would prevent cso_single_sampler_done from unbinding the no longer used
samplers from the driver, which could result in use-after-free. This is
probably unlikely to happen in practice though.
Cc: "12.0 13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit 3d661a12be5be95da929b19cf4b5976b3c3fb8e9)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=02c3e9033e410f41601e5d862c8e8e09c968653f
Author: Francisco Jerez <currojerez at riseup.net>
Date: Thu Dec 15 13:34:02 2016 -0800
anv: Fix uniform and storage buffer offset alignment limits.
This fixes a regression in a bunch of image store vulkan CTS tests
from commit ad38ba113491869ab0dffed937f7b3dd50e8a735, which started
using OWORD block read messages to implement UBO loads. The reason
for the failure is that we were giving bogus buffer alignment limits
to the application (1B), so the CTS would happily come back with
descriptor sets pointing at not even word-aligned uniform buffer
addresses.
Surprisingly the sampler messages used to fetch pull constants before
that commit were able to cope with the non-texel aligned addresses,
but the dataport messages used to fetch pull constants after that
commit and the ones used to access storage buffers (before and after
the same commit) aren't as permissive with unaligned addresses.
Cc: <mesa-stable at lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99097
Reported-by: Mark Janes <mark.a.janes at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 79d08ed3d21bef21881303f320706ebb2098a50a)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1185212d79fb53b9ebbe38279890aa8c44c3a4f4
Author: Timothy Arceri <timothy.arceri at collabora.com>
Date: Fri Dec 16 10:17:33 2016 +1100
nir: Turn imov/fmov of undef into undef
Reverting the previous attempt at this a5502a721fd30fd resulted in
the following Vulkan test failing.
dEQP-VK.glsl.return.return_in_dynamic_loop_dynamic_vertex
This time we use the num_components from the alu dest rather than
num_inputs to the op to determine the size of the undef.
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Cc: "13.0" <mesa-stable at lists.freedesktop.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99100
(cherry picked from commit 3421b3f5a35f5cf29934f74c30850c4d04ba0237)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a908680f3eae000cf59a308737b4547146fdb396
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Fri Jan 20 18:07:02 2017 +0000
cherry-ignore: add couple of intel_miptree_copy related patches
The commits which introduced intel_miptree_copy are invasive/large to be
considered for stable.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
More information about the mesa-commit
mailing list