- Nov 19, 2020
-
-
Dylan Baker authored
-
In bison's commit 72c9fa4510eb (skeletons: use "end of file" instead of "$end") in bison-3.6, '$end' was changed to 'end of file' in error messages. Since our glcpp test cases contain the expected output text, they rely on the particular messages printed by bison. The test case 084-unbalanced-parentheses fails when Mesa is built with bison-3.6 due to this change. To allow the test to pass on all supported versions of bison, we: 1. Change '$end' -> 'end of file' in the .expected file, and 2. Normalize the error generated by the test case with the same replacement Cc: mesa-stable Closes: mesa/mesa#3181 Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <mesa/mesa!7659> (cherry picked from commit df29d0a1)
-
Dylan Baker authored
-
- Nov 17, 2020
-
-
Respect VkImageStencilUsageCreateInfoEXT. CC: mesa-stable@lists.freedesktop.org Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> (cherry picked from commit b50275a4)
-
The code did not return error when VK_IMAGE_CREATE_DISJOINT_BIT was incompatible with the other input params. If the Vulkan spec forbids a set of input params for vkCreateImage, but permits them for vkGetPhysicalDeviceImageFormatProperties2, then vkGetPhysicalDeviceImageFormatProperties2 must reject those input params with failure. - v2: Clearer commit message. CC: <mesa-stable@lists.freedesktop.org> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (v2) Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> (cherry picked from commit 51a19c83)
-
We don't care if blits need to respect render-conditions if there's no active one. So let's hit the potentially faster native blit-paths instead. Fixes: 5743fa6e ("zink: enable conditional rendering if available") Closes: mesa/mesa#3792 Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!7606> (cherry picked from commit 19906022)
-
Fix defects reported by Coverity Scan. Argument cannot be negative (NEGATIVE_RETURNS) negative_returns: sync_fd is passed to a parameter that cannot be negative. Fixes: cec0bc73 ("turnip: rework fences to use syncobjs") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Part-of: <mesa/mesa!7647> (cherry picked from commit 69cad1f9)
-
Fix defect reported by Coverity Scan. Missing break in switch (MISSING_BREAK) unterminated_case: The case for value SpvOpExecutionMode is not terminated by a 'break' statement. Fixes: ee5b46fc ("clover/spirv: support CL_KERNEL_COMPILE_WORK_GROUP_SIZE") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Karol Herbst <kherbst@redhat.com> Part-of: <mesa/mesa!7519> (cherry picked from commit 71ee4e28)
-
Fix defect reported by Coverity Scan. Dereference before null check (REVERSE_INULL) check_after_deref: Null-checking num_entrypoints suggests that it may be null, but it has already been dereferenced on all paths leading to the check. Fixes: 5bcaa1b9 ("st/va: add encode entrypoint v2") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <mesa/mesa!7360> (cherry picked from commit 7820c8c1)
-
It's supposed to be ralloced -- there's not even a shader variant destroy function for freeing, just ralloc_free() on the ir3_shader_variant or the parent ir3_shader when you're done! Fixes: f97acb4b ("freedreno/ir3: disk-cache support") Part-of: <mesa/mesa!5810> (cherry picked from commit 433841d9)
-
Missing a copy of the pipe_sampler_state into the etna_sampler_state object lead to the texture_use_int_filter() to always see a max_anisotropy of 0, so the INT filter wasn't disabled when necessary. Also state emission should never change the state objects, as this might also lead to stale information being kept around the in the state object. Fixes: 89a41dae (etnaviv: do not use int filter when anisotropic filtering is used) Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Part-of: <mesa/mesa!7638> (cherry picked from commit b479a1f0)
-
This header uses uint32_t without including stdint.h. This worked fine by accident until a new c-source started including it. Fixes: 1bf539b3 ("mesa: Clamp some depth values in glClearBufferfv") Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Part-of: <mesa/mesa!7637> (cherry picked from commit 2410def9)
-
We were testing for -0.5 instead. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Fixes: 1210e0bd ("aco: create 16-bit input and output modifiers") Part-of: <mesa/mesa!7605> (cherry picked from commit 0c522d3a)
-
The RDNA ISA doc says that omod doesn't preserve -0.0 in 6.2.2. LLVM appears to always disable omod in this situation, but clamp is unaffected. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Fixes: df645fa3 ("aco: implement VK_KHR_shader_float_controls") Part-of: <mesa/mesa!7605> (cherry picked from commit 558daa73)
-
Screen is shared among contexts, other context might be already using vtbl while another initializes it again. ==45872== Possible data race during write of size 8 at 0x5DDAE78 by thread #549 ==45872== Locks held: 1, at address 0x5D1B6F8 ==45872== at 0x6D66D91: gen9_init_state (iris_state.c:7816) ==45872== by 0x6BA0A31: iris_create_context (iris_context.c:342) ==45872== by 0x621F390: st_api_create_context (st_manager.c:917) ==45872== by 0x620E6F9: dri_create_context (dri_context.c:163) ==45872== by 0x6A40DB1: driCreateContextAttribs (dri_util.c:480) ==45872== by 0x540B963: dri2_create_context (egl_dri2.c:1583) ==45872== by 0x53FB84E: eglCreateContext (eglapi.c:821) ==45872== ==45872== This conflicts with a previous read of size 8 by thread #544 ==45872== Locks held: 1, at address 0x5F6E0E0 ==45872== at 0x6CB779E: blorp_alloc_binding_table (iris_blorp.c:167) ==45872== by 0x6CAEF70: blorp_emit_surface_states (blorp_genX_exec.h:1540) ==45872== by 0x6CB67F9: blorp_exec (blorp_genX_exec.h:2016) ==45872== by 0x6CB7AFE: iris_blorp_exec (iris_blorp.c:307) ==45872== by 0x70F5916: try_blorp_blit (blorp_blit.c:2145) ==45872== by 0x70F5FCA: do_blorp_blit (blorp_blit.c:2273) ==45872== by 0x70F778F: blorp_copy (blorp_blit.c:2803) ==45872== by 0x6BB9EB6: iris_copy_region (iris_blit.c:725) v2: move as genX(init_screen_state) (Lionel) Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: mesa-stable Part-of: <mesa/mesa!7544> (cherry picked from commit 460287ad)
-
All other functions calling _eglLookupImage hold the display lock. ==16659== Possible data race during write of size 8 at 0x5D1BCF0 by thread #2668 ==16659== Locks held: 1, at address 0x5D1B6F8 ==16659== at 0x5405DDF: _eglLinkResource (egldisplay.c:454) ==16659== by 0x53F9189: _eglLinkImage (eglimage.h:138) ==16659== by 0x53FE2CA: _eglCreateImageCommon (eglapi.c:1740) ==16659== by 0x53FE39A: eglCreateImageKHR (eglapi.c:1751) ==16659== ==16659== This conflicts with a previous read of size 8 by thread #2664 ==16659== Locks held: 1, at address 0x5308D00 ==16659== at 0x5405C06: _eglCheckResource (egldisplay.c:387) ==16659== by 0x5408C92: _eglLookupImage (eglimage.h:162) ==16659== by 0x5409E96: dri2_lookup_egl_image (egl_dri2.c:688) ==16659== by 0x6210AAF: dri2_lookup_egl_image (dri_helpers.c:250) ==16659== by 0x6212843: dri_get_egl_image (dri_screen.c:470) ==16659== by 0x625F7CC: st_get_egl_image (st_cb_eglimage.c:152) ==16659== by 0x625FE7D: st_egl_image_target_texture_2d (st_cb_eglimage.c:354) ==16659== by 0x6501C05: egl_image_target_texture (teximage.c:3446) Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: mesa-stable Part-of: <mesa/mesa!7544> (cherry picked from commit 959c2d1e)
-
The number of invocations wasn't getting incremented correctly. Fixes: 202bc38c ("draw: collect tessellation invocations statistics") Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7597> (cherry picked from commit ce07c52b)
-
Running the optimizations after bool to float/int lowering is not going to work. Large portions of NIR are likely to blow up if they see floats/ints in weird places. Most of the bool->float/int conversions are direct instruction substitutions and it's not going to leave a lot of garbage around to optimize. Fixes nir.h:261: nir_const_value_as_bool: Assertion `i == 0 || i == -1' failed dEQP-GLES2.functional.shaders.loops.while_constant_iterations.no_iterations_vertex Here are shader-db results for GC2000: instructions HURT: shaders/tesseract/488.shader_test FRAG: 516 -> 524 (1.55%) instructions HURT: shaders/tesseract/491.shader_test FRAG: 248 -> 260 (4.84%) instructions HURT: shaders/tesseract/494.shader_test FRAG: 244 -> 256 (4.92%) instructions HURT: shaders/tesseract/238.shader_test FRAG: 232 -> 244 (5.17%) instructions HURT: shaders/tesseract/241.shader_test FRAG: 232 -> 244 (5.17%) instructions HURT: shaders/tesseract/127.shader_test FRAG: 76 -> 80 (5.26%) instructions HURT: shaders/tesseract/130.shader_test FRAG: 148 -> 156 (5.41%) instructions HURT: shaders/tesseract/226.shader_test FRAG: 192 -> 204 (6.25%) instructions HURT: shaders/tesseract/229.shader_test FRAG: 192 -> 204 (6.25%) instructions HURT: shaders/tesseract/217.shader_test FRAG: 152 -> 164 (7.89%) instructions HURT: shaders/tesseract/214.shader_test FRAG: 152 -> 164 (7.89%) instructions HURT: shaders/tesseract/205.shader_test FRAG: 112 -> 124 (10.71%) instructions HURT: shaders/tesseract/202.shader_test FRAG: 112 -> 124 (10.71%) instructions HURT: shaders/tesseract/169.shader_test FRAG: 32 -> 36 (12.50%) instructions HURT: shaders/tesseract/166.shader_test FRAG: 32 -> 36 (12.50%) instructions HURT: shaders/deqp_gles3/61312.shader_test FRAG: 448 -> 508 (13.39%) instructions HURT: shaders/deqp_gles3/61309.shader_test FRAG: 448 -> 508 (13.39%) instructions HURT: shaders/deqp_gles3/61324.shader_test FRAG: 448 -> 508 (13.39%) instructions HURT: shaders/tesseract/118.shader_test FRAG: 28 -> 32 (14.29%) instructions HURT: shaders/tesseract/181.shader_test FRAG: 52 -> 60 (15.38%) instructions HURT: shaders/tesseract/178.shader_test FRAG: 52 -> 60 (15.38%) instructions HURT: shaders/tesseract/121.shader_test FRAG: 52 -> 60 (15.38%) instructions HURT: shaders/tesseract/193.shader_test FRAG: 72 -> 84 (16.67%) instructions HURT: shaders/tesseract/190.shader_test FRAG: 72 -> 84 (16.67%) total instructions in shared programs: 64220 -> 64572 (0.55%) instructions in affected programs: 4924 -> 5276 (7.15%) helped: 5 HURT: 24 helped stats (abs) min: 4 max: 8 x̄: 5.60 x̃: 4 helped stats (rel) min: 4.35% max: 5.41% x̄: 4.72% x̃: 4.35% HURT stats (abs) min: 4 max: 60 x̄: 15.83 x̃: 12 HURT stats (rel) min: 1.55% max: 16.67% x̄: 10.04% x̃: 10.71% 95% mean confidence interval for instructions value: 5.39 18.89 95% mean confidence interval for instructions %-change: 4.81% 10.18% Instructions are HURT. total temps in shared programs: 2514 -> 2512 (-0.08%) temps in affected programs: 9 -> 7 (-22.22%) helped: 2 HURT: 0 Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by: Lucas Stach <l.stach@pengutronix.de> Part-of: <mesa/mesa!7624> (cherry picked from commit 9b6516ac)
-
Fix defect reported by Coverity Scan. Extra argument to printf format specifier (PRINTF_ARGS) extra_argument: This argument was not used by the format string: vmixer->max_layers. Fixes: 89b98632 ("vdpau: Add support for parameters") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Leo Liu <leo.liu@amd.com> Part-of: <mesa/mesa!7200> (cherry picked from commit 3fe5c13d)
-
Fixes: 74140c2e ("freedreno/ir3: convert over to ralloc") Signed-off-by: Rob Clark <robdclark@chromium.org> Part-of: <mesa/mesa!7612> (cherry picked from commit 4b65c09d)
-
Fixes flickering in Neverwinter Nights. Closes: mesa/mesa#3789 Fixes: e6152091 ("panfrost: Use canonical characterization of tls_size") Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <mesa/mesa!7613> (cherry picked from commit 12dec200)
-
OpenGL 3.0 spec, section 4.2.3 "Clearing the Buffers": depth and stencil are the values to clear the depth and stencil buffers to, respectively. Clamping and type conversion for fixed-point depth buffers are performed in the same fashion as for ClearDepth. Enables iris to pass the clearbuffer-depth-stencil piglit test. Cc: mesa-stable Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <mesa/mesa!7410> (cherry picked from commit 2e713313)
-
OpenGL 3.0 spec, section 4.2.3 "Clearing the Buffers": If buffer is DEPTH, drawbuffer must be zero, and value points to the single depth value to clear the depth buffer to. Clamping and type conversion for fixed-point depth buffers are performed in the same fashion as for ClearDepth. Enables iris to pass the clearbuffer-depth piglit test. v2. Add spec citation. (Eric Anholt) v3. Don't clamp floating point formats. (Eric Anholt) Cc: mesa-stable Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <mesa/mesa!7410> (cherry picked from commit 1bf539b3)
-
Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <mesa/mesa!7410> (cherry picked from commit fda01502)
-
Dylan Baker authored
-
- Nov 13, 2020
-
-
Check for clamp, SDWA or DPP. The optimization isn't possible with SDWA and DPP, so it would have been skipped anyway. Doing any of these with a clamp modifier present would be incorrect. No fossil-db changes. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Cc: mesa-stable Part-of: <mesa/mesa!7045> (cherry picked from commit 966732e8)
-
No fossil-db changes. Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Cc: mesa-stable Part-of: <mesa/mesa!7045> (cherry picked from commit 91ffeed8)
-
fossil-db (Navi): Totals from 241 (0.18% of 137413) affected shaders: CodeSize: 856280 -> 856308 (+0.00%); split: -0.00%, +0.00% Instrs: 164220 -> 164514 (+0.18%); split: -0.00%, +0.18% Cycles: 1031916 -> 1033092 (+0.11%); split: -0.00%, +0.11% VMEM: 77855 -> 78514 (+0.85%); split: +0.85%, -0.01% SMEM: 20501 -> 20593 (+0.45%); split: +0.46%, -0.01% Copies: 9791 -> 9790 (-0.01%); split: -0.03%, +0.02% Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Cc: mesa-stable Part-of: <mesa/mesa!7045> (cherry picked from commit d4c821da)
-
Fix defect reported by Coverity Scan. Logically dead code (DEADCODE) dead_error_line: Execution cannot reach the expression -1 inside this statement: return ret ? -1 : handle.fd; Fixes: cec0bc73 ("turnip: rework fences to use syncobjs") Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Jonathan Marek <jonathan@marek.ca> Part-of: <mesa/mesa!7498> (cherry picked from commit dad6b625)
-
Fixes the rasterizer_discard failures for softpipe, because the wide paths (which we hit for points in the CTS) were dropping the discard state when making the no_cull shadow state. Cc: mesa-stable Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <mesa/mesa!7558> (cherry picked from commit 0b4825c8)
-
Corrects the index into the vertex_formats table for `integer` and `normalized` values other than 0 or 1. Fixes: e6448f99 ("mesa: translate into gallium vertex formats in mesa/main") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <mesa/mesa!7554> (cherry picked from commit 9edb6e1b)
-
Without this patch, copy propagation pass can optimize out buffer loads out of compare & swap loop, which then leads to infinite loop. Triggered by a change to atomicCompSwap float test in piglit. Fixes: 8424cd8f ("nir: Account for atomics in copy propagation.") Suggested-by: Jason Ekstrand <jason@jlekstrand.net> Signed-off-by: Marcin Ślusarz <marcin.slusarz@intel.com> Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <mesa/mesa!7538> (cherry picked from commit 6e6dab47)
-
Fixes: a8ac0bd7 "intel/fs/gen12: Workaround unwanted SEND execution..." Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Part-of: <mesa/mesa!7536> (cherry picked from commit e9caba6c)
-
The recent change to install kernel modules for AMD included a sed job to disable kernel modules in the defconfig. This somehow broke booting on a307, except the commit failed to bump the arm64_test tag so it wasn't noticed until the next uprev. (I didn't notice when landing the next change to that container to add the deqp runner, because I didn't get a git conflict on rebasing my tag bump so I didn't bump the tag again to pull in the kernel changes and catch the fail). I've spent a while trying to debug what's happened (including what *should* be a replication of the kernel build on my local db410c) and come up empty. Just punt and disable the AMD kernel module changes on baremetal to fix it. Bump every container using lava_build.sh to make sure we don't screw anything up with the script changes. Fixes: 60c5729d ("ci: Distribute ADMGPU driver to LAVA as a module") Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971> (cherry picked from commit bf576b44)
-
This fixes: dEQP-VK.draw.scissor* Cc: 20.3 <mesa-stable> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7499> (cherry picked from commit d186766c)
-
dEQP-VK.pipeline.blend.dual_source.format.r16g16b16a16_snorm.states.color_1msc_1ms1a_add_alpha_1mdc_1msa_sub-color_dc_1ms1c_rsub_alpha_z_1mdc_sub-color_ca_1ms1c_min_alpha_sas_ca_rsub-color_1ms1c_s1c_add_alpha_z_1mda_add,Fail dEQP-VK.pipeline.blend.dual_source.format.r8g8_snorm.states.color_z_sc_add_alpha_1ms1c_sa_min-color_dc_1mca_add_alpha_z_1mca_max-color_1ms1c_sa_max_alpha_1mcc_sc_sub-color_s1c_1mda_add_alpha_s1c_1mda_add,Fail dEQP-VK.pipeline.blend.dual_source.format.r8g8b8a8_snorm.states.color_1msc_1ms1a_add_alpha_1mdc_1msa_sub-color_dc_1ms1c_rsub_alpha_z_1mdc_sub-color_ca_1ms1c_min_alpha_sas_ca_rsub-color_1ms1c_s1c_add_alpha_z_1mda_add,Fail dEQP-VK.pipeline.blend.dual_source.format.r8g8b8a8_snorm.states.color_z_sc_add_alpha_1ms1c_sa_min-color_dc_1mca_add_alpha_z_1mca_max-color_1ms1c_sa_max_alpha_1mcc_sc_sub-color_s1c_1mda_add_alpha_s1c_1mda_add,Fail dEQP-VK.pipeline.blend.format.r16g16b16a16_snorm.states.color_ca_1mca_rsub_alpha_1mda_z_sub-color_sc_sc_add_alpha_1mca_sa_max-color_sa_1msa_min_alpha_1msc_sa_sub-color_dc_sc_add_alpha_1mdc_1mca_add,Fail dEQP-VK.pipeline.blend.format.r8g8b8a8_snorm.states.color_ca_1mca_rsub_alpha_1mda_z_sub-color_sc_sc_add_alpha_1mca_sa_max-color_sa_1msa_min_alpha_1msc_sa_sub-color_dc_sc_add_alpha_1mdc_1mca_add,Fail All fail due to the 1 - mdc or 1 - mca alpha channel in the last quadrant. Cc: 20.3 <mesa-stable> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7499> (cherry picked from commit 01c4bac3)
-
CTS seems fine with this. Cc: 20.3 <mesa-stable> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7499> (cherry picked from commit a04a1465)
-
The current code fails a lot of VK CTS tests, this fixes them all: dEQP-VK*blit_image*3d* Cc: 20.3 <mesa-stable> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7499> (cherry picked from commit ea034c98)
-
If we have cbufs but they are all empty, default to returning the fb->samples. Fixes: dEQP-VK.pipeline.multisample.mixed_count.1_4_unused on lavapipe v2: drop unneeded chunk (Roland) Cc: 20.3 <mesa-stable> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <mesa/mesa!7499> (cherry picked from commit 4b1d23b2)
-
This implementation was broken and should have just been the same as the hash_table_clear() one, which I copied over here. It was setting all formerly-present entries to deleted, yet also setting deleted_entries to 0. This meant that all new searches or additions after clearing would have to reprobe the whole table until a rehash happened, and that rehash would be delayed because we violated the deleted_entries invariant. No statistically significant performance difference on softpipe KHR-GL33.texture_swizzle.functional runtime (n=18) Fixes: 5c075b08 ("util/set: add a set_clear function") Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Part-of: <mesa/mesa!7244> (cherry picked from commit 2afdd94f)
-