Mesa (staging/18.3): 73 new commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Mar 6 23:14:50 UTC 2019
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9678a5ee7ac6987481c884a386f030c8ff395f7b
Author: Marek Olšák <marek.olsak at amd.com>
Date: Fri Jan 11 18:06:59 2019 -0500
radeonsi: compile clear and copy buffer compute shaders on demand
same as all other shaders
(cherry picked from commit c605738113fe91d04f799eae52cec28fafac3f2d)
Bug: https://github.com/ValveSoftware/halflife/issues/2100
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=661146fdd4df7064617491204934cbfcbfd15009
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Wed Mar 6 21:45:12 2019 +0000
cherry-ignore: add 19.0 only anv/push buffer nominations
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a44dacdb55c3817d57c33049e7f15098f305f584
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Sat Jan 12 10:32:13 2019 -0600
spirv: Pull offset/stride from the pointer for OpArrayLength
We can't pull it from the variable type because it might be an array of
blocks and not just the one block. While we're here, throw in some
error checking.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit f1dbc7e97d3dcb2104b9438d32cace9529575208)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c76d9dfbcd61ded0fc733420bdbd4633a9763158
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Mar 4 14:25:08 2019 +0100
radv: properly align the fence and EOP bug VA on GFX9
If alignement is 0, offets returned by
radv_cmd_buffer_upload_alloc() are always 0. These two
virtual addresses were pointing at the same location.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit c2a148692b4d728e481b60a503e21931f9cf43f0)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/amd/vulkan/radv_cmd_buffer.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e335bbfac1c961d39d9c4890082d3be123bdd2e0
Author: Eric Engestrom <eric.engestrom at intel.com>
Date: Wed Feb 27 15:26:08 2019 +0000
egl: fix libdrm-less builds
This function was never used, and isn't properly guarded by HAVE_LIBDRM,
breaking the build on systems that don't have libdrm.
Let's just remove it.
Fixes: 7552fcb7b9b98392e6a8 "egl: add base EGL_EXT_device_base implementation"
Reported-by: Timo Aaltonen <tjaalton at debian.org>
Signed-off-by: Eric Engestrom <eric.engestrom at intel.com>
Acked-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit bcc4bfc8e80da5dc4c6ee44f791f2112dac208d1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6c58cea17fd416742797df3d8b813e3f367044c8
Author: Tapani Pälli <tapani.palli at intel.com>
Date: Wed Feb 20 09:18:39 2019 +0200
anv: retain the is_array state in create_plane_tex_instr_implicit
This does not seem to fix anything ATM but is the right thing todo.
Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
Fixes: f3e91e78a33775 ("anv: add nir lowering pass for ycbcr textures")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
(cherry picked from commit 33bf3d510c98a22706eb25815f1214d2e1a0e868)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9e6c9451bdf3b326d9a08392d11e2994f6d953a9
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Wed Feb 27 00:12:01 2019 -0600
spirv: OpImageQueryLod requires a sampler
No idea how this fell through the cracks besides the fact that the
sampler bound at 0 almost always works and the CTS isn't amazing. In
any case, this appears to have been broken for almost forever.
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Cc: mesa-stable at lists.freedesktop.org
(cherry picked from commit ca295ddbfb414a526d3bab7daf93fffbbc417c6e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e25fbf75916e1c489f1a210fe737ce36006af1a5
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Fri Mar 1 14:01:08 2019 -0600
anv: Count surfaces for non-YCbCr images in GetDescriptorSetLayoutSupport
We were accidentally not counting those surfaces
Fixes: ddc4069122 "anv: Implement VK_KHR_maintenance3"
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
(cherry picked from commit 5049fbddb4687799a10eb585c8789afa0d080535)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dd2aa5aa16c6ed809bbf1c4030a821057b4e720d
Author: Axel Davy <davyaxel0 at gmail.com>
Date: Fri Feb 22 20:45:51 2019 +0100
st/nine: Ignore multisample quality level if no ms
Apparently instead of returning error when passing
a quality level different than 0 for
D3DMULTISAMPLE_NONE, we should pass.
Fixes: https://github.com/iXit/Mesa-3D/issues/340
Cc: mesa-stable at lists.freedesktop.org
Signed-off-by: Axel Davy <davyaxel0 at gmail.com>
(cherry picked from commit 1d363d440f261fbadc1db3c17acc514b7130d505)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a33ce38f558753092f8ab439465c8bc75536892d
Author: Axel Davy <davyaxel0 at gmail.com>
Date: Wed Jan 2 22:13:12 2019 +0100
st/nine: Ignore window size if error
Check GetWindowInfo and ignore the computed sizes
if there is an error.
Fixes a regression caused by earlier commit when
using old wine gallium nine patches.
Should also address a crash at window destruction.
Related issues:
https://github.com/iXit/Mesa-3D/issues/331
https://github.com/iXit/Mesa-3D/issues/332
Cc: mesa-stable at lists.freedesktop.org
Fixes: 2318ca68bbe ("st/nine: Handle window resize when a presentation buffer is used")
Signed-off-by: Axel Davy <davyaxel0 at gmail.com>
(cherry picked from commit 86666f051e0cae96f2596cac05e3c3f394744149)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/gallium/state_trackers/nine/swapchain9.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=eb699918cc4299f1d2f5ba1a22361c9ada9994ab
Author: Mauro Rossi <issor.oruam at gmail.com>
Date: Sat Mar 2 23:38:27 2019 +0100
android: anv: fix libexpat shared dependency
Fixes undefined reference building errors for XML_* functions
Signed-off-by: Mauro Rossi <issor.oruam at gmail.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
Cc: "19.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit ec0f465bc5f02c93aeb4193db8b5bd90a254b080)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ec1746527a717323e213702bc6489ec473318515
Author: Mauro Rossi <issor.oruam at gmail.com>
Date: Mon Mar 4 10:34:08 2019 +0100
android: anv: fix generated files depedencies (v2)
Fix anv_extrypoints.{c,h} and anv_extensions.{c,h} missing dependencies
Rename the variable labels according to targets and python scripts
Align the building rules as per Automake for simplification
Fixes building errors during rebuils due to missing dependencies
(v2) Fixed a missing $(VULKAN_API_XML) reference
Fixes: 9a508b7 ("android: anv/extensions: fix generated sources build")
Fixes: dd088d4bec7 ("anv/extensions: Generate a header file with extension tables")
Signed-off-by: Mauro Rossi <issor.oruam at gmail.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
Cc: "19.0" <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 14e7e26a0991e7f9b1d20147f04a43bb4cc3f824)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b6bb18496fa896cd2071fffb11d4f5ab5d993a5f
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Wed Mar 6 21:38:33 2019 +0000
cherry-ignore: add 19.0 only glsl/tcs/xfb nominations
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7c3c0823bafffdc725a2651d8b55ac32acf355da
Author: Ray Zhang <zhanglei002 at gmail.com>
Date: Wed Feb 27 06:54:05 2019 +0000
glx: fix shared memory leak in X11
call XShmDetach to allow X server to free shared memory
Fixes: bcd80be49a8260c2233d "drisw/glx: use XShm if possible"
Signed-off-by: Ray Zhang <zhanglei002 at gmail.com>
Reviewed-by: Dave Airlie <airlied at redhat.com>
(cherry picked from commit b344e32cdf7064a1f2ff7ef37027edda6589404f)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8919ea0672f61f6ad194af808a5b02eaf5de5b0d
Author: Timothy Arceri <tarceri at itsqueeze.com>
Date: Wed Feb 27 18:26:07 2019 +1100
glsl: fix shader cache for packed param list
Some types of params such as some builtins are always padded. We
need to keep track of this so we can restore the list correctly.
Here we also remove a couple of cache entries that are not actually
required as they get rebuilt by the _mesa_add_parameter() calls.
This patch fixes a bunch of arb_texture_multisample and
arb_sample_shading piglit tests for the radeonsi NIR backend.
Fixes: edded1237607 ("mesa: rework ParameterList to allow packing")
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
(cherry picked from commit 7536af670b7501228628a8c90f9e8456b5aec9e1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=24db6eeca135bfa72ace137c245c8c439ebc8cc2
Author: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
Date: Mon Feb 25 16:21:48 2019 +0200
i965: Fix allow_higher_compat_version workaround limited by OpenGL 3.0
Added check for higher compat profile being allowed
before assigning certain extensions.
Fixes: 272fe9494232 (mesa: enable ARB_texture_buffer_* extensions in the Compatibility profile)
Signed-off-by: Danylo Piliaiev <danylo.piliaiev at globallogic.com>
Signed-off-by: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107052
(cherry picked from commit 07f4b4e4034d6c9f48d136ec39a03e59f65783cb)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5a7cad3d52cca0ed54dc408da5699373e04b53c9
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Sat Feb 23 14:33:31 2019 +0100
radv: Interpolate less aggressively.
Seems like dxvk used integer builtins without setting the flat
interpolation decoration.
I believe in the current spec the app is required to set these,
but in the meantime to avoid breaking things in stable releases
(and so close to release for 19.0), only expand the interpolation
to float16 and struct (which cannot be builtins as our spirv parser
lowers the builtin block).
Fixes: f3247841040 "radv: Allow interpolation on non-float types."
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit c0110477b5503978adf37f64c65c30c9304e3fe4)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6765cee986db8406d57ec81420c140c5a7937523
Author: Eleni Maria Stea <estea at igalia.com>
Date: Fri Feb 22 23:02:30 2019 +0200
i965: fixed clamping in set_scissor_bits when the y is flipped
Calculating the scissor rectangle fields with the y flipped (0 on top)
can generate negative values that will cause assertion failure later on
as the scissor fields are all unsigned. We must clamp the bbox values
again to make sure they don't exceed the fb_height. Also fixed a
calculation error.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108999
https://bugs.freedesktop.org/show_bug.cgi?id=109594
v2:
- I initially clamped the values inside the if (Y is flipped) case
and I made a mistake in the calculation: the clamp of the bbox[2] should
be a check if (bbox[2] >= fbheight) bbox[2] = fbheight - 1 instead and I
shouldn't have changed the ScissorRectangleYMax calculation. As the
fixed code is equivalent with using CLAMP instead of MAX2 at the top of
the function when bbox[2] and bbox[3] are calculated, and the 2nd is more
clear, I replaced it. (Nanley Chery)
v3:
- Reversed the CLAMP change in bbox[3] as the API guarantees that the
viewport height is positive. (Nanley Chery)
v4:
- Added nomination for the mesa-stable branch and the link to the second
bugzilla bug (Nanley Chery)
CC: <mesa-stable at lists.freedesktop.org>
Tested-by: Paul Chelombitko <qamonstergl at gmail.com>
Reviewed-by: Nanley Chery <nanley.g.chery at intel.com>
(cherry picked from commit fd37a19ac4c8b2ebff330b2a06a7f311f7d478e3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=eb9912b5c7b365f64620bf36428349aa028e7044
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Thu Feb 14 11:23:58 2019 +0000
meson: egl: correctly manage loader/xmlconfig
Earlier commit introduced support for haiku yet did not properly
annotate the loader/xmlconfig dependencies.
Thus we ended up adding inc_loader for each !haiku platform - see
659910eda01 9a96bf0ecd0 c731508b988 ec6cb01e216.
One piece remained though - the wayland platform. Hence the following
would fail:
meson -Dgallium-drivers=etnaviv -Ddri-drivers=''\
-Dtools=etnaviv -Dplatforms=wayland -Dglx=disabled \
build/
Cc: Alexander von Gluck IV <kallisti5 at unixzen.com>
Reported-by: Boris Brezillon <boris.brezillon at collabora.com>
Fixes: 834d221512f ("meson: Add Haiku platform support v4")
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Tested-by: Boris Brezillon <boris.brezillon at collabora.com>
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
Reviewed-by: Dylan Baker <dylan at pnwbakers.com>
(cherry picked from commit f0a7b463b5586972f4b7f5d9d84eb0564087ce3f)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/egl/meson.build
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b79bac03c4926fc155752f50febeb60c5b668f60
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Feb 25 15:28:25 2019 +0100
radv: don't copy buffer descriptors list for samplers
Sampler descriptors don't have a buffer list.
This fixes some crashes with new CTS
dEQP-VK.binding_model.descriptor_copy.*.sampler_*.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 4924dfc851e52c383380ae56be4d8606684ead7c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0a261496f87094b6dbe5f1f7bba2b8beff6a136d
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Feb 25 15:28:24 2019 +0100
radv: fix out-of-bounds access when copying descriptors BO list
We shouldn't increment the buffer list pointers twice.
This fixes some crashes with new CTS
dEQP-VK.binding_model.descriptor_copy.*.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 9256e0a09dfa94fecfef8e250755732ac35689ec)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b72e2f860049ab0a7e2d77e6a7fcc361119da9a2
Author: Tapani Pälli <tapani.palli at intel.com>
Date: Mon Feb 25 11:14:11 2019 +0200
nir: initialize value in copy_prop_vars_block
Fixes following valgrind warning:
==27561== Conditional jump or move depends on uninitialised value(s)
==27561== at 0x667856B: value_set_ssa_components (nir_opt_copy_prop_vars.c:78)
==27561== by 0x667A1C4: copy_prop_vars_block (nir_opt_copy_prop_vars.c:797)
Fixes: 62332d139c8 "nir: Add a local variable-based copy propagation pass"
Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
(cherry picked from commit 22267feff1a35c4b6f1f0cb9c8e371727f99b5d6)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3c4cc070c12ca8dcb287dcb10bff32ae19913d32
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Feb 25 12:14:59 2019 +0100
radv: fix clearing attachments in secondary command buffers
If no framebuffer is bound, get the number of samples and the
image format from the render pass.
This fixes new CTS dEQP-VK.geometry.layered.*.secondary_cmd_buffer.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 5671f38085216caf2cbf221a9fcda08b7571a762)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/amd/vulkan/radv_meta_clear.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1f09d08a4f19dcd5661e0abc2cb5ed424c954cac
Author: Sergii Romantsov <sergii.romantsov at globallogic.com>
Date: Fri Feb 22 11:23:08 2019 +0200
d3d: meson: do not prefix user provided d3d-drivers-path
The user can select the location where there d3d drivers
are installed by the d3d-drivers-path meson option.
By default path will be $prefix/$libdir/d3d.
Currently we add $prefix to the user provided path.
Resulting in an incorrect or even missing path.
Based on logic of
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109698
CC: Kenneth Graunke <kenneth at whitecape.org>
CC: Emil Velikov <emil.l.velikov at gmail.com>
Signed-off-by: Sergii Romantsov <sergii.romantsov at globallogic.com>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit dcc48664197c7e44684ccfb970a4ae083974d145)
Fixes: b7c6870f87a ("meson: Add moduledir to d3d.pc")
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5ed1b33205bd5605b3e2a7b319aa47d6f7238dc1
Author: Sergii Romantsov <sergii.romantsov at globallogic.com>
Date: Thu Feb 21 10:28:11 2019 +0200
dri: meson: do not prefix user provided dri-drivers-path
The user can select the location where there dri drivers
are installed by the dri-drivers-path meson option.
By default path will be $prefix/$libdir/dri.
Currently we add $prefix to the user provided path.
Resulting in an incorrect or even missing path.
v2: fixed dri_search_path by default, rebased to master
v3: new commit-message (Emil Velikov), cc mesa-stable
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109698
CC: Rafael Antognolli <rafael.antognolli at intel.com>
CC: Dylan Baker <dylan at pnwbakers.com>
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Fixes: 306914db92e1 (meson: Add dridriverdir variable to dri.pc.)
Signed-off-by: Sergii Romantsov <sergii.romantsov at globallogic.com>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit f6556ec7d126b31da37c08d7cb657250505e01a0)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f67fa564f407d84f1ef95a22090d826cd0d7c54
Author: David Shao <davshao at gmail.com>
Date: Sun Feb 24 09:00:36 2019 +0000
meson: ensure that xmlpool_options.h is generated for gallium targets that need it
Fixes: 68076b87474e7959c161 "meson: build gallium vdpau state tracker"
Fixes: 22a817af8a89eb3c762f "meson: build gallium xvmc state tracker"
Fixes: 5a785d51a6d68ec676ce "meson: build gallium va state tracker"
Fixes: 0ba909f0f111824223bc "meson: build gallium xa state tracker"
Fixes: 1d36dc674d528b93bec3 "meson: build gallium omx state tracker"
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
(cherry picked from commit 6fa923a65daf1ee73c5cc763ade91abc82da7085)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=09542cd07074574efd85a9c9dc25748fde2274b3
Author: Alok Hota <alok.hota at intel.com>
Date: Thu Feb 21 14:41:15 2019 -0600
swr/rast: bypass size limit for non-sampled textures
This fixes a bug where SWR will fail to render in cases with large
buffer allocations, e.g. very large meshes whose vertex buffers exceed
2GB
CC: <mesa-stable at lists.freedesktop.org>
Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>
(cherry picked from commit 6053499f2eafde606b13a9663016e9be8e4089eb)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=483f947a58a72a9ac9e77ca1e2a276afe078733c
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Feb 20 17:21:32 2019 -0500
tgsi: don't set tgsi_info::uses_bindless_images for constbufs and hw atomics
This might have decreased performance for radeonsi/tgsi, because most
most shaders claimed they used bindless.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
(cherry picked from commit b326a15edab34d09e7b328dd8726137960ae12a5)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e5bc47ca7d4793b096c644fb37b828854ca1943b
Author: Juan A. Suarez Romero <jasuarez at igalia.com>
Date: Fri Feb 22 16:47:53 2019 +0100
anv: advertise 8 subpixel precision bits
On one side, when emitting 3DSTATE_SF, VertexSubPixelPrecisionSelect is
used to select between 8 bit subpixel precision (value 0) or 4 bit
subpixel precision (value 1). As this value is not set, means it is
taking the value 0, so 8 bit are used.
On the other side, in the Vulkan CTS tests, if the reference rasterizer,
which uses 8 bit precision, as it is used to check what should be the
expected value for the tests, is changed to use 4 bit as ANV was
advertising so far, some of the tests will fail.
So it seems ANV is actually using 8 bits.
v2: explicitly set 3DSTATE_SF::VertexSubPixelPrecisionSelect (Jason)
v3: use _8Bit definition as value (Jason)
v4: (by Jason)
anv: Explicitly set 3DSTATE_CLIP::VertexSubPixelPrecisionSelect
This field was added on gen8 even though there's an identically defined
one in 3DSTATE_SF.
CC: Jason Ekstrand <jason at jlekstrand.net>
CC: Kenneth Graunke <kenneth at whitecape.org>
CC: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Juan A. Suarez Romero <jasuarez at igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 4f917e6a61860b58a05d40584f7aa3d5e4e32b75)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=da4db48c191dc8bdf929b47949e53e6fb3562e84
Author: Juan A. Suarez Romero <jasuarez at igalia.com>
Date: Fri Feb 22 16:16:24 2019 +0100
genxml: add missing field values for 3DSTATE_SF
Fill out "Vertex Sub Pixel Precision Select" possible values.
CC: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Juan A. Suarez Romero <jasuarez at igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 3b423eeb2d326418147fdfbdc89a415e44a557d3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d9d90ac6631324e891a2877adc6febe5f91ac218
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Fri Feb 22 14:24:28 2019 +0100
radv: Allow interpolation on non-float types.
In particular structs containing floats and 16-bit floating point
types.
Fixes: 62024fa7750 "radv: enable VK_KHR_16bit_storage extension / 16bit storage features"
Fixes: da295946361 "spirv: Only split blocks"
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109735
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit f3247841040a202faffe4709c07da9bd41693580)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e8d3c8458291e02459146bb458547baec93d2efe
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Fri Feb 22 14:16:08 2019 +0100
radv: Fix float16 interpolation set up.
float16 types can have non-flat interpolation so set up the HW
correctly for that.
Fixes: 62024fa7750 "radv: enable VK_KHR_16bit_storage extension / 16bit storage features"
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit a1fdd4a4a73604469b6204a56457b08f8ae4a948)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/amd/vulkan/radv_nir_to_llvm.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd00bd7c5967ed2bb93e485e8d0b4490fe949ae7
Author: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Date: Wed Feb 20 12:49:17 2019 +0000
intel: fix urb size for CFL GT1
Same 192Kb amount as SKL/KBL GT1 applies.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
Fixes: de7ed0ba5522 ("i965/CFL: Add PCI Ids for Coffee Lake.")
(cherry picked from commit 1d626fc02895daa9e7f7c74a829b9512f08869e8)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6a8802aa7fb43812e4424effa946bf61dc4725e
Author: Francisco Jerez <currojerez at riseup.net>
Date: Fri Jan 18 12:51:57 2019 -0800
intel/fs: Implement extended strides greater than 4 for IR source regions.
Strides up to 32B can be implemented for the source regions of most
instructions by leveraging either the vertical or the horizontal
stride of the hardware Align1 region. The main motivation for this is
that currently the lower_integer_multiplication() pass will happily
double the stride of one of the 32-bit sources, which can blow up if
the stride of the original source was already the maximum value
allowed by the hardware.
An alternative would be to use the regioning legalization pass in
order to lower such strides into the composition of multiple legal
strides, but that would be somewhat less efficient.
This showed up as a regression from my commit cbea91eb57a501bebb1ca2
in Vulkan 1.1 CTS tests on CHV/BXT platforms, however it was really a
pre-existing problem that had affected conformance on other platforms
without native support for integer multiplication. CHV/BXT were
getting around it because the code I removed in that commit had the
"fortunate" side effect of emitting narrower regions that didn't hit
the hardware stride limit after lowering. Beyond fixing the
regression this fixes ~90 additional Vulkan 1.1 subgroup CTS tests on
ICL (that's why this patch is marked for inclusion in mesa-stable even
though the original regressing patch was not).
According to Jason, a nearly equivalent change had been committed
previously as e8c9e65185de3e821e1 and then (mistakenly?) reverted as
a31d0382084c8aa8.
Cc: mesa-stable at lists.freedesktop.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109328
Reported-by: Mark Janes <mark.a.janes at intel.com>
Tested-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit e03be78252afa8f1033b0824eff8d48df4fd6727)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3481eafb8a22bac39d98144ebea9eb254aed7586
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Wed Feb 13 16:34:27 2019 -0600
nir/xfb: Handle compact arrays in gather_xfb_info
This makes us properly handle gl_ClipDistance and gl_CullDistance.
Fixes: 19064b8c "nir: Add a pass for gathering transform feedback info"
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
(cherry picked from commit 1a93fc382b18ee6d1135952d23f0b6a8aa8cd31f)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6fb3cec8bc55d140e12c5161ad5e404baa698e6f
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Wed Feb 13 16:22:37 2019 -0600
nir/xfb: Work in terms of components rather than slots
We needed to better handle cases where a chunk of a variable starts at
some non-zero location_frac and rolls over into the next slot but may
not be more than 4 dwords. For example, if gl_CullDistance is an array
of 3 things and has location_frac = 2, it will span across two vec4s but
is not, itself, bigger than a vec4. If you ignore the clip/cull special
case, it's not allowed to happen for anything else because the only
things that can span more than one slot is dvec3 and dvec4 and they're
both bigger than a vec4. The current code uses this attrib_slot thing
where we count attribute slots and iterate over them. However, that
doesn't work in the case above because gl_CullDistance will have an
attrib_slot count of 1 even though it does span two slots. We could fix
this by adjusting attrib_slot but we already have comp_mask and it's
easier to just handle it that way.
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
(cherry picked from commit 558c3145045f1c6da8bddb31ed77a418ab27f2f9)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/compiler/nir/nir_gather_xfb_info.c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8bc0c75e6418cbc003aa26e6c138bf40985d5397
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Tue Feb 12 12:49:08 2019 -0600
nir/xfb: Properly align 64-bit values
Fixes: 19064b8c "nir: Add a pass for gathering transform feedback info"
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
(cherry picked from commit 8f0fe71cc5658728adc273daa03400aab7ec6d93)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=910d7fe36cdfbee8dcd2481fd154bac165281709
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Tue Feb 12 13:03:34 2019 -0600
compiler/types: Add a contains_64bit helper
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
(cherry picked from commit 30b548fc6258e9a72722f511e377cf4716fd443c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=20e369fabf899167364637fe9c8279b15636891c
Author: Andrii Simiklit <andrii.simiklit at globallogic.com>
Date: Fri Jan 25 15:03:07 2019 +0200
i965: re-emit index buffer state on a reset option change.
Seems like we forget to update the index buffer (ib) status and
IndexedDrawCutIndexEnable or CutIndexEnable flag is left unchanged it
leads to ignoring of glEnable/glDisable functions for GL_PRIMITIVE_RESTART
in some cases. The index buffer (ib) status should be re-emmited after the
reset option change to avoid some unexpected behavior.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109451
Cc: <mesa-stable at lists.freedesktop.org>
Signed-off-by: Andrii Simiklit <andrii.simiklit at globallogic.com>
Signed-off-by: Andrii Simiklit <asimiklit.work at gmail.com>
(cherry picked from commit f4f4ec941e1427142656e588244f378e469e996e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=036b326e02261d316250cbf7587299b49245e8c2
Author: Carlos Garnacho <carlosg at gnome.org>
Date: Tue Nov 20 18:06:38 2018 +0100
wayland/egl: Ensure EGL surface is resized on DRI update_buffers()
Fullscreening and unfullscreening a totem window while playing a video
sometimes results in the video subsurface not changing size along. This
is also reproducible with epiphany.
If a surface gets resized while we have an active back buffer for it, the
resized dimensions won't get neither immediately applied on the resize
callback, nor correctly synchronized on update_buffers(), as the
(now stale) surface size and currently attached buffer size still do match.
There's actually 2 things to synchronize here, first the surface query
size might not be updated yet to the wl_egl_window's (i.e. resize_callback
happened while there is a back buffer), and second the wayland buffers
would need dropping if new surface size differs with the currently attached
buffer. These are done in separate steps now.
https://bugzilla.redhat.com/show_bug.cgi?id=1650929
https://bugs.freedesktop.org/show_bug.cgi?id=109594
Fixes: a9fb331ea7d ("wayland/egl: update surface size on window resize")
Signed-off-by: Carlos Garnacho <carlosg at gnome.org>
Reviewed-by: Juan A. Suarez <jasuarez at igalia.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
Tested-by: Bastien Nocera <hadess at hadess.net>
Tested-by: Denys Kostin <denys.kostin at globallogic.com>
(cherry picked from commit 30a01cd9232ed83a0259d184b82e050bae219ed3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9b483d945b50a8ca037bbbf43b37781845a92943
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Wed Feb 20 02:19:42 2019 +0100
radv: Sync ETC2 whitelisted devices.
Fixes: 4bb6c49375e "radv: Allow ETC2 on RAVEN and VEGA10 instead of all GFX9."
Reviewed-by: Dave Airlie <airlied at redhat.com>
(cherry picked from commit 7631feaa0040616585cf69b52241d2b06b82b524)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c7aeed2925377cac41226b8f7b6672fd68334699
Author: Marek Olšák <marek.olsak at amd.com>
Date: Tue Feb 19 17:29:52 2019 -0500
driconf: add Civ6Sub executable for Civilization 6
I'm getting Civ6Sub instead of Civ6.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
(cherry picked from commit bff8da6c591e55e4b5f04aea1fef29e6230e9222)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d46291c003fcd4d72e5ff0b0f41b188a314b6f3c
Author: Marek Olšák <marek.olsak at amd.com>
Date: Tue Feb 19 17:21:20 2019 -0500
radeonsi: always enable NIR for Civilization 6 to fix corruption
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104602
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
(cherry picked from commit ae21bdf47cacafdf69b904cbf3e433cbe0cccb84)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=444d1ccc282b10b6d62d8d72919c33a36d2c37c8
Author: Marek Olšák <marek.olsak at amd.com>
Date: Tue Feb 19 17:20:01 2019 -0500
radeonsi: add driconf option radeonsi_enable_nir
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
(cherry picked from commit ccbfe44e5ff88a19451701561f752c6046677122)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c1fa0ec0e5e227ef2fad51ac79a7dd849f0e0689
Author: Rhys Perry <pendingchaos02 at gmail.com>
Date: Thu Dec 6 12:11:00 2018 +0000
radv: ensure export arguments are always float
So that the signature is correct and consistent, the inputs to a export
intrinsic should always be 32-bit floats.
This and the previous commit fixes a large amount crashes from
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_*
tests
Fixes: b722b29f10d ('radv: add support for 16bit input/output')
Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit 0ca550e01ac55c67c2deef50f5cb750a0181352b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0633c4ef9d656729847bc8c9eee37b60a121a61d
Author: Rhys Perry <pendingchaos02 at gmail.com>
Date: Thu Dec 6 12:10:41 2018 +0000
radv: bitcast 16-bit outputs to integers
16-bit outputs are stored as 16-bit floats in the outputs array, so they
have to be bitcast.
Fixes: b722b29f10d ('radv: add support for 16bit input/output')
Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
(cherry picked from commit 64065aa504c4872a15f7b0894b6037a6b2bcae65)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d0f7e6f218101b77da219d79690df4e7ee61de1b
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Feb 18 17:42:10 2019 +0100
radv: fix writing the alpha channel of MRT0 when alpha coverage is enabled
This version is better and safer.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 47616810ed7cfce21d239391131ad9a5ef558b52)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=242ef8d20b41d7d6e01a6366b9c4e7e8ac336dca
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Fri Feb 15 18:02:52 2019 +0100
radv: write the alpha channel of MRT0 when alpha coverage is enabled
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109597
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 0d8f09629377da9cf48ab4315574d69fdef5369d)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=41d78f9ed7ebbdd8bd10268635e9bc883a8ffc33
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Mon Feb 11 22:39:45 2019 -0600
intel/fs: Bail in optimize_extract_to_float if we have modifiers
This fixes a bug in runscape where we were optimizing x >> 16 to an
extract and then negating and converting to float. The NIR to fs pass
was dropping the negate on the floor breaking a geometry shader and
causing it to render nothing.
Fixes: 1f862e923cb "i965/fs: Optimize float conversions of byte/word..."
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109601
Tested-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Matt Turner <mattst88 at gmail.com>
(cherry picked from commit 367b0ede4d9115aba772d6e46ec73642761f7ff6)
[Emil: resolve trivial conflicts]
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
Conflicts:
src/intel/compiler/brw_fs_nir.cpp
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bfb5bdaa97272537567cdf1e6caf1c7db9f28aba
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Mon Feb 18 18:33:16 2019 +0000
docs: add sha256 checksums for 18.3.4
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b26488deadc3a8221d558a323dbe81dcf09115ab
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Mon Feb 18 18:23:55 2019 +0000
docs: add release notes for 18.3.4
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a41881fcaa76b5e472229ccd4fee467e200a284a
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Mon Feb 18 18:19:54 2019 +0000
Update version to 18.3.4
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=55f3a4fac350e639dbaa7cf6494a2c1f8f0ed9c2
Author: Eric Anholt <eric at anholt.net>
Date: Mon Feb 11 11:51:35 2019 -0800
vc4: Fix copy-and-paste fail in backport of NEON asm fixes.
One of the cpu pointers wasn't marked as read-write, causing gcc to complain:
../src/gallium/drivers/vc4/vc4_tiling_lt.c:181:17: error: output operand constraint lacks ‘=’
__asm__ volatile (
Cc: Emil Velikov <emil.l.velikov at gmail.com>
Fixes: 813f0a82960 ("vc4: Declare the cpu pointers as being modified in NEON asm.")
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d000488c2eff466eddc0345ad97b49351f0b7a6a
Author: Dylan Baker <dylan at pnwbakers.com>
Date: Wed Feb 13 09:26:16 2019 -0800
meson: Add dependency on genxml to anvil
Currently the Intel "anvil" driver races with the generation of genxml
files, while i965 has an explicit dependency. This patch adds the same
dependency to anvil.
Fixes: d1992255bb29054fa51763376d125183a9f602f
("meson: Add build Intel "anv" vulkan driver")
Acked-by: Jason Ekstrand <jason at jlekstrand.net>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
(cherry picked from commit 279060cd32dd673c6a5bf302ceac852f51a6c17c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4aa92b54e52ee40bca78247ac5906d67d148a82a
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Tue Feb 12 09:50:15 2019 +0100
radv: always export gl_SampleMask when the fragment shader uses it
For some reasons, this breaks trees rendering in Project Cars.
Fixes: 85010585cde ("radv: only enable gl_SampleMask if MSAA is enabled too")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109401
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 334da034d8d91ca5a0a1bff8deaefd8ca762c42e)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=08ab660bf549c504e951cb6e2bcadca68d44c191
Author: Dylan Baker <dylan at pnwbakers.com>
Date: Tue Feb 12 14:03:21 2019 -0800
get-pick-list: Add --pretty=medium to the arguments for Cc patches
Because none of them have been picked up for 19.0 due to this bug
being reintroduced.
v2: - Fix fixes tags
Fixes: e6b3a3b2014413366110f6deeced8095e7262b1d
("bin/get-pick-list.sh: handle "typod" usecase.")
Fixes: fac10169bbad2da918ef07a62c01e0b321508cfe
("bin/get-pick-list.sh: prefix output with "[stable] "")
Reviewed-by: Andres Gomez <agomez at igalia.com>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
(cherry picked from commit aff52dd2c61eb8d1b03cebbcca7e070ffa48afdf)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4bb51927aab1f42cf9cb4f65b14939fe553296d1
Author: Oscar Blumberg <carnaval at 12-10e.me>
Date: Tue Feb 12 21:52:51 2019 +0100
radeonsi: Fix guardband computation for large render targets
Stop using 12.12 quantization for viewports that are not contained in
the lower 4k corner of the render target as the hardware needs to keep
both absolute and relative coordinates representable.
Signed-off-by: Marek Olšák <marek.olsak at amd.com>
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 3c540e0a748844258e77254fc4f864f3b875fe18)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7662965ce96e2987a2356608f7c73ca8cf492dcd
Author: Juan A. Suarez Romero <jasuarez at igalia.com>
Date: Tue Feb 12 19:19:13 2019 +0100
anv/cmd_buffer: check for NULL framebuffer
This can happen when we record a VkCmdDraw in a secondary buffer that
was created inheriting from the primary buffer, but with the framebuffer
set to NULL in the VkCommandBufferInheritanceInfo.
Vulkan 1.1.81 spec says that "the application must ensure (using scissor
if neccesary) that all rendering is contained in the render area [...]
[which] must be contained within the framebuffer dimesions".
While this should be done by the application, commit 465e5a86 added the
clamp to the framebuffer size, in case of application does not do it.
But this requires to know the framebuffer dimensions.
If we do not have a framebuffer at that moment, the best compromise we
can do is to just apply the scissor as it is, and let the application to
ensure the rendering is contained in the render area.
v2: do not clamp to framebuffer if there isn't a framebuffer
v3 (Jason):
- clamp earlier in the conditional
- clamp to render area if command buffer is primary
v4: clamp also x and y to render area (Jason)
v5: rename used variables (Jason)
Fixes: 465e5a86 ("anv: Clamp scissors to the framebuffer boundary")
CC: Jason Ekstrand <jason at jlekstrand.net>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 1ad26f941792f07f226c054811be78b0c0ac9fce)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6cea56e2c275f6036356d23420a1184129781382
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Tue Feb 12 18:22:46 2019 +0000
cherry-ignore: radv: fix using LOAD_CONTEXT_REG with old GFX ME firmwares on GFX8
stable The commit addresses functionality not present in branch.
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b48a26072eb6ccb1e862108a4807983dba44776
Author: Rodrigo Vivi <rodrigo.vivi at intel.com>
Date: Sat Feb 2 00:03:04 2019 -0800
intel: Add more PCI Device IDs for Coffee Lake and Ice Lake.
Align with kernel commits:
5e0f5a58b167 ("drm/i915/cfl: Adding another PCI Device ID.")
03ca3cf8e9aa ("drm/i915/icl: Adding few more device IDs for Ice Lake")
Cc: José Roberto de Souza <jose.souza at intel.com>
Cc: Kenneth Graunke <kenneth at whitecape.org>
Cc: Anuj Phogat <anuj.phogat at gmail.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi at intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
(cherry picked from commit 56c3b4971d44748ad8618efdf8833ec2f9af4078)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d3f49ece4e2b74c317ccb60b319d2cc284c22043
Author: Mario Kleiner <mario.kleiner.de at gmail.com>
Date: Wed Jun 13 06:04:15 2018 +0200
egl/wayland-drm: Only announce formats via wl_drm which the driver supports.
Check if a pixel format is supported by the Wayland servers gpu driver
before exposing it to the client via wl_drm, so we avoid reporting formats
to the client which the server gpu can't handle.
Restrict this reporting to the new color depth 30 formats for now, as the
ARGB/XRGB8888 and RGB565 formats are probably supported by every gpu under
the sun.
Atm. this is mostly useful to allow proper PRIME renderoffload for depth
30 formats on the typical Intel iGPU + NVidia dGPU "NVidia Optimus" laptop
combo.
Tested on Intel, AMD, NVidia with single-gpu setup and on a Intel + NVidia
Optimus setup.
Signed-off-by: Mario Kleiner <mario.kleiner.de at gmail.com>
Reviewed-by: Adam Jackson <ajax at redhat.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
(cherry picked from commit 820dfcea431e4f96f25e6b340edd9cd1e449158b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=ecad528a11e7c4d4a2e7af7d46d8f3013e3984f9
Author: Mario Kleiner <mario.kleiner.de at gmail.com>
Date: Wed Jun 13 06:04:14 2018 +0200
egl/wayland: Allow client->server format conversion for PRIME offload. (v2)
Support PRIME render offload between a Wayland server gpu and a Wayland
client gpu with different channel ordering for their color formats,
e.g., between Intel drivers which currently only support ARGB2101010
and XRGB2101010 import/display and nouveau which only supports ABGR2101010
rendering and display on nv-50 and later.
In the wl_visuals table, we also store for each format an alternate
sibling format which stores colors at the same precision, but with
different channel ordering, e.g., ARGB2101010 <-> ABGR2101010.
If a given client-gpu renderable format is not supported by the server
for import, but the alternate format is supported by the server, expose
the client-gpu renderable format as a valid EGLConfig to the client. At
eglSwapBuffers time, during the blitImage() detiling blit from the client
backbuffer to the linear buffer, the client format is converted to the
server supported format. As we have to do a copy for PRIME anyway,
this channel swizzling conversion comes essentially for free.
Note that even if a server gpu in principle does support sampling
from the clients native format, this conversion will be a performance
advantage if it allows to convert to the servers preferred format
for direct scanout, as the Wayland compositor may then be able to
directly page-flip a fullscreen client wl_buffer onto the primary
plane, or onto a hardware overlay plane, avoiding an extra data copy
for desktop composition.
Tested so far under Weston with: nouveau single-gpu, Intel single-gpu,
AMD single-gpu, "Optimus" Intel server iGPU for display + NVidia
client dGPU for rendering.
v2: Implement minor review comments by Eric Engestrom: Add some
comment and assert, and some style fixes for clarity.
No functional change.
Signed-off-by: Mario Kleiner <mario.kleiner.de at gmail.com>
Reviewed-by: Adam Jackson <ajax at redhat.com>
Reviewed-by: Daniel Stone <daniels at collabora.com>
(cherry picked from commit a34b0d68bbf8571e4d858cf4e1176766a50364de)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f036a040bbb10e4e71643ab6ac92f458da94f4a4
Author: Iago Toral Quiroga <itoral at igalia.com>
Date: Mon May 28 13:03:24 2018 +0200
intel/compiler: do not copy-propagate strided regions to ddx/ddy arguments
The implementation of these opcodes in the generator assumes that their
arguments are packed, and it generates register regions based on that
assumption.
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 391894321161b37a3f8ae1cae4ece6c72ea38bc1)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5694279c1441744326cd7bd937b3a90e0e49d629
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Mon Feb 11 10:17:52 2019 +0100
radv: fix compiler issues with GCC 9
"The C standard says that compound literals which occur inside of
the body of a function have automatic storage duration associated
with the enclosing block. Older GCC releases were putting such
compound literals into the scope of the whole function, so their
lifetime actually ended at the end of containing function. This
has been fixed in GCC 9. Code that relied on this extended lifetime
needs to be fixed, move the compound literals to whatever scope
they need to accessible in."
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109543
Cc: <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Gustaw Smolarczyk <wielkiegie at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
(cherry picked from commit 129a9f4937b8f2adb4d37999677d748d816d611c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=75340edb277f52f355b538a11c0b9c50e27d8195
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Sun Feb 10 22:49:20 2019 -0800
st/mesa: Limit GL_MAX_[NATIVE_]PROGRAM_PARAMETERS_ARB to 2048
Piglit's vp-max-array test creates a vertex program containing a uniform
array sized to the value of GL_MAX_NATIVE_PROGRAM_PARAMETERS_ARB. Mesa
will then add additional state-var parameters for things like the MVP
matrix.
radeonsi currently exposes a value of 4096, derived from constant buffer
upload size. This means the array will have 4096 elements, and the
extra MVP state-vars would get a prog_src_register::Index of over 4096.
Unfortunately, prog_src_register::Index is a signed 13-bit integer, so
values beyond 4096 end up turning into negative numbers. Negative
source indexes are only valid for relative addressing, so this ends up
generating illegal IR.
In prog_to_nir, this would cause an out of bounds array access.
st_mesa_to_tgsi checks for a negative value, assumes it's bogus,
and remaps it to parameter 0 in order to get something in-range.
This isn't right - instead of reading the MVP matrix, it would read
the first element of the vertex program's large array. But the test
only checks that the program compiles, so we never noticed that it
was broken.
This patch limits the size of the program limits, with the understanding
that we may need to generate additional state-vars internally. i965 has
exposed 1024 for this limit for years, so I don't expect lowering it to
2048 will cause any practical problems for radeonsi or other drivers.
Fixes vp-max-array with prog_to_nir.c.
Cc: "19.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
Reviewed-by: Eric Anholt <eric at anholt.net>
(cherry picked from commit f45dd6d31b2ff46a082931386ccd0bf043cfad59)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dafa02c980c15c89228cac7b120aac6610b9f464
Author: Leo Liu <leo.liu at amd.com>
Date: Fri Feb 8 09:48:23 2019 -0500
st/va/vp9: set max reference as default of VP9 reference number
If there is no information about number of render targets
Signed-off-by: Leo Liu <leo.liu at amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang at amd.com>
Cc: 19.0 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit a0a52a036708dbf5989778795fd67a79e3226289)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=36258308a794b157b561912d719724a44db281b2
Author: Leo Liu <leo.liu at amd.com>
Date: Fri Feb 8 08:56:53 2019 -0500
st/va: fix the incorrect max profiles report
Add "PIPE_VIDEO_PROFILE_MAX" to enum, so it will make sure here will
be correct when adding more profiles in the future.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109107
Signed-off-by: Leo Liu <leo.liu at amd.com>
Reviewed-by: Boyuan Zhang <boyuan.zhang at amd.com>
Cc: 19.0 <mesa-stable at lists.freedesktop.org>
(cherry picked from commit 21cdb828a3f4d1e2f140fc7c81a4bc305b2f6b04)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f1eccd091d7bb0d54db5d632704bf5dedae8a461
Author: Marek Olšák <marek.olsak at amd.com>
Date: Mon Feb 4 15:12:17 2019 -0500
winsys/amdgpu: don't drop manually added fence dependencies
wow, it's hard to believe that fence and syncobjs dependencies were ignored.
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit ddfe209a0d61917e7b08100eeac82f4c20ca59e8)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=945aa8740823bb79e6bd07980475c0b334107151
Author: Marek Olšák <marek.olsak at amd.com>
Date: Fri Feb 1 17:10:46 2019 -0500
radeonsi: fix EXPLICIT_FLUSH for flush offsets > 0
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit 61c678d4bc91d2ff9ca8c9b183e08daf07d8d24c)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b3b0a97f699db4873a7ccc0abb9dd0812b25e519
Author: Marek Olšák <marek.olsak at amd.com>
Date: Fri Feb 1 17:10:46 2019 -0500
gallium/u_threaded: fix EXPLICIT_FLUSH for flush offsets > 0
Cc: 18.3 19.0 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
(cherry picked from commit 4522f01d4ef9e8a1bb945ca28fba7649aae2171b)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3545986962a3a8e0937388d05ac304e4e559a082
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Sun Feb 10 22:23:01 2019 -0600
nir/deref: Rematerialize parents in rematerialize_derefs_in_use_blocks
When nir_rematerialize_derefs_in_use_blocks_impl was first written, I
attempted to optimize things a bit by not bothering to re-materialize
the sources of deref instructions figuring that the final caller would
take care of that. However, in the case of more complex deref chains
where the first link or two lives in block A and then another link and
the load/store_deref intrinsic live in block B it doesn't work. The
code in rematerialize_deref_in_block looks at the tail of the chain,
sees that it's already in block B and skips it, not realizing that part
of the chain also lives in block A.
The easy solution here is to just rematerialize deref sources of deref
instructions as well. This may potentially lead to a few more deref
instructions being created by the conditions required for that to
actually happen are fairly unlikely and, thanks to the caching, it's all
linear time regardless.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109603
Fixes: 7d1d1208c2b "nir: Add a small pass to rematerialize derefs per-block"
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>
(cherry picked from commit 9e6a6ef0d45a5bb61a541c495fe12e54e646ecfe)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a9c0e146efced68eab2de112304eb6acc0b78c67
Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date: Sat Feb 9 22:36:49 2019 -0500
nvc0: we have 16k-sized framebuffers, fix default scissors
For some reason we don't use view volume clipping by default, and use
scissors instead. These scissors were set to an 8k max fb size, while
the driver advertises 16k-sized framebuffers.
Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: <mesa-stable at lists.freedesktop.org>
(cherry picked from commit cc79a1483ffb7b91edc97c9870eadcab1e83b8f3)
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=541eb984ea0c946cf6de733d6aff80925636ca89
Author: Emil Velikov <emil.velikov at collabora.com>
Date: Thu Feb 14 12:32:02 2019 +0000
cherry-ignore: add more 19.0 only nominations from Ilia
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
More information about the mesa-commit
mailing list