- 18 Dec, 2019 3 commits
-
-
Dylan Baker authored
-
Dylan Baker authored
-
Dylan Baker authored
-
- 17 Dec, 2019 4 commits
-
-
When tearing down a GL context with an active performance query, the implementation can be confused by a query marked active when it's being deleted. This shouldn't happen in the implementation because the context will already be idle. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Closes: #2235 Reviewed-by:
Tapani Pälli <tapani.palli@intel.com> Tested-by: Marge Bot <!3115> Part-of: <!3115> (cherry picked from commit 2c8742ed)
-
With only linearly increasing the size of the shader transfer buffer the transfer of very large shaders may fail, so with each attempt double the size of the buffer. CTS: dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.48 for VTK-GL-CTS b5dcfb9c5 and newer virglrenderer bug: virgl/virglrenderer#150 Fixes: a8987b88 virgl: add driver for virtio-gpu 3D (v2) Signed-off-by:
Gert Wollny <gert.wollny@collabora.com> Reviewed-by:
Gurchetan Singh <gurchetansingh@chromium.org> Tested-by: Marge Bot <!3121> Part-of: <!3121> (cherry picked from commit cffa7bb9)
-
Dylan Baker authored
-
addrlib sometimes returns smaller sizes for tcCompat as it does not seem to take into account the depth+stencil matching config gymnastics with tcCompat. This fixes dEQP-VK.pipeline.render_to_image.core.2d_array.huge.height.r8g8b8a8_unorm_d32_sfloat_s8_uint CC: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!3054> (cherry picked from commit e197fb1c) Conflicts resolved by Dylan Baker Conflicts: src/amd/common/ac_surface.c
-
- 16 Dec, 2019 5 commits
-
-
Fixes: bea4d4c7 ("anv: add VK_EXT_sampler_filter_minmax support") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <!3071> (cherry picked from commit 0fd93b95)
-
Even without depth+stencil addrlib can (correctly!) decide to disable tc compatible HTILE. One example is 8x sampling with 32-bit depth on Stoney. The row size on Stoney is 1024, while the tile size is 2048, which results in tile splits which are not supported with tc-compat. On Stoney, this fixes dEQP-VK.glsl.builtin_var.fragdepth.*_list_d32_sfloat_multisample_8 CC: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Tested-by: Marge Bot <!3054> Part-of: <!3054> (cherry picked from commit b53856ac)
-
We appear to have got lucky that the only type of temporary fence payload we could have was a syncobj and that would only happen when the type of the permanent payload was also a syncobj. This code was broken if that assumption changed and it did in commit f9a3d973 . Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> Reviewed-by:
Ivan Briano <ivan.briano@intel.com> (cherry picked from commit 52bc235f)
-
Neither Mutter nor KWin's wayland compositors appear to use modifiers. In the non-modifier case, iris was still trying to use Y-tiling for scan-out surfaces, leading to this error: (gnome-shell:7247): mutter-WARNING **: 09:23:47.787: meta_drm_buffer_gbm_new failed: drmModeAddFB failed: Invalid argument We now fall back to the historical X-tiling for scanout buffers, which ought to work everyone, at lower performance. To regain that, we need to ensure modifiers are actually supported in environments people use. Fixes: fbf31247 ("iris: Rework tiling/modifiers handling") Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> (cherry picked from commit dcb4230e)
-
Fixes: a44744e0 "anv: Require a dedicated allocation for..." Reviewed-by:
Ivan Briano <ivan.briano@intel.com> Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit 0a36fafa) Conflicts resolved by Dylan Baker Conflicts: src/intel/vulkan/anv_device.c
-
- 11 Dec, 2019 2 commits
-
-
Dylan Baker authored
Fixes: 1ae8018a ("meson: Add support for the vc4 driver.") Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit d0eebda9)
-
Dylan Baker authored
Fixes: 1ae8018a ("meson: Add support for the vc4 driver.") Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 85a9698a)
-
- 10 Dec, 2019 5 commits
-
-
u_decomposed_prims_for_vertices cannot support POLYGON, but POLYGON is trivial to support as a special case directly (since we have the number of vertices directly). Fixes aborts in Panfrost in apps using GL_POLYGON. Fixes: e881aa8c ("gallium/util: Add u_stream_outputs_for_vertices helper") Signed-off-by:
Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Revewied-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit a37822f5)
-
It's a very odd case to hit in the real world. However, there are some CTS tests which switch back and forth between dispatch and clear without changing the pipeline. Fixes: bc612536 "anv: Emit a dummy MEDIA_VFE_STATE before switching..." Reviewed-by:
Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> (cherry picked from commit 0f60aa40)
-
This format will be used to properly handle planar images with modifiers in iris. Fixes: 246eebba ("iris: Export and import surfaces with modifiers that have aux data") Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 51ee8fff)
-
The commit noted below assumed and enforced that DRM_MOD_INVALID was the only valid modifier for multi-planar imported images. Due to that, it required that modifier on multi-planar images to: 1. Allow multiple planes. 2. Perform YUV format lowering and extent adjustments. 3. Use buffer_index to correctly map the given planes. Fix these issues by removing or updating the code built on that assumption. Fixes: 2066966c ("gallium/dri2: Support creating multi-planar modifier images") Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit d5c85783)
-
Iterate the system values list when adding varyings to the program resource list in the NIR linker. This is needed to avoid CTS regressions when using the NIR to build the GLSL resource list in an upcoming series. Presumably it also fixes a bug with the current ARB_gl_spirv support. Fixes: ffdb44d3 ("nir/linker: Add inputs/outputs to the program resource list") Reviewed-by:
Alejandro Piñeiro <apinheiro@igalia.com> (cherry picked from commit 1abca2b3)
-
- 04 Dec, 2019 21 commits
-
-
Somehow adjusting maxloc based on existing outputs got lost, resulting in the clipdist varying clobbering the position varying. Causing a shader that had no position output in freedreno/ir3, which triggers GPU hangs in neverball. Fixes: d0f746b6 ("nir: Save nir_variable pointers in nir_lower_clip_vs rather than locs.") Signed-off-by:
Rob Clark <robdclark@chromium.org> Reviewed-by:
Kristian H. Kristensen <hoegsberg@google.com> (cherry picked from commit 372ed42d)
-
This expression was unused by the macro, probably why it didn't register in the compilation. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Mark Janes <mark.a.janes@intel.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit ddacd3d4)
-
This is a more accurate description of what happens in processing the OA reports. Previously we only had a somewhat difficult to parse state machine tracking the context ID. What we really only need to do to decide if the delta between 2 reports (r0 & r1) should be accumulated in the query result is : * whether the r0 is tagged with the context ID relevant to us * if r0 is not tagged with our context ID and r1 is: does r0 have a invalid context id? If not then we're in a case where i915 has resubmitted the same context for execution through the execlist submission port v2: Update comment (Ken) Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 8c0b0582)
-
If we read the OA reports late enough after the query happens, we can get a timestamp in the report that is significantly in the past compared to the start timestamp of the query. The current code must deal with the wraparound of the timestamp value (every ~6 minute). So consider that if the difference is greater than half that wraparound period, we're probably dealing with an old report and make the caller aware it should read more reports when they're available. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Mark Janes <mark.a.janes@intel.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit b364e920)
-
We always add an empty buffer in the list when creating the query. Let's set the len appropriately so that we can recognize it when we read OA reports up to the end of a query. We were using an 0 timestamp value associated with the empty buffer and incorrectly assuming this was a valid value. In turn that led to not reading enough reports and resulted in deltas added to our counter values which should have been discarded because those would be flagged for a different context. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by:
Mark Janes <mark.a.janes@intel.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 9d0a5c81)
-
Accumulation happens between 2 reports, it can be between a start/end report from another context. So only consider updating the hw_id of the results when it's not already valid and that we have a valid value to put in there. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 41b54b5f ("i965: move OA accumulation code to intel/perf") Reviewed-by:
Mark Janes <mark.a.janes@intel.com> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit acea59db)
-
Dylan Baker authored
-
Dylan Baker authored
-
Dylan Baker authored
-
Fixes: 13ab63bb ('radv: Implement VK_EXT_buffer_device_address.') Signed-off-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit 35fab1ba)
-
If an app first creates a compute pipeline with VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT set, then re-compile it without that flag, the driver should re-compile the compute shader. Otherwise, it will return the unoptimized one. Fixes: ce188813 ("radv: add initial support for VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT") Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit 9ab27647)
-
This implementation is loosely based on ROCm. https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/master/ockl/src/wfredscan.cl This fixes dEQP-VK.subgroups.arithmetic.*.subgroupexclusive* on GFX10. Fixes: 227c29a8 ("amd/common/gfx10: implement scan & reduce operations") Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit c9aa8439) Conflicts resolved by Dylan Baker
-
When a fragment shader includes an input variable decorated with SampleId or SamplePosition, sample shading should be enabled because minSampleShadingFactor is expected to be 1.0. Cc: 19.2, 19.3 <mesa-stable@lists.freedesktop.org> Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit 86a5fbfd) Conflicts resolved by Dylan Baker
-
Do not link libgallium_nine with libgalliumvl_stub if it's already linked with libgalliumvl. Linking with stub leads to "duplicate symbol" errors. Fixes: 6b4c7047 ("meson: build gallium nine state_tracker") Closes: #2040 Signed-off-by:
Yevhenii Kolesnikov <yevhenii.kolesnikov@globallogic.com> Reviewed-by:
Dylan Baker <dylan@pnwbakers.com> (cherry picked from commit 9af22ccd) Conflicts resolved by Dylan Baker
-
gl_Viewport is also in the VUE header so we need to whack the read offset to 0 and emit a default (no overrides) SBE_SWIZ entry in that case as well. Cc: mesa-stable@lists.freedesktop.org Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> (cherry picked from commit b1f37688)
-
brw_performance_query_metrics.h was removed in 134e750e and brw_performance_query.h was removed in 8ae66679 remove reference to these files from Makefile.sources Signed-off-by:
Jonathan Gray <jsg@jsg.id.au> Fixes: 134e750e ("i965: extract performance query metrics") Fixes: 8ae66679 ("intel/perf: move query_object into perf") Reviewed-by:
Eric Engestrom <eric.engestrom@intel.com> (cherry picked from commit 34dda0ca)
-
BACK_LEFT attachment can be outdated when the user calls KHR_partial_update() (->lastStamp != ->texture_stamp), leading to a damage region update on the wrong pipe_resource object. Let's delay the ->set_damage_region() call until the attachments are updated when we're in that case. Reported-by:
Carsten Haitzler <raster@rasterman.com> Fixes: 492ffbed ("st/dri2: Implement DRI2bufferDamageExtension") Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by:
Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> (cherry picked from commit b196e1a8)
-
pthread_mutex_unlock() when unlocked is documented by posix as being undefined behaviour. On OpenBSD pthread_mutex_unlock() will call abort(3) if this happens. This occurs in amdgpu_winsys_create() after cb446dc0 winsys/amdgpu: Add amdgpu_screen_winsys Signed-off-by:
Jonathan Gray <jsg@jsg.id.au> Cc: 19.2 19.3 <mesa-stable@lists.freedesktop.org> Signed-off-by:
Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 3fe3bde4)
-
They were out of sync. Besides syncing, lets ensure they never diverge again. Fixes: 8d2654a4 "radv: Support VK_EXT_inline_uniform_block." Reviewed-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> (cherry picked from commit 4cde0e04)
-
Fixes: 946193ae "radv: add support for VK_AMD_buffer_marker" Reviewed-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> (cherry picked from commit 25bc9102)
-
This reverts commit f97b731c. Closes: #250 Reviewed-by:
Roland Scheidegger <sroland@vmware.com> (cherry picked from commit a3c8bc10)
-