- Feb 09, 2022
-
-
Eric Engestrom authored
-
Eric Engestrom authored
-
We're replacing a generic instruction by an intel specific one, we need to remove the previous instruction. Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: c5a42e40 ("intel/fs: fix shader call lowering pass") Reviewed-by:
Caio Oliveira <caio.oliveira@intel.com> Part-of: <mesa/mesa!13719> (cherry picked from commit 39f6cd5d)
-
Signed-off-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Fixes: 77486db8 ("intel/fs: Disable sample mask predication for scratch stores") Reviewed-by:
Caio Oliveira <caio.oliveira@intel.com> Part-of: <mesa/mesa!13719> (cherry picked from commit c89024e4)
-
these regions might not have the coords in the correct order, which will cause them to fail intersection tests, resulting in clears that are never applied cc: mesa-stable fixes: GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_all_buffer_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_color_and_depth_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_color_and_stencil_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_linear_filter_color_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_magnifying_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_minifying_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_missing_buffers_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_nearest_filter_color_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_dimensions_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_height_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_width_blit GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_scissor_blit Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14867> (cherry picked from commit 388f23ea)
-
cc: mesa-stable Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14859> (cherry picked from commit b656ab75)
-
this requires VK_EXT_shader_subgroup_ballot cc: mesa-stable fixes (lavapipe): KHR-GL46.shader_ballot_tests.ShaderBallotAvailability KHR-GL46.shader_ballot_tests.ShaderBallotFunctionRead Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14858> (cherry picked from commit e38c1383)
-
Matches radeonsi. Seems Vulkan CTS doesn't really test cull distances. Removing VARYING_SLOT_CULL_DIST0/VARYING_SLOT_CULL_DIST1 variables doesn't break any of dEQP-VK.clipping.*, except for tests which read the variables in the fragment shader. Signed-off-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Closes: mesa/mesa#5984 Cc: mesa-stable Part-of: <mesa/mesa!14882> (cherry picked from commit 7ddad1b9)
-
If we have batch a + b, and writing to batch b, causes batch a to flush, all the bo->index get reset, and we try to submit a -1 to the kernel. Look the bo index up when creating relocations. Fixes crash seen in KHR-GL46.compute_shader.pipeline-post-fs and a trace from Wasteland 3 Fixes: f3630548 ("crocus: initial gallium driver for Intel gfx 4-7") Reviewed-by:
Zoltán Böszörményi <zboszor@gmail.com> Part-of: <mesa/mesa!14905> (cherry picked from commit 37c3be69)
-
required by spec cc: mesa-stable Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <mesa/mesa!14853> (cherry picked from commit 1e965423)
-
Part-of: <mesa/mesa!14835> (cherry picked from commit f8a90104)
-
this cap is broken cc: mesa-stable fixes: GTF-GL46.gtf21.GL2Tests.glGetUniform.glGetUnifor Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14835> (cherry picked from commit 9a75392c)
-
this cap is broken cc: mesa-stable fixes: GTF-GL46.gtf21.GL2Tests.glGetUniform.glGetUniform Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14835> (cherry picked from commit 9a38dab2)
-
Encoding src2 doesn't cause issues for print_asm() because we have a workaround there, but it does for RGP and it seems the developers are not interested in fixing it. https://github.com/GPUOpen-Tools/radeon_gpu_profiler/issues/61 Signed-off-by:
Rhys Perry <pendingchaos02@gmail.com> Tested-by:
Tatsuyuki Ishi <ishitatsuyuki@gmail.com> Reviewed-by:
Daniel Schürmann <daniel@schuermann.dev> Cc: mesa-stable Part-of: <mesa/mesa!14832> (cherry picked from commit 0447a230)
-
Commit 17e62a3c made _mesa_make_current begin calling ctx->Driver.Flush() in more cases, including when called during context destruction, after _mesa_free_context_data has set ctx->DrawBuffer to NULL. i965's flush hook wasn't prepared for this, and assumed that ctx->DrawBuffer was non-NULL. This led to a crash with the following backtrace: #0 0x00007ffff5bf97b5 in _mesa_is_winsys_fbo (fb=0x0) at ../../src/mesa/main/fbobject.h:52 #1 0x00007ffff5bfa359 in brw_flush_front (ctx=0x5555555a4110) at ../../src/mesa/drivers/dri/i965/brw_context.c:242 #2 0x00007ffff5bfa587 in brw_glFlush (ctx=0x5555555a4110, gallium_flush_flags=0) at ../../src/mesa/drivers/dri/i965/brw_context.c:301 #3 0x00007ffff5d46b2b in _mesa_make_current (newCtx=0x0, drawBuffer=0x0, readBuffer=0x0) at ../../src/mesa/main/context.c:1616 #4 0x00007ffff5d46484 in _mesa_free_context_data (ctx=0x5555555a4110, destroy_debug_output=true) at ../../src/mesa/main/context.c:1309 #5 0x00007ffff5bfcb59 in brw_destroy_context (driContextPriv=0x555555590260) at ../../src/mesa/drivers/dri/i965/brw_context.c:1301 There is really no point in worrying about front buffer flushing during the context's destruction when we've already discarded the drawbuffer, so just add a NULL check in brw_flush_front and skip that work. Fixes: 17e62a3c ("mesa: (correctly) flush more in _mesa_make_current") Closes: mesa/mesa#5957 Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <mesa/mesa!14828>
-
With latest Fossilize everything should now be captured correctly but without this, all Fossilize databases that need VK_EXT_custom_border_color would just crash. Cc: mesa-stable Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <mesa/mesa!14821> (cherry picked from commit 1cadd191)
-
Otherwise we may be left with such casts: vec1 32 ssa_72 = deref_var &shadow_map (uniform sampler2D) vec1 32 ssa_73 = deref_cast (texture2D *)ssa_72 (uniform texture2D) vec1 32 ssa_74 = deref_cast (sampler *)ssa_72 (uniform sampler) vec1 32 ssa_76 = (float32)tex ssa_73 (texture_deref), ssa_74 (sampler_deref), ssa_75 (coord), ssa_64 (comparator) And crash in ycbcr lowering since we aren't able to follow deref chain. Fixes crash in GFXBench Aztec Ruins Vulkan tests. See issue: mesa/mesa#5945 Cc: mesa-stable Signed-off-by:
Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <mesa/mesa!14819> (cherry picked from commit f917c735)
-
We need to check the source of the copy, not the destination. That means this we need to move this check inside the ifs, where we know that the source is a copy. Fixes: 590efd18 ("Prevent propagating shared regs out of loops") Part-of: <mesa/mesa!14412> (cherry picked from commit 09731fc7)
-
Fixes: 2768a35e ("ir3: Add pass to remove unreachable blocks") Part-of: <mesa/mesa!14412> (cherry picked from commit 53e54898)
-
Workgroup is only allowed in compute shaders, and Device should be more in line with the intended use here the alternative would be to keep using Workgroup for compute and use Device otherwise, but this would effectively make atomic ops non-atomic, which seems like it isn't desirable cc: mesa-stable Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14690> (cherry picked from commit 6f38ea4a)
-
according to spec, these must match the texel pointer type cc: mesa-stable fixes (nvidia): dEQP-GLES31.functional.image_load_store.2d.atomic.exchange_r32f_return_value dEQP-GLES31.functional.image_load_store.2d_array.atomic.exchange_r32f_return_value dEQP-GLES31.functional.image_load_store.cube.atomic.exchange_r32f_return_value Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14690> (cherry picked from commit 2361c52b)
-
Fixes: 4bdf8547 "vulkan/wsi: Implement VK_KHR_swapchain_mutable_format" Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!12031> (cherry picked from commit 8299d5f3)
-
This had the opposite problem of the shm path. R8G8B8A8 was always support if either DRM_FORMAT_XBGR8888 or DRM_FORMAT_ABGR8888 was supported, but we need both. Fixes: d944136f ("vulkan/wsi/wayland: don't expose surface formats not fully supported") Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Simon Ser <contact@emersion.fr> Part-of: <mesa/mesa!14588> (cherry picked from commit cbe4943a)
-
These formats get overwritten after the FALLTHROUGH, so no modifers got added to them at all. Fixes: 151b65b2 ("vulkan/wsi/wayland: generalize modifier handling") Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Simon Ser <contact@emersion.fr> Part-of: <mesa/mesa!14588> (cherry picked from commit 9843fddf)
-
Fixes: 6b36f357 ("vulkan/wsi/wl: add wl_shm support for lavapipe.") Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by:
Simon Ser <contact@emersion.fr> Part-of: <mesa/mesa!14588> (cherry picked from commit a881b6ac)
-
We need both the SHM format with alpha and the opaque format to fully support a vulkan format with alpha. Previously no surface format was reported because the vulkan formats with aplha were never added as opaque. Closes: mesa/mesa#5879 Fixes: d944136f ("vulkan/wsi/wayland: don't expose surface formats not fully supported") Signed-off-by:
Georg Lehmann <dadschoorse@gmail.com> Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by:
Simon Ser <contact@emersion.fr> Part-of: <mesa/mesa!14588> (cherry picked from commit 4ae4e04e)
-
Previously, is_abs was just ignored if mul_instr->isVOP3()==false. Signed-off-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Daniel Schürmann <daniel@schuermann.dev> Fixes: 93c8ebfa ("aco: Initial commit of independent AMD compiler") Part-of: <mesa/mesa!14773> (cherry picked from commit 452975f2)
-
- the current batch id is always 0 - there is always a current batch - a batch id can only be set at the time of submit thus when passing 0 to wait on the current batch, the submit must complete so that there is a batch id, and this must occur before the timeline wait path or else the timeline wait does nothing cc: mesa-stable Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14693> (cherry picked from commit 3a0888c6)
-
if the vertex buffer resource has writes, it needs this bit too cc: mesa-stable Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14691> (cherry picked from commit 95bfb756)
-
for sparse buffers, the total buffer size will be huge, so this needs to only be the limit that the driver can support to avoid crashing or whatever cc: mesa-stable Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14692> (cherry picked from commit 27d405dc)
-
Previously, no buffers were ever marked as EXEC_OBJECT_ASYNC so the Kernel would ensure dependency tracking for us. After we implemented explicit busy tracking in commit 89a34cb8, only the external objects kept relying on the Kernel's implicit tracking and Iris did inter-batch busy tracking, meaning we lost inter-screen and inter-context synchronization. This seemed fine to me since, as far as I understood, it is the duty of the application to synchronize itself against multiple screens and contexts. The problem here is that applications were actually relying on the old behavior where the Kernel guarantees synchronization, so 89a34cb8 can be seen as a regression. This commit addresses the inter-context synchronization case. Cc: mesa-stable Closes: mesa/mesa#5731 Closes: mesa/mesa#5812 Fixes: 89a34cb8 ("iris: switch to explicit busy tracking") Tested-by:
Konstantin Kharlamov <hi-angel@yandex.ru> Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Signed-off-by:
Paulo Zanoni <paulo.r.zanoni@intel.com> Part-of: <mesa/mesa!14783>
-
off by N affects: KHR-GL46.texture_cube_map_array.sampling Fixes: 53aade0e ("zink: fix enabled vertex buffer mask calculation") Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14721> (cherry picked from commit 42ae116a)
-
Use the proper Vulkan values that can be combined into a bitmask. Fixes: f40a08d2 ("anv: Don't advertise unsupported shader stages") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!14761> (cherry picked from commit d6c31f05)
-
Fixes: 0cad3beb ("vulkan/log: Add common vk_error and vk_errorf helpers") Acked-by:
Rob Clark <robdclark@chromium.org> Part-of: <mesa/mesa!14235> (cherry picked from commit bdb8e615)
-
nr_in_fences was being incremented to point to an illegal address Fixes: 1e230046 ("panvk: Add vkEvents support") Cc: mesa-stable Signed-off-by:
Manas Chaudhary <manas.chaudhary@collabora.com> Reviewed-by:
Boris Brezillon <boris.brezillon@collabora.com> Part-of: <mesa/mesa!14744> (cherry picked from commit cad053db)
-
Commit e6147895 ("anv: Also disallow CCS_E for multi-LOD images") accidentally disabled CCS_E on TGL+ because it checked for image->vk.mip_levels > 0 instead of image->vk.mip_levels > 1. Instead of reverting it, we remove the code which disables CCS_E for mipmapped or arrayed images now that we've sufficiently handled the clear color issue in other ways. Fixes: e6147895 ("anv: Also disallow CCS_E for multi-LOD images") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!14723> (cherry picked from commit 57445adc)
-
On TGL, if a block of fragment shader outputs match the surface's clear color, the HW may convert them to fast-clears (see HSD 14010672564). This can lead to rendering corruptions if not handled properly. We restrict the clear color to zero to avoid issues that can occur with: - Texture view rendering (including blorp_copy calls) - Images with multiple levels or array layers Fixes: e6147895 ("anv: Also disallow CCS_E for multi-LOD images") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!14723> (cherry picked from commit c4840140)
-
CCS_E is currently disabled on TGL+, but we'll enable it soon. We choose to explicitly disable it for certain copy operations to avoid CTS failures in the following groups: - dEQP-VK.drm_format_modifiers.export_import.* - dEQP-VK.synchronization* Fixes: e6147895 ("anv: Also disallow CCS_E for multi-LOD images") Reviewed-by:
Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!14723> (cherry picked from commit d68b2db8)
-
..even if external image info has valid external handles. Fixes: 26380b3a ("turnip: Add driver skeleton (v2)") Signed-off-by:
Yiwei Zhang <zzyiwei@chromium.org> Part-of: <mesa/mesa!14730> (cherry picked from commit 96acd093)
-
this avoids dereferencing pg->dd which is allocated a few lines later Fixes: 417477f6 ("zink: always use lazy (non-push) updating for fbfetch descriptors") fixes (radv): dEQP-GLES31.functional.blend_equation_advanced.basic.multiply Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!14718> (cherry picked from commit 8747715a)
-