[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][xorg-team/lib/mesa][upstream-experimental] 104 commits: .pick_status.json: Update to 926ba335fdf357e8bc8df0959c1ae72ba35204a4



Title: GitLab

Timo Aaltonen pushed to branch upstream-experimental at X Strike Force / lib / mesa

Commits:

  • 80506560
    by Dylan Baker at 2023-01-18T11:43:41-08:00
    .pick_status.json: Update to 926ba335fdf357e8bc8df0959c1ae72ba35204a4
    
  • 1c6b8b8a
    by Gert Wollny at 2023-01-18T11:43:44-08:00
    r600/sfn: Fix readport check
    
    We have to take multi-slot instructions into account, and we don't fail
    when there are still possible bank swizzle values to be checked.
    
    For clarity also rename the bank swizzle iterator iterator.
    
    Fixes: 79ca456b4837b3bc21cf9ef3c03c505c4b4909f6
       r600/sfn: rewrite NIR backend
    
    Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20739>
    (cherry picked from commit ca5bbff558d1de7af3410e659dc0ac6c042cdee3)
    
  • aeb5a360
    by Rob Clark at 2023-01-18T11:43:44-08:00
    freedreno: Fix tracking of enabled SSBOs
    
    Clearing all of the modified bits an relying on OR'ing the needed bits
    back in the loop below doesn't quite work out, Because of early continue
    if the SSBO has not changed.
    
    Fixes: 0ed053f03d9 ("freedreno: simplify fd_set_shader_buffers(..)")
    Signed-off-by: Rob Clark <robdclark@chromium.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20575>
    (cherry picked from commit e41d19a7119f2ad92d1765842e066cb84b90014b)
    
  • d6c199ae
    by Emma Anholt at 2023-01-18T11:43:45-08:00
    dri2: Fix exposing robustness with swkms.
    
    In the original change I noticed that missing robustness on swkms seemed
    to be an oversight, since it was enabled on sw-non-kms, so I exposed the
    ext based on the underlying pipe query.  However it turns out that there
    is a dri_screen flag for allowing robust contexts that exists to do error
    checking for GLX, which was under an !swkms check.  So we would expose the
    ext, but then throw an error if you tried to create one.
    
    Fixes: e6285ea55fb2 ("egl: Replace the robustness DRI2 ext check with a pipe cap query.")
    Closes: #8066
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    Reviewed-by: Chia-I Wu <olvaffe@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20679>
    (cherry picked from commit 6b0db6bf8b5467fd1f357bbacd6750a26d089517)
    
  • 0b3e2cda
    by Jason Ekstrand at 2023-01-18T11:43:47-08:00
    gallium,util: Pull u_indices and u_primconvert back into gallium
    
    This was moved in !13741 but doing so created a link-time dependency
    between util and gallium which causes problems for Vulkan drivers.
    Meanwhile, having mesa/main depend on gallium is fine now that we don't
    have any classic drivers.  It's a bit circular but should be harmless.
    
    Fixes: 97ba2f2fd486 ("move util/indices to core util")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8098
    Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20734>
    (cherry picked from commit d292cb82b8ef1311eb4b78af2c90b1840ba5a6bf)
    
  • 48adf7ae
    by Rob Clark at 2023-01-18T11:43:54-08:00
    freedreno: Restore GL_VENDOR string
    
    We cannot change this, as it has already been communicated to app
    partners.  Also this breaks chrome's GPU quirk matching (which in some
    cases is non-gpu-related, but when all you have is a hammer, everything
    looks like a nail).
    
    Fixes: 9c1fbc076af ("Return 'Mesa' for GL_VENDOR for community drivers")
    Signed-off-by: Rob Clark <robdclark@chromium.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20757>
    (cherry picked from commit 6f91a5ab078820ec1cde572237c25b2a6e2702da)
    
  • de650de6
    by Samuel Pitoiset at 2023-01-18T11:43:55-08:00
    ac/nir: clear unused components before storing XFB outputs to LDS
    
    Shader variables don't always exactly match intrinsics and they might
    contain unused slots.
    
    Fixes a bunch of regressions with RADV_PERFTEST=ngg_streamout on RDNA2,
    and also fixes RDNA3 NGG streamout.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8099
    Fixes: cd22bf90e79 ("ac/nir/ngg: refine nogs outputs handling")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20735>
    (cherry picked from commit 84241b1f75aa34466d0939f656bcc5aa0658c0a3)
    
  • 269dba25
    by Erik Faye-Lund at 2023-01-18T11:43:55-08:00
    zink: fix depth-clip disable cap
    
    We use EXT_depth_clip_enable for this, not EXT_depth_clip_control, which
    is what depth_clip_control_missing is a proxy for.
    
    Fixes: 721f33cd0fc ("zink: fix return for PIPE_CAP_DEPTH_CLIP_DISABLE")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20740>
    (cherry picked from commit c12fed18049f3c93f2a7e25f929aeb1742467a3b)
    
  • 41648b0e
    by Kenneth Graunke at 2023-01-18T11:43:56-08:00
    intel/blorp: Lower base_workgroup_id to zero
    
    We don't use a base workgroup ID for BLOCS.  It needs to be lowered, or
    else we'll assert fail when compiling the compute shader.
    
    (Note for stable: this patch doesn't fix a bug in 4abdecce226
    specifically, but rather is a missing patch that needed to go along with
    the rest of MR 20068, on whichever branches it exists on.)
    
    Fixes: 4abdecce226 ("iris: Lower load_base_workgroup_id to zero")
    Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20750>
    (cherry picked from commit a6c6a4ad04d5e70b32c6e87126a4e8779aa6bb93)
    
  • 291c51a2
    by Dylan Baker at 2023-01-19T09:42:36-08:00
    .pick_status.json: Update to 75276deebcf76f8fafa68f4e4ecb29768d98c764
    
  • 5c3cd5da
    by Lionel Landwerlin at 2023-01-24T15:27:03-08:00
    nir/divergence: add missing RT intrinsinc handling
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Cc: mesa-stable
    Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20763>
    (cherry picked from commit b82d9b1a3d0f74fc73acc5ae77a6f51ce9ed8fc1)
    
  • 5510c75a
    by Emma Anholt at 2023-01-24T15:27:03-08:00
    Revert "nouveau/ci: temporary disable gk20a-gles"
    
    This reverts commit 8a1a3a31dacf9369f81cb5336acdbdd35dd8b520.  The farm
    should be back up, and I swear nginx startup is fixed for real this time.
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20775>
    (cherry picked from commit 11669c96bc565128f1a07c0d2c7f226883ed9b58)
    
  • 2dbdee99
    by Maíra Canal at 2023-01-24T15:27:03-08:00
    v3dv: remove unused clamp_to_transparent_black_border property
    
    Commit e07c5467 ("v3dv/format: use XYZ1 swizzle for three-component formats")
    removes the only code that handled the clamp_to_transparent_black_border
    variable. Therefore, the variable can be deleted, as it is not currently
    being used.
    
    Fixes: e07c5467 ("v3dv/format: use XYZ1 swizzle for three-component formats")
    Signed-off-by: Maíra Canal <mcanal@igalia.com>
    Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
    Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20746>
    (cherry picked from commit 86c9bdcd9adc952654f58329d4d482b7a509f5c7)
    
  • 4e341d22
    by Francisco Jerez at 2023-01-24T15:27:04-08:00
    intel/fs/gfx12: Ensure that prior reads have executed before barrier with acquire semantics.
    
    This avoids a violation of the Vulkan memory model that was leading to
    intermittent failures of at least 8k test-cases of the Vulkan CTS
    (within the group dEQP-VK.memory_model.*) on TGL and DG2 platforms.
    In theory the issue may be reproducible on earlier platforms like IVB
    and ICL, but the SYNC.ALLWR instruction is not available on those
    platforms so a different (likely costlier) fix will be needed.
    
    The issue occurs within the sequence we emit for a NIR memory barrier
    with acquire semantics requiring the synchronization of multiple
    caches, e.g. in pseudocode for a barrier involving the TGM and UGM
    caches on DG2:
    
     x <- load.ugm // Atomic read sequenced-before the barrier
     y <- fence.ugm
     z <- fence.tgm
     wait(y, z)
     w <- load.tgm // Read sequenced-after the barrier
    
    In the example we must provide the guarantee that the memory load for
    x is completed before the one for w, however this ordering can be
    reversed with the intervention of a concurrent thread, since the UGM
    fence will block on the prior UGM load and potentially take a long
    time, while the TGM fence may complete and invalidate the TGM cache
    immediately, so a concurrent thread could pollute the TGM cache with
    stale contents for the w location *before* the UGM load has completed,
    leading to an inversion of the expected memory ordering.
    
    v2: Apply the workaround regardless of whether the NIR barrier
        intrinsic specifies multiple storage classes or a single one,
        since an acquire barrier is required to order subsequent requests
        relative to previous atomic requests of unknown storage class not
        necessarily specified by the memory scope information of the
        intrinsic.
    
    Cc: mesa-stable
    Reviewed-by: Ivan Briano <ivan.briano@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20690>
    (cherry picked from commit 4a2e7306dd007a9564f9194c52d181ef24271c4e)
    
  • 5c92a839
    by Lionel Landwerlin at 2023-01-24T15:27:04-08:00
    anv: fix generated indirect draw shader stats checks
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
    Tested-by: Rohan Garg <rohan.garg@intel.com>
    Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20776>
    (cherry picked from commit 5ff3d4a8a2c8a44ad7a980675827e25975f0a580)
    
  • e6313e8b
    by Kenneth Graunke at 2023-01-24T15:27:04-08:00
    intel/compiler: Drop redundant 32-bit expansion for shared float atomics
    
    We already expanded data to 32-bit a few lines earlier, so this is just
    redundantly doing it a second time.
    
    Fixes: 43169dbbe5f ("intel/compiler: Support 16 bit float ops")
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Reviewed-by: Rohan Garg <rohan.garg@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20604>
    (cherry picked from commit f7b29d792464b0224ae5155d15d48ab8e55840cb)
    
  • c90f9322
    by Lionel Landwerlin at 2023-01-24T15:27:04-08:00
    nir/lower_io: fix bounds checking for 64bit_bounded_global
    
    If the offset is negative like it's the case in
    
    dEQP-VK.robustness.robustness2.bind.notemplate.r32i.unroll.volatile.storage_buffer_dynamic.readwrite.no_fmt_qual.len_256.samples_1.1d.comp
    
    we end up passing the bounds checking condition because it's using
    signed integers.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Suggested-by: Jason Ekstrand <jason.ekstrand@collabora.com>
    Cc: mesa-stable
    Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
    Reviewed-by: Reviewed-by: Emma Anholt <emma@anholt.net>
    Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20762>
    (cherry picked from commit ff34e96701ef8f6e52755685a5ef9425c0229cfd)
    
  • 22d6d67a
    by Pierre-Eric Pelloux-Prayer at 2023-01-24T15:27:04-08:00
    vbo: remove bogus assert
    
    grow_vertex_storage may call wrap_filled_vertex, which will
    trigger the assert incorrectly because the new size will be
    smaller than 'new_size' but it's correct because
    'vertex_store->used' has been reset to 0.
    
    Fixes: a08baaff976 ("vbo/dlist: fix indentation in vbo_save_api.c")
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20748>
    (cherry picked from commit 491f6b138ecbe938471f7ee1bc339b32c61eed07)
    
  • dc13019b
    by Pierre-Eric Pelloux-Prayer at 2023-01-24T15:27:04-08:00
    vbo: lower VBO_SAVE_BUFFER_SIZE to avoid large VRAM usage
    
    The ideal case for performance is to have a single buffer for
    all display list. The caveat is that large buffers are less
    likely to be freed because they're refcounted: it only takes
    1 user (diplay list) to keep it in VRAM.
    
    This lowers VRAM usage when replaying the trace attached
    of the trace attached to !6140 from 5.5 GB to about 1.8 GB.
    
    Viewperf snx performance isn't affected.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6140
    Cc: mesa-stable
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20748>
    (cherry picked from commit 0f5c8c3dc35561f23a5383cb05075898942ce0c5)
    
  • 22f2a32e
    by Pierre-Eric Pelloux-Prayer at 2023-01-24T15:27:04-08:00
    glthread: fix glArrayElement handling
    
    This must be marshalled synchronously or the attrib pointers' content
    might change by the time we use them.
    
    Cc: mesa-stable
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8068
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20748>
    (cherry picked from commit ddc721e15c6260e5a505f7e5fab2115e4cbd7c72)
    
  • 638dae71
    by Samuel Pitoiset at 2023-01-24T15:27:04-08:00
    radv: fix setting MAX_MIP for BC views
    
    MAX_MIP should always be the number of levels minus one from the hw
    perspective.
    
    This doesn't fix anything known.
    
    Fixes: 98ba1e0d817 ("radv: Fix mipmap views on GFX10+")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20761>
    (cherry picked from commit aff5fe3f9437ad9339d33d150eefc367875e2329)
    
  • 9590bf14
    by Samuel Pitoiset at 2023-01-24T15:27:04-08:00
    radv: fix buffer to image copies with BC views on the graphics queue
    
    The color surface descriptor needs to be adjusted, otherwise addressing
    is wrong.
    
    Fixes tests performed on the graphics queue from
    dEQP-VK.api.copy_and_blit.*.image_to_buffer.2d_images.mip_copies_*.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7900
    Fixes: 98ba1e0d817 ("radv: Fix mipmap views on GFX10+")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20761>
    (cherry picked from commit 18aaa373b701c98ea85058deeaeadac44f120bab)
    
  • 6ad66600
    by Samuel Pitoiset at 2023-01-24T15:27:04-08:00
    radv: fix creating BC image views when the base layer is > 0
    
    When the base array layer of the image view is > 0, addrlib computes
    the offset (in HwlComputeSubResourceOffsetForSwizzlePattern) which is
    then added to the base VA in RADV. But if the driver doesn't reset
    the base array layer, the hw will compute incorrect addressing
    (ie. base array will be added twice). This also matches AMDVLK.
    
    This fixes a VM fault followed by a GPU hang on RDNA2 when trying
    to join a multiplayer game with medium settings in Halo Infinite.
    
    Fixes: 98ba1e0d817 ("radv: Fix mipmap views on GFX10+")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20761>
    (cherry picked from commit 8d191b2cfb5fbc66321369857c7189c1dbd431fa)
    
  • d965740d
    by Mike Blumenkrantz at 2023-01-24T15:27:04-08:00
    zink: store drm format as internal_format for imported resources
    
    internal_format is the "real" format of a resource, and the "real" format
    of imported resources is the external-facing format, not the pipe format
    
    this ensures the correct format is available for internal ops, such as nplanes queries
    
    Fixes: 2e2775c11b0 ("zink: fix PIPE_RESOURCE_PARAM_NPLANES with format modifier")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20753>
    (cherry picked from commit 072e29a22e2cd3c738a3bee463f6aebd40159966)
    
  • 34055e78
    by Mike Blumenkrantz at 2023-01-24T15:27:04-08:00
    zink: handle modifier nplanes queries correctly for planar formats
    
    this just returns the number of planes in the base format as a default, which
    matches the behavior of other drivers
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20753>
    (cherry picked from commit 6ff334e54a2d3455a9c532b146b2fb77a757af02)
    
  • 2d11fda2
    by Paulo Zanoni at 2023-01-24T15:27:04-08:00
    anv: don't leave undefined values in exec->syncobj_values
    
    In anv_execbuf_add_syncobj(), we try to not create or use
    exec->syncobj_values if we don't need to. But when we figure we're
    going to need it (i.e., when timeline_value is not zero), then we
    create exec->syncobj_values with vk_zalloc, which means every previous
    value is set to zero, as it should be. This is all correct.
    
    The problem starts when we add a 16th element. In this case we double
    exec->syncobj_array_length and realloc the buffer by using vk_alloc
    and copying the old array to the new one. After that, we write the
    timeline_value to the array only if it's not zero, and that's the
    problem: since we just used vkalloc and memcpy, we don't have any
    guarantees that the new array will be zero after the 16th element, and
    if timeline_value is zero we write nothing to that position.
    
    Once we start using exec->syncobj_values we have to commit to using
    it, so the "if (timeline_value)" check near the end of the function
    has to be changed to "if (exec->syncobj_values)", so we actually set
    elements after the 16th to zero when they need to be zero.  Another
    approach to fix this would be to memset the new elements once we
    double syncobj_array_length.
    
    In practice, I couldn't find any application or deqp test that used
    more than 3 elements in exec->syncobj_array_length, and we need more
    than 16 elements in order to be able to reproduce the bug, so I'm not
    aware of any real-world bug that goes away with this patch. This issue
    was found while reading code.
    
    If we craft a little Vulkan program that submits a ton of timeline and
    binary semaphores on vkQueueSubmit, then waits for them, we get the
    following error without this patch:
    
    MESA: error: ../../src/intel/vulkan/anv_batch_chain.c:1910: execbuf2 failed: Invalid argument (VK_ERROR_DEVICE_LOST)
    
    v2: Rebase.
    
    Cc: mesa-stable
    Reviewed-by: Ivan Briano <ivan.briano@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20703>
    (cherry picked from commit ad6a036a6815f973355c2500023ddaf780593394)
    
    Conflicts:
    	src/intel/vulkan/i915/anv_batch_chain.c
    
    Stable:
        reapplied to src/intel/vulkan/anv_batch_chain.c, as this hasn't been
        moved in the staging branch.
    
  • a1e3b396
    by Paulo Zanoni at 2023-01-24T15:27:04-08:00
    anv: check the return value of anv_execbuf_add_bo_bitset()
    
    Because anv_execbuf_add_bo_bitset() calls anv_execbuf_add_bo(), which
    can fail if its memory allocations fail.
    
    I have seen dEQP tests exercising memory allocation failures during
    anv_execbuf_add_bo(), but I don't think the path coming from
    add_bo_biset() was specifically exercised. Anyway, add the error check
    just in case.
    
    v2: Rebase.
    
    Cc: mesa-stable
    Reviewed-by: Ivan Briano <ivan.briano@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20703>
    
    stable:
        reapplied to src/intel/vulkan/anv_batch_chain.c, as it has not been
        moved to src/intel/vulkan/i915/ in 23.0
    
  • 89e4ad1b
    by Dylan Baker at 2023-01-24T15:27:04-08:00
    .pick_status.json: Update to e8a60633daec2989df718d28e0baa873bb9b1d15
    
  • 03980525
    by Tatsuyuki Ishi at 2023-01-24T15:27:04-08:00
    radv: Fix depth-only-with-discard when epilogs are used.
    
    For a depth-only-with-discard pipeline, spi_shader_col_format needs to be
    fixed up to a single channel export, or otherwise discard will not work.
    
    Since col_format can change depending on the dynamic state, precompute the
    need for this workaround on pipeline creation and apply it when emitting
    prolog states.
    
    Fixes: eb07a11b8f4 ("radv: add support for compiling PS epilogs on-demand")
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20704>
    (cherry picked from commit 1617dac6c3a4212d0e254c05f9f42f0bf2f5d52b)
    
  • e6bc0076
    by Danylo Piliaiev at 2023-01-24T15:27:05-08:00
    tu/kgsl: do not use kgsl_command_object::offset
    
    offset field in kgsl_command_object is NOT used by KGSL, so
    we should offset directly to iova.
    
    Fixes weird hangs on KGSL. E.g. fixes the hang in:
     dEQP-VK.memory.pipeline_barrier.transfer_dst_storage_texel_buffer.1024
    
    cc: mesa-stable
    
    Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20795>
    (cherry picked from commit 926f626b95a3fab3992361c0120a73b047d24717)
    
  • 97cdeddc
    by Tapani Pälli at 2023-01-24T15:27:05-08:00
    anv: add restrictions for 3DSTATE_RASTER::AntiAliasingEnable
    
    Field must be disabled if any render targets have integer
    format, additionally for Gfx12+ field must be disabled when
    num multisamples > 1 or forced multisample count > 1.
    
    Cc: mesa-stable
    Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20671>
    (cherry picked from commit 9b37ef40f8b5d3206c20f03c4400b0e48faecde5)
    
  • 53e77d07
    by Tapani Pälli at 2023-01-24T15:27:05-08:00
    hasvk: add restrictions for 3DSTATE_RASTER::AntiAliasingEnable
    
    Field must be disabled if any render targets have integer format.
    
    Cc: mesa-stable
    Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20671>
    (cherry picked from commit 58dd9d5134e280302cc5270d7cc5ecdbc49791de)
    
  • c34510ba
    by Tapani Pälli at 2023-01-24T15:27:05-08:00
    iris: add restrictions for 3DSTATE_RASTER::AntiAliasingEnable
    
    Field must be disabled if any render targets have integer
    format, additionally for Gfx12+ field must be disabled when
    num multisamples > 1 or forced multisample count > 1.
    
    Cc: mesa-stable
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7892
    Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20671>
    (cherry picked from commit 247c06d41997538e877619326d046f84887a48ab)
    
  • c1d8827f
    by Rose Hudson at 2023-01-24T15:27:05-08:00
    radeonsi: report 0 block size for Polaris HEVC encoding
    
    makes encoded videos resemble the input again :)
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7992
    Fixes: c4482a3c1a9 ("radeonsi/vcn: enable multi-slice encoding")
    Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20714>
    (cherry picked from commit e8a60633daec2989df718d28e0baa873bb9b1d15)
    
  • 44005034
    by Dylan Baker at 2023-01-24T15:27:05-08:00
    .pick_status.json: Update to 5039acfd9df6f4d3fc7cc655717b1c5389120260
    
  • 73091e4d
    by Mike Blumenkrantz at 2023-01-24T15:27:05-08:00
    zink: preserve present resources during async presentation
    
    ensure that these have a lifetime great enough to be presented
    
    fixes #7781
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20793>
    (cherry picked from commit 020db79340a1932c5229574a9e5d1ccec4e5c9da)
    
  • 0255c80d
    by Mike Blumenkrantz at 2023-01-24T15:27:05-08:00
    zink: delete need_blend_constants
    
    this is an artifact of very old code before the dynamic state was set
    for all graphics pipelines
    
    now the checks only cause blend constants to not be updated, which triggers
    bugs and validation failures
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20799>
    (cherry picked from commit b4d18f2ad112e96320f6c5d130396a70ab702792)
    
  • f0d643eb
    by Mike Blumenkrantz at 2023-01-24T15:27:05-08:00
    zink: don't use ds3 blend states without color attachments
    
    this is illegal and causes validation errors
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20799>
    (cherry picked from commit 5d44318566613cea529858a6487f9ce625cd37d9)
    
  • cb9b1891
    by Marek Olšák at 2023-01-24T15:27:05-08:00
    glthread: fix an upload buffer leak
    
    Fixes: befbd54864d29 - glthread: don't use atomics for refcounting to decrease overhead on AMD Zen
    
    Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20804>
    (cherry picked from commit 4d4995b32bddb0b6bdab0a901db89a31fc1e8005)
    
  • 7289901c
    by Marek Olšák at 2023-01-24T15:27:05-08:00
    util: fix util_is_vbo_upload_ratio_too_large
    
    It was wrong. For example, if the draw vertex count was 10 and the upload
    vertex count was 150, u_vbuf wouldn't unroll the draw and would instead
    memcpy 150 vertices. This fixes that case.
    
    Fixes: 068a3bf0d7c - util: move and adjust the vertex upload heuristic equation from u_vbuf
    
    Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20824>
    (cherry picked from commit 4f6e7858762a38fd7f2e4ab568fc018b4b155f86)
    
  • 9cd9c7e8
    by Marek Olšák at 2023-01-24T15:27:05-08:00
    mesa: allow GL_UNSIGNED_INT64_ARB as vertex format for ARB_bindless_texture
    
    This wasn't implemented, but the spec requires it.
    
    Fixes: 1fe7b1f9724 - mesa: implement ARB_bindless_texture
    
    Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20824>
    (cherry picked from commit 721526227cd8311b7bb6dd2f8718fcfbd3b24038)
    
  • 1984d994
    by Marek Olšák at 2023-01-24T15:27:05-08:00
    glthread: handle GL_*_ARRAY in glEnable/Disable
    
    Surprisingly, the GL compatibility profile allows these in both
    glEnableClientState and glEnable.
    
    Fixes: 0b1dd185913 - glthread: track which vertex array attribs are enabled
    
    Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20824>
    (cherry picked from commit 777166cc66c7330e66e493ee804d32d1f87d297a)
    
  • 6bd3bd5a
    by Jonathan Gray at 2023-01-24T15:27:05-08:00
    egl/dri2: avoid undefined unlocks
    
    unlocks were incorrectly added to paths using dri2_egl_display() as
    well as those using dri2_egl_display_lock()
    
    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.
    
    Fixes: f1efe037dfd ("egl/dri2: Add display lock")
    Reviewed-by: Rob Clark <robclark@freedesktop.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20712>
    (cherry picked from commit 0594b3c143d48c5f37f705abb03f18fbbabbc6b0)
    
  • 14ecd961
    by Mike Blumenkrantz at 2023-01-24T15:27:05-08:00
    zink: use actual swapchain object for surface comparison
    
    the outer swapchain object is persistent, which means checking it
    will never yield an update after the first check
    
    fixes #8122
    
    Fixes: b2739c9f005 ("zink: set surface->dt when updating swapchain"
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20814>
    (cherry picked from commit 474ed4b877e0988acdb9329de485f2e339812680)
    
  • 01ff451d
    by Georg Lehmann at 2023-01-24T15:27:05-08:00
    Revert "aco: Combine v_cvt_u32_f32 with insert to v_cvt_pk_u8_f32."
    
    This reverts commit 6d020540474b43c7e9a3175638bb04be68d80dbb.
    
    v_cvt_pk_u8_f32 returns 0xff instead of v_cvt_u32_f32 & 0xff if the input is
    larger than 255.
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8128
    
    Cc: mesa-stable
    Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20829>
    (cherry picked from commit e527f686caaf688f0a185e2641fc96413dd502be)
    
  • a3c2f78c
    by Erik Faye-Lund at 2023-01-24T15:27:06-08:00
    radeonsi: respect smoothing_enabled
    
    When this was last changed, the smoothing_enabled flag seems to have
    been forgotten about, breaking line-smoothing (and probably also polygon
    smoothing).
    
    Fixes: 4147add280e ("radeonsi: update db_eqaa even if msaa is disabled")
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20810>
    (cherry picked from commit 9f4f131f2e9403f8757be33b3a5c10bcbe9b7644)
    
    Conflicts:
    	src/amd/ci/radeonsi-raven-fails.txt
    	src/amd/ci/radeonsi-stoney-fails.txt
    
  • becfa703
    by Lionel Landwerlin at 2023-01-24T15:27:06-08:00
    anv: fix preemption enable emission in gpu_memcpy
    
    This has to be before the MI_BATCH_BUFFER_END otherwise it has no
    effect.
    
    This also was messing around with you batch length alignment.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Fixes: b9aa66d5d0 ("anv: disable preemption for 3DPRIMITIVE during streamout")
    Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
    Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20802>
    (cherry picked from commit 6f02f9d1084087c97005815bb6070053d09a422c)
    
    Conflicts:
    	src/intel/vulkan/genX_gpu_memcpy.c
    
  • b4353720
    by Julia Tatz at 2023-01-24T15:27:06-08:00
    zink: zink_heap isn't 1-to-1 with memoryTypeIndex
    
    Clarify the relationship between zink heaps and vulkan memory type
    indices, and resolve the issues from mixing the two up.
    
    Closes: #7588, #7813
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20264>
    (cherry picked from commit f6d3a5755f63c81881ff5647fe783038c955e8e3)
    
  • 6f59991d
    by Julia Tatz at 2023-01-24T15:27:06-08:00
    zink: trival renames heap_idx -> memoryTypeIndex
    
    Trival renames to correctly identify vulkan memory type indices aren't
    the same as zink heaps
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20264>
    (cherry picked from commit e20e8f22438b619e1700753ab37e8ae9170b931e)
    
  • eb112a38
    by Julia Tatz at 2023-01-24T15:27:06-08:00
    zink: correct sparse bo mem_type_idx placement
    
    VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x01 has been incidently the
    correct memory type index, but isn't guaranteed to be, which is why it
    hasn't caused issues yet
    
    Fixes: f9515d93 ("zink: allocate/place memory using memoryTypeIndex directly")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20264>
    (cherry picked from commit c71287e70c2bf4aac96b24635e48ec13cd31fddf)
    
  • 488c900b
    by Dylan Baker at 2023-01-24T15:27:06-08:00
    .pick_status.json: Update to 12a471afac2e0c458db785681c88d045a2175ac3
    
  • 0a9dc200
    by Lionel Landwerlin at 2023-01-24T15:27:06-08:00
    intel/fs: avoid cmod optimization on instruction with different write_mask
    
    I've been running into failures with tests like :
    
    dEQP-VK.robustness.robustness2.bind.notemplate.rgba32i.unroll.nonvolatile.uniform_buffer_dynamic.no_fmt_qual.len_4.samples_1.1d.frag
    
    With the load_global_const_block_intel NIR intrinsic, you can load a
    vec8/vec16 with a predicate. The predicate is correctly uniformized to
    feed into the SEND instruction's flag register.
    
    The problem is that a series of optimization first remove the
    find_live_channel and then changes the broadcast into a simple MOV
    instruction, on the assumption that the first channel is always active
    if there is not control flow. This is correct.
    
    But after that the cmod optimzation will remove this instruction :
    
       mov.nz.f0.0(16) null:D, vgrf16+0.0<0>:D NoMask
    
    because it seems to be equivalent to :
    
       cmp.g.f0.0(16) vgrf16:D, vgrf12:D, 63d
    
    In this case vgrf16 is the predicate to the load block SEND
    instruction. Since the execution mask is different between both, some
    of the channels of the SEND instruction end up not being loaded or
    loaded with the wrong predication and we end up with incorrect UBO
    data.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Cc: mesa-stable
    Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20852>
    (cherry picked from commit a50d2fdb4654984061bffb9293abb4178cbe435f)
    
  • 598e985d
    by Samuel Pitoiset at 2023-01-24T15:27:06-08:00
    radv/winsys: fix incorrect PCIID for GFX11 in the null winsys
    
    Fixes: bbad550f3d4 ("radv/winsys: fill real info for CHIP_GFX1100")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20850>
    (cherry picked from commit bf3c14b8a5ac30abcc36dc1f82dd2cce136c532f)
    
  • ea4ecc3e
    by Marcin Ślusarz at 2023-01-24T15:27:06-08:00
    intel/compiler/mesh: handle const data in task & mesh programs
    
    Started showing up when nir_opt_large_constants call was moved in 88756cee8da.
    Fixes dEQP-VK.mesh_shader.ext.smoke.monolithic.fullscreen_gradient*
    
    Suggested-by: Kenneth Graunke <kenneth@whitecape.org>
    Fixes: 88756cee8da ("intel/compiler: Run nir_opt_large_constants before scalarizing consts")
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20876>
    (cherry picked from commit 536a2acfc20ab6b21d83f8ca7a1829087ba98032)
    
  • b2735480
    by Dylan Baker at 2023-01-24T16:08:08-08:00
    VERSION: bump for 23.0.0-rc3
    
  • f5a5b74b
    by Dylan Baker at 2023-01-26T09:11:31-08:00
    .pick_status.json: Update to 50dee85b684e321708460afc3c1abd2148fd5891
    
  • d6418b17
    by Emma Anholt at 2023-01-26T09:11:35-08:00
    zink: Add missing Flat decorations on some inputs.
    
    Fixes validation failures:
    
    Test case 'dEQP-GLES31.functional.android_extension_pack.shaders.es32.extension_directive.oes_sample_variables'..
    MESA: error: Validation Error: [
    UNASSIGNED-CoreValidation-Shader-InconsistentSpirv ] Object 0: handle =
    0x563a1838b790, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x6bbb14 |
    SPIR-V module not valid: [VUID-StandaloneSpirv-Flat-04744] Fragment
    OpEntryPoint operand 31 with Input interfaces with integer or float type
    must have a Flat decoration for Entry Point id 4.
    %gl_SampleId = OpVariable %_ptr_Input_uint Input
    
    Test case 'KHR-GL46.shader_ballot_tests.ShaderBallotAvailability'..
    MESA: error: Validation Error: [ UNASSIGNED-CoreValidation-Shader-InconsistentSpirv ] Object 0: handle = 0x5558e12f17e0, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x6bbb14 | SPIR-V module not valid: [VUID-StandaloneSpirv-Flat-04744] Fragment OpEntryPoint operand 28 with Input interfaces with integer or float type must have a Flat decoration for Entry Point id 4.
      %gl_SubgroupLocalInvocationId = OpVariable %_ptr_Input_uint Input
    
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20756>
    (cherry picked from commit 2a33d509ca1c2dcfc6cb9b05d75fda5576cd902e)
    
  • 4ad9d7be
    by Emma Anholt at 2023-01-26T09:11:36-08:00
    zink: Fix validation failure for maxLod < minLod.
    
    GL lets you set a silly state, so do something plausible instead of
    undefined.
    
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20756>
    (cherry picked from commit adf81044d4cb929733ca64ed1fd30725577b0c66)
    
  • 06072d3b
    by Emma Anholt at 2023-01-26T09:11:36-08:00
    zink: Fix up mismatches of memory model vs addressing model.
    
    MemoryModelVulkan was left out for CSes using it.
    
    Cc: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20756>
    (cherry picked from commit 1e4deb3b8962a26e7eaffbde5688ee766b62a8b5)
    
  • e3ec2e2e
    by Emma Anholt at 2023-01-26T09:11:37-08:00
    zink: Re-emit the SpvBuiltInSampleMask access chain each load.
    
    Otherwise, the access chain you emitted last time may not dominate the
    current use.
    
    Fixes the following validation failure in
    dEQP-GLES31.functional.shaders.sample_variables.sample_mask_in.bits_unique_per_sample.multisample_texture_2:
    
      UNASSIGNED-CoreValidation-Shader-InconsistentSpirv(ERROR / SPEC):
      msgNum: 7060244 - Validation Error: [
      UNASSIGNED-CoreValidation-Shader-InconsistentSpirv ] Object 0: handle =
      0x55cf3cea2c60, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x6bbb14 |
      SPIR-V module not valid: ID '67[%67]' defined in block '23[%23]' does
      not dominate its use in block '31[%31]'
    
    Fixes: 8899f6a19857 ("zink: fix gl_SampleMaskIn spirv generation")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20756>
    (cherry picked from commit 4286633eec3e134d462edd16629311ed0e0e7934)
    
  • 09480330
    by Kenneth Graunke at 2023-01-26T09:11:37-08:00
    anv: Add missing untyped data port flush on PIPELINE_SELECT
    
    See the comments in emit_apply_pipe_flushes().  Flushing HDC is not
    sufficient in GPGPU mode, and we need to set the untyped data port flush
    bit as well.
    
    Fixes many dEQP-VK failures with INTEL_COMPUTE_CLASS=1 on Alchemist.
    
    Fixes: 1067ec90a59 ("anv: Update PIPELINE_CONTROL flush when switching pipeline mode in TGL+")
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20774>
    (cherry picked from commit a8108f1d4440fc72c51eb687d5c422ac6500bf20)
    
  • 233f61cc
    by Kenneth Graunke at 2023-01-26T09:11:38-08:00
    iris: Add missing untyped data port flush on PIPELINE_SELECT
    
    This is needed when switching away from GPGPU mode.  See the previous
    commit for anv.  This is not likely to make a practical difference for
    iris because it never switches back and forth between modes like anv.
    
    Fixes: 172e0b0ebff ("iris: Update PIPELINE_CONTROL flush when switching pipeline mode in TGL+")
    Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20774>
    (cherry picked from commit bd8e8d204db32c9a1b05d3748221171504f94167)
    
  • 497e3028
    by Pierre-Eric Pelloux-Prayer at 2023-01-26T09:11:38-08:00
    radeonsi/gfx11: fix ge_cntl programming
    
    gfx11 renamed PRIM_GRP_SIZE to VERTS_PER_SUBGRP but another change was
    was missed.
    
    Update our code based on PAL's UniversalCmdBuffer::CalcGeCntl function
    (especially useVgtOnchipCntlForTess being false for gfx11).
    
    Fixes: 25a66477d02 ("radeonsi/gfx11: register changes")
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20728>
    (cherry picked from commit f73cdda983e72b57dc8769ec9f234dddcafd2491)
    
  • 450ac592
    by Samuel Pitoiset at 2023-01-26T09:11:39-08:00
    radv: fix RADV_DEBUG=hang with multiple cmdbuffer per submission
    
    With RADV_DEBUG=hang, there is only one cmdbuffer per submission and
    this has been broken recently.
    
    This fixes a segfault when generating GPU hang reports.
    
    Fixes: 76deaa1b1a9 ("radv: Refactor command buffer handling in radv_queue_submit_normal.")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20860>
    (cherry picked from commit 7b76d46e3890a9387430177bed870ea841103839)
    
  • ab083f34
    by Italo Nicola at 2023-01-26T09:11:39-08:00
    panfrost: fix off-by-one when exporting format modifiers
    
    `count` should not be incremented before the check, because it causes
    the modifiers array to be filled starting from position 1 instead of 0.
    
    This bug causes one less format modifier to be available than would
    otherwise be expected, which could then lead to a dmabuf query failing
    in situations where a supported modifier wouldn't be advertised.
    
    It also causes garbage data to be advertised as a modifier in position 0
    of the array, although this is not very likely to cause issues.
    
    Fixes: 2a1217513 ("panfrost: Implement panfrost_query_dmabuf_modifiers")
    Cc: mesa-stable
    Signed-off-by: Italo Nicola <italonicola@collabora.com>
    Reviewed-by: Daniel Stone <daniels@collabora.com>
    Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20879>
    (cherry picked from commit 6c446377ff22d981191929de21cedecf519fe70f)
    
  • 924a4de0
    by Chad Versace at 2023-01-26T09:11:46-08:00
    util/glsl2spirv: Fix build with Python 3.6
    
    ChromeOS still uses Python 3.6, but the glsl2spirv script uses module
    '__future__.annotations', introduced in Python 3.7. Fix the build by
    removing module, but otherwise preserve the type annotations.
    
    Fixes: 949c3b55db ("util/glsl2spirv: add type annotations")
    Acked-by: Eric Engestrom <eric@igalia.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20237>
    (cherry picked from commit bca22a65781665054a7d9d964e548459c610593e)
    
  • 60391438
    by Francisco Jerez at 2023-01-26T09:11:46-08:00
    intel/fs: Fix src and dst types of LOAD_PAYLOAD ACP entries during copy propagation.
    
    The ACP entries created by copy propagation to track the implied
    copies of LOAD_PAYLOAD instructions don't model the behavior of
    LOAD_PAYLOAD correctly, since (as of 41868bb6824c6106a55c844) header
    moves are implicitly retyped to UD and the destination of non-header
    copies implicitly uses the same type as the corresponding source, even
    though the ACP entries created for such copies could incorrectly
    represent a type conversion, which can lead to mis-optimization of the
    program.
    
    According to Marcin, this fixes the func.mesh.ext.workgroup_id.task.q0
    crucible test.
    
    Fixes: 41868bb6824c6106a55c844 ("i965/fs: Rework the fs_visitor LOAD_PAYLOAD instruction")
    Reported-by: Marcin Ślusarz <marcin.slusarz@intel.com>
    Tested-by: Marcin Ślusarz <marcin.slusarz@intel.com>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18980>
    (cherry picked from commit 7b5e9336298b00eeffeec738adbcc0acc7683868)
    
  • 611a7b9f
    by Lionel Landwerlin at 2023-01-26T09:11:47-08:00
    vulkan/wsi/wayland: improve same gpu detection
    
    Some compositor like KWin do not return the render node.
    
    v2: Make sure we test if only drm_info.hasPrimary is true (Jason)
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Fixes: db42ed1e04 ("vulkan/wsi/wl: correctly find whether the compositor uses the same GPU")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8139
    Reviewed-by: Simon Ser <contact@emersion.fr>
    Reviewed-by: Daniel Stone <daniels@collabora.com>
    Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20914>
    (cherry picked from commit e27d217fb16be3d72bc07822cd499ac78f8cc110)
    
  • b204c4fb
    by Friedrich Vock at 2023-01-26T09:11:47-08:00
    radv/rmv: Also check the other pid field
    
    Sometimes it seems like this field contains the correct pid instead.
    
    Fixes: 8d0e6c02 ("radv: Add RMV tracing utilities")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20820>
    (cherry picked from commit 2dec10c297588bc6d356188fa4d0264215f397e1)
    
  • 9eec5270
    by Friedrich Vock at 2023-01-26T09:11:48-08:00
    radv/rmv: Avoid more CPU unmap deadlocks
    
    Fixes: 8d0e6c02 ("radv: Add RMV tracing utilities")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20820>
    (cherry picked from commit 2d5d24720367753accfec72f91ef5df88fe0ed86)
    
  • 36ba0f36
    by Friedrich Vock at 2023-01-26T09:11:49-08:00
    radv/rmv: Log bo destruction before freeing it
    
    Fixes: abf3bcd6 ("radv: Add RMV resource tracking")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20820>
    (cherry picked from commit 292d7b95fc430650a617b46b60a25d87fc7dc69d)
    
  • f89be5c1
    by Friedrich Vock at 2023-01-26T09:11:49-08:00
    radv/rmv: Correct timestamp shifting
    
    The shifting was off-by-one compared to how it is done in the kernel. Also, excess_length needs to be casted to uint64_t to prevent zeroing everything except the 5 LSBs.
    
    Fixes: abf3bcd6 ("radv: Add RMV resource tracking")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20820>
    (cherry picked from commit e07729e8de7ea7a75b6b5b5a5a4437a24a3eae9f)
    
  • c172f1de
    by Samuel Pitoiset at 2023-01-26T09:11:50-08:00
    radv: fix ignoring graphics shader stages that don't need to be imported
    
    If a shader stage is already imported from a library it should be
    properly ignored.
    
    Fixes recent CTS dEQP-VK.pipeline.fast_linked_library.misc.unused_shader_stages*.
    
    Fixes: c8765c5244a ("radv: ignore shader stages that don't need to be imported with GPL")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20899>
    (cherry picked from commit b97fee432c23435bc6c6ef3f27af54c2538cc36b)
    
  • 3962bcfd
    by Corentin Noël at 2023-01-26T09:11:50-08:00
    kopper: Do not free the given screen in initScreen implementation
    
    The given screen is already freed by the caller in case a NULL-pointer is
    returned by the implementation.
    
    Cc: mesa-stable
    Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
    Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20933>
    (cherry picked from commit dd3730f8bdd7afdbc7fb0e9dd200951f9d713a34)
    
  • 406ef423
    by Mike Blumenkrantz at 2023-01-26T09:13:22-08:00
    zink: fix VK_DYNAMIC_STATE_LINE_WIDTH usage
    
    add a special tracker here to set the state only when necessary
    
    Fixes: 659c39fafbb ("zink: rework primitive rasterization type logic")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20886>
    (cherry picked from commit 06a125942bef6a03a12b67f691ab4ad86e49c2df)
    
    Conflicts:
    	src/gallium/drivers/zink/ci/zink-lvp-validation-settings.txt
    
    Stable:
        - removed CI file taht doesn't exist in 23.0 branch
    
  • 5f76187f
    by Dylan Baker at 2023-01-27T09:16:38-08:00
    .pick_status.json: Update to 1a93cd15563a5d0bb6faf12c5d4c852cb3534415
    
  • 48de75f4
    by Jesse Natalie at 2023-01-27T09:17:35-08:00
    dzn: Report as a software device for non-Windows
    
    Fixes: 5f1b8b3e6c9 ("dzn: Use DXGI swapchains")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20939>
    (cherry picked from commit 2010b915479a81f270a00e8c48f2dc9e2510952a)
    
  • 98a6cfd3
    by Kenneth Graunke at 2023-01-27T09:17:36-08:00
    loader: Add infrastructure for tracking active CRTC resources
    
    This provides a cached view of the current screen resources, with the
    coordinates and refresh rate for every active CRTC.  It's currently only
    implemented for X11/XCB.
    
    Fixes: 47526556494 ("egl/x11: implement ANGLE_sync_control_rate")
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20665>
    (cherry picked from commit 3170b63314f14f0031cb95bd5ee3a4726f26b43b)
    
  • 0d6434c8
    by Kenneth Graunke at 2023-01-27T09:17:37-08:00
    egl: Rewrite eglGetMscRateANGLE to avoid probes and handle multi-monitor
    
    RRGetScreenInfo re-probes connector status, which may result in an EDID
    transfer for every output, which according to Adam Jackson can be on the
    order of 100ms for a single EDID block.  So our previous implementation
    of this eglGetMscRateANGLE was blocking for excessive periods of time
    instead of being a quick query of the refresh rate like users expect.
    
    This changes our eglGetMscRateANGLE implementation from using
    RRGetScreenInfo to RRGetScreenResourcesCurrent and RRGetCrtcInfo.
    This obtains the same monitor info without re-probing connectors.
    
    Fixes a severe performance regression in Chromium WebGL performance.
    
    While we're re-implementing the extension, we also implement proper
    multi-monitor support: if there are multiple active CRTCs, we determine
    which contains the largest portion of the surface, as specified in the
    EGL_ANGLE_sync_control_rate extension.
    
    We also now report fractional refresh rates correctly rather than
    rounding to the nearest Hz.
    
    Fixes: 47526556494 ("egl/x11: implement ANGLE_sync_control_rate")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6996
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7038
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20665>
    (cherry picked from commit 41d5f0ee09ccc6406d9b57351fa95edf30b03298)
    
  • 89f0b692
    by Jose Fonseca at 2023-01-27T09:17:37-08:00
    llvmpipe: Honor zero sample_mask when multisample is disabled.
    
    The JIT generated FS shader has logic to obey sample mask when:
    multisample is enabled, or multisample is disabled but FS writes sample
    mask and pipe_rasterizer_state::no_ms_sample_mask_out.
    
    However it did not handle the case where multisample was disabled, FS
    did not write sample_mask, and sample mask was zero.  Instead it relied
    upon the setup to discard the primitives, but that went away with commit
    da5840f3.
    
    We could restore the discard on zero mask behavior, but we would again
    blurring the semantics of rasterization discard.  Instead this change
    adds logic to primitive setup to cull the primitives when sample mask is
    zero.
    
    Fixes: da5840f3 ("llvmpipe: Faithfully honour pipe_rasterizer_state::rasterizer_discard flag")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20934>
    (cherry picked from commit 77092ca8f4f0a1a755c4f49f90d89e9a3606fc6e)
    
  • eac64397
    by Samuel Pitoiset at 2023-01-27T09:17:37-08:00
    radv: add a layer for fixing rendering issues with RAGE2
    
    This game seems to incorrectly set the render area and since we switched
    to full dynamic rendering, the framebuffer dimensions is no longer used.
    
    Forcing the render area to be the framebuffer dimensions restore the
    previous logic and it fixes rendering issues.
    
    Fixes: c7d0d328d56 ("radv: Set the window scissor to the render area, not framebuffer")
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20900>
    (cherry picked from commit 1a93cd15563a5d0bb6faf12c5d4c852cb3534415)
    
  • a5b18bd4
    by Thong Thai at 2023-01-28T17:53:34-05:00
    gallium/auxiliary/vl: clean-up progressive shader
    
    Add the progressive shader to the vl_compositor_cs_cleanup_shaders
    function.
    
    Signed-off-by: Thong Thai <thong.thai@amd.com>
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8086
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8088
    Tested-by: Mark Herbert <mark.herbert42@gmail.com>
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    (cherry picked from commit bb003d406e0b32c0507b27e9667704e240addf40)
    
    Fixes: 56eac722bd7 ("gallium/auxiliary/vl: compute shaders for progressive yuv")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20971>
    
  • 23659a5c
    by Dylan Baker at 2023-01-31T10:29:04-08:00
    .pick_status.json: Update to 0f087b56d03a32e84ca2f5326fb4dcc2cb142bc9
    
  • 1b444a75
    by Rhys Perry at 2023-01-31T10:29:04-08:00
    aco: set has_color_exports with GPL
    
    Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
    Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Fixes: 192486b7aa5 ("aco/gfx11: export mrtz in discard early exit for non-color shaders")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20937>
    (cherry picked from commit 695cf75266f43c0f9d123c5030b136bbdf061d4c)
    
  • 86a7567c
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    Revert "zink: allow direct memory mapping for any COHERENT+CACHED buffer"
    
    This reverts commit a3552048c7e7b8afebfc99caac6d555439ddf2bc.
    
    on some drivers this catches qbos, which then hits the below assert.
    needs more investigation
    
    Fixes: a3552048c7e ("zink: allow direct memory mapping for any COHERENT+CACHED buffer")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit 07809c45271a25066c583ca90b7365e0d88daf0d)
    
  • 6d973fed
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: add VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT for buffers if ext is enabled
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit c545300f30bc1d6558c066466052ec6a0acb3bed)
    
  • 364a15c3
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: set vkusage/vkflags for buffer resource objects
    
    this needs to be populated for other places in the driver that need it
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit 3c562cfc06417ca52738460bbe63ad972f26f4c5)
    
  • 3adff1c9
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: always set RESOURCE usage for descriptor buffers
    
    all types of descriptors may use buffer-type descriptors, even samplers
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit cc9fa060ee1b232e5e72077232d7b90c92dfc1bd)
    
  • 633a208f
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: disable bindless texture ext with descriptor buffer
    
    it's illegal to mix-and-match DB and non-DB descriptor usage, so disable
    this until I finish the implementation
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit 6f7b752fdd2f5f33139dbc105da433ef6f11f112)
    
  • f9cf3599
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: set VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT when using DB
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20912>
    (cherry picked from commit ac339d97978e96c80d43688566717d4c4f6fa7f3)
    
  • e2153c29
    by Lionel Landwerlin at 2023-01-31T10:29:04-08:00
    anv: fix null descriptors
    
    When writing descriptor with a null buffer/image we expect that
    writing 0 will point to the null surface. For that to work the null
    surface has to be in the bindless surface heap.
    
    This fixes some new failures in dEQP-VK.robustness.* tests once
    rewritten from the NV_ray_tracing to KHR_ray_tracing extension.
    
    Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
    Fixes: 4ceaed7839 ("anv: split internal surface states from descriptors")
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7762
    Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20953>
    (cherry picked from commit 0d7f8aa2499104b1d16deba32e4c25c342d1ce7d)
    
  • 19f9d41f
    by Lucas Stach at 2023-01-31T10:29:04-08:00
    etnaviv: drm: fix BO array leaks
    
    Free the both arrays tracking BOs when the etna_cmd_stream is destroyed.
    
    CC: mesa-stable
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20940>
    (cherry picked from commit 3156b15f70c83d954db9d8ffac90988c7b71a194)
    
  • 0bb555b6
    by Lucas Stach at 2023-01-31T10:29:04-08:00
    etnaviv: free pm queries dynarray on screen destroy
    
    CC: mesa-stable
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20940>
    (cherry picked from commit c59369005bf42c2981561643d8b0eb15b1b52581)
    
  • b9984bbc
    by Lucas Stach at 2023-01-31T10:29:04-08:00
    etnaviv: drm: fix check if BO is on a deferred destroy list
    
    list_is_linked() isn't the right function to use in order to check if
    the BO is on a cache bucket or the zombie list, as this checks if the
    next pointer of the list isn't NULL. This is always the case with the
    BO list item as it's always initialized, so the next pointer points to
    the list head itself when the BO isn't on any list.
    
    Use list_is_empty() to check if the BO is actually linked into one
    of the deferred destroy lists.
    
    Fixes: 1b1f8592c03c ("etnaviv: drm: properly handle reviving BOs via a lookup")
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20940>
    (cherry picked from commit 196882a1477a69ba1593db8bdaaf6726fe914fca)
    
  • 7013b320
    by Bas Nieuwenhuizen at 2023-01-31T10:29:04-08:00
    radv: Set FDCC_CONTROL SAMPLE_MASK_TRACKER_WATERMARK
    
    Might cause hangs according to comments. Syncs with radeonsi/PAL.
    
    Fixes: e210ffb4d0d ("radv: update framebuffer registers on GFX11")
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20979>
    (cherry picked from commit d321bc1323b02de92a095397830c9296996e16b3)
    
  • 950f54d6
    by Bas Nieuwenhuizen at 2023-01-31T10:29:04-08:00
    radv: Shift left the tile swizzle more on GFX11.
    
    ac/surface puts the raw pip_bank_xor there, which needs the extra
    shift for the actual tile_swizzle.
    
    (I think long term we should refactor this in ac/surface but for
     now lets fix like radeonsi to avoid race conditions.)
    
    CC: mesa-stable
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20979>
    (cherry picked from commit b0a9772cc6154e29ba6e3d21a91096dd891ef302)
    
  • e89933a6
    by Samuel Pitoiset at 2023-01-31T10:29:04-08:00
    radv: stop setting INTERPOLATE_COMP_Z
    
    Based on RadeonSI/PAL.
    
    Cc: mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20982>
    (cherry picked from commit 47852b9ff45e73f8f6773a1598cf872c6ee6207f)
    
  • 00923a7d
    by Samuel Pitoiset at 2023-01-31T10:29:04-08:00
    radv: fix RB+ for SRGB formats
    
    This should be set for linear colorspace only.
    
    Ported from RadeonSI.
    
    Cc: mesa-stable
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20982>
    (cherry picked from commit c8a575eb3098282f495948b728abd45768dc5d01)
    
  • 7d62b72c
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: don't add dmabuf export type if dmabuf isn't supported
    
    avoid trying to create dmabuf-exportable resources too
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20791>
    (cherry picked from commit 01d2e7afce562013a8cb9b6b9fd1190e317e896a)
    
  • 0758a961
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: stop leaking push descriptor templates
    
    templates[ZINK_DESCRIPTOR_TYPE_UNIFORMS] needs to be deleted, which
    requires a larger iterator
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20867>
    (cherry picked from commit dd733034aa117294be0f06b5b973b18d1c341666)
    
  • 7c846e46
    by Mike Blumenkrantz at 2023-01-31T10:29:04-08:00
    zink: always unref old images when adding new binds
    
    at some point this was correct, but refactoring has since occurred,
    and this ends up leaking storage image objects
    
    cc: mesa-stable
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20867>
    (cherry picked from commit d745e3b0ab4614136f1c8d93feb54b612fd58d3f)
    
  • 53c7beed
    by Martin Roukala (né Peres) at 2023-01-31T14:18:17-08:00
    ci/debian/x86_test-vk: drop an outdated dependency
    
    This was used by the tracing jobs, which we are not running on Mesa
    anymore.
    
    Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
    Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20956>
    (cherry picked from commit d7f429ccc1ddf76832958c47e6968dae2c870f34)
    
  • 49d677d3
    by Karol Herbst at 2023-01-31T14:18:17-08:00
    rusticl: fix build error with valgrind being enabled
    
    This bumps the meson requierement to 1.0 because it requires
    https://github.com/mesonbuild/meson/pull/11024
    
    Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7688
    Fixes: 20c90fed5a0 ("rusticl: added")
    Signed-off-by: Karol Herbst <kherbst@redhat.com>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19778>
    (cherry picked from commit 4b841cfec8b502a8290cd67356d811933d318c2b)
    
    Conflicts:
    	.gitlab-ci/image-tags.yml
    
    Stable:
        - Create a custom CI tag for 23.0, as we're lacking some patches
          necessary to use the same CI images as main, and I don't want to
          pull that many CI changes into the stable branch
    
  • 2c2629f2
    by Dylan Baker at 2023-02-01T13:24:43-08:00
    VERSION: bump for 23.0.0-rc4
    

3 changed files:

The diff was not included because it is too large.

Reply to: