Alyssa Rosenzweig [Thu, 25 May 2023 12:07:43 +0000 (08:07 -0400)]
panfrost/ci: Skip Piglit tests known to crash
A bunch of Piglits cause crashes, at least when run with PAN_MESA_DEBUG=sync.
For many, the crashes are due to faults. Although Piglits are nominally
process-isolated, faults can leak across processes to subpar recovery, meaning
these crashes are liable to cause robust passing tests to flakes. So, skip any
tests known to crash to make sure the coverage is solid.
Given that we run piglit on panfrost in pre-merge CI, but there's nobody
actively working on fixing piglits for panfrost, I think this is the best
compromise. It means we get to keep the coverage (and ensure we don't regress
piglits that are currently passing) but we don't risk flaking CI. Currently
deqp-runner is eating massive numbers of piglit flakes. While it's really great
that the infrastructure is robust in that way, it'd be better to not have those
flakes in CI in the first place (for run time, if not robustness).
If someone starts hacking on Bifrost + desktop OpenGL again for some reason and
fixes these tests locally, they can reenable them then.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23235>
David Heidelberg [Wed, 24 May 2023 10:37:50 +0000 (12:37 +0200)]
ci/llvmpipe: document intel_shader_atomic_float_minmax@execution@ssbo-atomic*
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:40:53 +0000 (12:40 +0200)]
ci/lavapipe: zink failures
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 09:41:34 +0000 (11:41 +0200)]
ci/lavapipe: document subgroups.shuffle.compute.subgroupshuffleup_double_constant crash
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Mon, 22 May 2023 11:29:23 +0000 (13:29 +0200)]
ci: do not fail when SHA1 impl. produce stringop-overreads warning
When SHA1 gets purged from Mesa, drop the override.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Fri, 17 Mar 2023 15:08:07 +0000 (16:08 +0100)]
ci: disable bogus GCC warning with -Warray-bounds
Reported: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109744
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Sat, 20 May 2023 22:47:05 +0000 (00:47 +0200)]
ci: enable shellcheck on whole .gitlab-ci
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Sat, 20 May 2023 20:46:31 +0000 (22:46 +0200)]
ci/zink: disable flaking anv traces
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Mon, 15 May 2023 23:43:08 +0000 (00:43 +0100)]
ci/virpipe: add flakes introduced with CI uprev to Debian 12
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Mon, 15 May 2023 23:32:00 +0000 (00:32 +0100)]
ci/venus: add fail after CI uprev to the Debian 12
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Mon, 15 May 2023 23:12:50 +0000 (00:12 +0100)]
ci/mingw: disable as it's broken
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
Corentin Noël [Mon, 15 May 2023 15:20:58 +0000 (17:20 +0200)]
build-crosvm: Use the pkg-config crate 0.3.27
The support of pkgconf is available since this version.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Tue, 2 May 2023 23:26:29 +0000 (01:26 +0200)]
ci: drop gallium-aux test on msan builds, renable freedreno
gallium-aux test cannot work properly without msan libc,
which we don't have available right now.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 26 Apr 2023 11:16:43 +0000 (13:16 +0200)]
ci/skqp: skqp can't live with compiler named clang-15, provide symlink
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Sat, 25 Mar 2023 12:41:09 +0000 (13:41 +0100)]
ci: add clang-15 and clang++-15 wrapper script
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Sun, 19 Mar 2023 05:01:49 +0000 (06:01 +0100)]
ci/crosvm: install libelogind0 and sysvinit-core for poweroff functionality
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Fri, 17 Mar 2023 00:51:07 +0000 (01:51 +0100)]
ci/apitrace: install win64 apitrace only on x86_64
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Thu, 16 Mar 2023 17:16:29 +0000 (18:16 +0100)]
ci: bump from Debian 11 (bullseye) to 12 (bookworm)
Already in hard-freeze, so we don't have to worry about breaking changes.
Significant changes:
- LLVM 15 is used instead of 11 or 13
- /dev/shm has to be manually mounted
- Debian 12 uses libdrm 2.4.114
- reworked creating of rootfs, from debootstrap to mmdebstrap
- split `create-rootfs.sh` into `lava_build.sh`, `setup-rootfs.sh`, and `strip-rootfs.sh`
- dropped winehq repository for now (Debian wine is up-to-date enough)
- we use wine now, no need to call explicitly call wine64
- bumped libasan from version 6 to 8
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Thu, 25 May 2023 12:36:59 +0000 (14:36 +0200)]
ci: VVL uprev (temporary until new release will be published)
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:27:30 +0000 (12:27 +0200)]
ci: libwayland from 1.18 to 1.21 and wayland protocols from 1.24 to 1.31
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:26:24 +0000 (12:26 +0200)]
ci: bump gfxreconstruct revision up to compatible version with Debian 12
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:18:23 +0000 (12:18 +0200)]
ci: install stock android-libext4-utils (available in 12, bookworm)
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:11:51 +0000 (12:11 +0200)]
ci: bump libdrm from 2.4.110 to 2.4.114 present in Debian 12
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Wed, 24 May 2023 10:03:39 +0000 (12:03 +0200)]
ci: use meson setup and meson install instead of meson and invoking ninja directly
Not primary scope of relevant MR, just some incremental changes.
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
David Heidelberg [Thu, 16 Mar 2023 17:05:35 +0000 (18:05 +0100)]
ci: move from pkg-config to pkgconf
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21977>
Eric Engestrom [Thu, 25 May 2023 13:04:56 +0000 (14:04 +0100)]
docs: fix release date of 23.1.0
I forgot to generate this doc when I made the release, and this was the
date when I actually did generate them.
Fixes:
7fe482d4ce48c5d800ca ("docs: add release notes for 23.1.0")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23237>
Iago Toral Quiroga [Wed, 24 May 2023 07:58:31 +0000 (09:58 +0200)]
broadcom/compiler: use scoped barriers
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23228>
Iago Toral Quiroga [Thu, 25 May 2023 06:45:40 +0000 (08:45 +0200)]
broadcom/compiler: flag use of control barriers
We have been relying on NIR's gather info pass for this
but it is not safe unless we are certain we are always
calling it after any other pass that may emit a control
barrier.
As it stands, nir_zero_initialize_shared_memory can emit a
control barrier and we don't call the gather info pass after
it, which is problematic. The only reason this is not really
a problem right now is because for non-scoped barriers (which
is what we currently use) it doesn't emit a scoped barrier, just
a regular memory barrier (which is probably a bug in the pass!),
but as soon as we move to scoped barriers, this is going
to be a problem, since we need to know when we emit a control
barrier to ensure supergroup calculations prevent deadlocks at
the barrier op.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23228>
Alyssa Rosenzweig [Tue, 23 May 2023 16:22:57 +0000 (12:22 -0400)]
zink: Switch to scoped barriers
Rather than translate piles of discrete memory_barrier/control_barrier
instructions, translate the unified scoped_barrier which maps almost directly to
SPIR-V's barrier. Yes, this means I cheated off vtn for the implementation.
v2: Use existing scope translation.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23186>
Erik Faye-Lund [Mon, 15 May 2023 13:53:50 +0000 (15:53 +0200)]
docs: move obsolete extensions to their own list
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Erik Faye-Lund [Mon, 15 May 2023 13:48:25 +0000 (15:48 +0200)]
docs: mark MESA_texture_array as obsolete
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Erik Faye-Lund [Mon, 15 May 2023 13:47:26 +0000 (15:47 +0200)]
docs: mark MESA_swap_frame_usage as obsolete
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Erik Faye-Lund [Mon, 15 May 2023 13:45:26 +0000 (15:45 +0200)]
docs: mark MESA_shader_debug as obsolete
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Erik Faye-Lund [Mon, 15 May 2023 13:41:21 +0000 (15:41 +0200)]
docs: mark MESA_multithread_makecurrent as obsolete
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Erik Faye-Lund [Mon, 15 May 2023 13:39:07 +0000 (15:39 +0200)]
docs: explicitly mark extensions as obsolete
We explicitly mark the other extensions in the OLD-folder as obsolete,
so let's be consistent here.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23029>
Samuel Pitoiset [Thu, 4 May 2023 13:29:39 +0000 (15:29 +0200)]
vulkan/pipeline_cache: remove a bogus assert when inserting objects
If two threads deserialize the raw object at the same time, the
refcount could be more than 1 temporarily.
This can be reproduced with Granite during the multi-threaded pipeline
cache pre-warm on startup, and also with Dota2.
Fixes:
cbab396f549 ("vulkan/pipeline_cache: replace raw data objects on cache insertion of real objects")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22853>
Erik Faye-Lund [Mon, 8 May 2023 08:28:45 +0000 (10:28 +0200)]
radeonsi,radv: use nir_format_linear_to_srgb
There's little point in open-coding this, when we already have a helper
for it.
This adds an fsat to both code-paths. Not sure if that's good or bad, or
if it even matters at all.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23201>
Lionel Landwerlin [Tue, 2 May 2023 21:06:32 +0000 (00:06 +0300)]
iris: rework Wa_14017076903 to only apply with occlusion queries
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes:
415b824bc6 ("iris: implement occlusion query related Wa_14017076903")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22807>
Eric Engestrom [Wed, 24 May 2023 11:35:17 +0000 (12:35 +0100)]
mailmap: update @mupuf's name
There were a number of variants in the git history:
Martin Peres <martin.peres@linux.intel.com>
Martin Peres <martin.peres@mupuf.org>
Martin Roukala (néé Peres) <martin.roukala@mupuf.org>
Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Last one is the current one, so let's normalize the rest to that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23229>
Thomas H.P. Andersen [Wed, 3 May 2023 18:50:04 +0000 (20:50 +0200)]
st: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:56 +0000 (20:49 +0200)]
lavapipe: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:48 +0000 (20:49 +0200)]
zink: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:42 +0000 (20:49 +0200)]
virgl: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:35 +0000 (20:49 +0200)]
vc4: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:28 +0000 (20:49 +0200)]
v3d: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:21 +0000 (20:49 +0200)]
svga: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:11 +0000 (20:49 +0200)]
softpipe: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:49:04 +0000 (20:49 +0200)]
radeonsi: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:55 +0000 (20:48 +0200)]
r600: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:48 +0000 (20:48 +0200)]
r300: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:40 +0000 (20:48 +0200)]
nouveau: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:34 +0000 (20:48 +0200)]
llvmpipe: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:20 +0000 (20:48 +0200)]
i915: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:12 +0000 (20:48 +0200)]
freedreno: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:48:01 +0000 (20:48 +0200)]
etnaviv: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:47:51 +0000 (20:47 +0200)]
d3d12: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Wed, 3 May 2023 18:47:13 +0000 (20:47 +0200)]
aux: remove unused tgsi includes
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22838>
Thomas H.P. Andersen [Thu, 4 May 2023 09:50:59 +0000 (11:50 +0200)]
tgsi: delete unused functions
None of these are in use
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22864>
Erik Faye-Lund [Mon, 8 May 2023 07:54:46 +0000 (09:54 +0200)]
nir: use nir_fsub_imm
Now that we have nir_fsub_imm, let's use it to save some typing!
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Erik Faye-Lund [Mon, 8 May 2023 07:07:53 +0000 (09:07 +0200)]
nir: add nir_fsub_imm
This is similar to nir_isub_imm, but for floats.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Erik Faye-Lund [Tue, 9 May 2023 22:53:24 +0000 (23:53 +0100)]
nir: use more nir_ffma_imm variants
nir_ffma_imm has several variants that allows specific arguments to be
immediates. Use them for simplicity.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Erik Faye-Lund [Mon, 8 May 2023 08:12:56 +0000 (10:12 +0200)]
nir: fsub -> fadd_imm
When doing nir_fsub(b, x, imm), we can negate the immediate value, and
replace the fsub with nir_fadd_imm() and get the same result. This makes
the code a bit shorter and easier to read.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Erik Faye-Lund [Mon, 8 May 2023 07:57:56 +0000 (09:57 +0200)]
nir: use more nir_fadd_imm
This makes the code a bit easier to read.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Erik Faye-Lund [Sat, 6 May 2023 06:49:32 +0000 (08:49 +0200)]
nir: use more nir_fmul_imm
This simplifies things a bit. Note that in some cases, the arguments are
swapped, because multiplications are commutative, and nir_fmul_imm only
allows the second operand to be an immediate.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23179>
Dave Airlie [Wed, 24 May 2023 23:37:39 +0000 (09:37 +1000)]
radv/video: use correct h264 levels
This should be set to the enum, ffmpeg has it wrong so far, but the sample decoder has it right.
convert radv to the proper answer.
Fixes:
1693c03a3963 ("radv/video: add initial h264 decoder for VCN")
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23225>
Julia Tatz [Wed, 24 May 2023 23:51:29 +0000 (19:51 -0400)]
zink: Implement PIPE_CAP_RESOURCE_FROM_USER_MEMORY
Needed for GL_AMD_pinned_memory & zero-copy support in opencl
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23199>
Marek Olšák [Wed, 24 May 2023 21:28:17 +0000 (17:28 -0400)]
winsys/radeon: set more radeon_info fields
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23221>
Marek Olšák [Wed, 24 May 2023 21:30:43 +0000 (17:30 -0400)]
winsys/radeon: fix the scratch buffer on gfx6-7
I'm sure this was broken.
Fixes:
1bf39b1f9d115d69 - ac,radeonsi: rework how scratch_waves is used and move it to ac_gpu_info.c
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23221>
Marek Olšák [Wed, 24 May 2023 20:59:10 +0000 (16:59 -0400)]
winsys/radeon: set has_image_opcodes to unbreak gfx6-7
Fixes:
96913bbf3eba74 - ac/surface: force linear image layout for chips not supporting image opcodes
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9073
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23221>
Jesse Natalie [Wed, 24 May 2023 18:11:58 +0000 (11:11 -0700)]
dzn: Fix src/dest confusion for some non-bindless descriptor copies
Fixes:
5d2b4ee4 ("dzn: Allocate descriptor sets in buffers for bindless mode")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23218>
Jesse Natalie [Wed, 24 May 2023 17:54:08 +0000 (10:54 -0700)]
dzn: Don't expose copy queues
Vulkan says you can do things like image resolves or blits on transfer
queues, but D3D only allows literal copies. We could try to emulate
a Vulkan transfer-only queue backed by multiple D3D queues, where we
use the copy queue when possible but fall back to compute when needed,
but let's wait until there's a good reason to do that...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23218>
Jesse Natalie [Wed, 24 May 2023 17:41:40 +0000 (10:41 -0700)]
dzn: Partial revert of
8887852d
Turns out there was a good reason for having both buffer count
and desc_count. They served different purposes.
Fixes:
8887852d ("dzn: Add some docs around descriptor sets and remove redundant/unused data")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23218>
Jesse Natalie [Wed, 24 May 2023 16:54:14 +0000 (09:54 -0700)]
dzn: Fix inverted assert
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23218>
Jesse Natalie [Wed, 24 May 2023 16:51:45 +0000 (09:51 -0700)]
dzn: Add a no-bindless debug flag
Forcing bindless on is nice for apps that don't use EXT_descriptor_indexing,
but for the CTS, whenever EXT_descriptor_indexing is supported, it's used.
To be able to more thoroughly test the not-bindless path, add a debug flag
to turn it off.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23218>
Frank Binns [Mon, 22 May 2023 12:10:45 +0000 (13:10 +0100)]
pvr: fix invalid read reported by valgrind
pvr_gpu_upload() can't be used in the case of pvr_gpu_upload_usc() as it expects
the source and destination buffers to be the same size. This isn't the case
because pvr_gpu_upload_usc() adds some padding bytes to the size passed in by
the caller.
Fixes:
547a10f8702 ("pvr: switch pvr_cmd_buffer_alloc_mem to use pvr_bo_suballoc")
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23185>
Caleb Cornett [Wed, 24 May 2023 01:11:43 +0000 (21:11 -0400)]
d3d12: Fix Xbox frame scheduling for interval != 1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23154>
Caleb Cornett [Wed, 24 May 2023 01:11:11 +0000 (21:11 -0400)]
wgl: Add BITMAPV5HEADER to stw_gdishim.h
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23154>
Caleb Cornett [Wed, 24 May 2023 01:10:03 +0000 (21:10 -0400)]
d3d12: Fix Xbox GDK build errors
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23154>
Patrick Lerda [Sat, 20 May 2023 15:12:34 +0000 (17:12 +0200)]
glthread: fix typo related to upload_vertices()
Fixes:
68a926a15b7b ("glthread: set GL_OUT_OF_MEMORY if we fail to upload vertices")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23166>
Marek Olšák [Thu, 18 May 2023 21:22:27 +0000 (17:22 -0400)]
ac,radeonsi,winsyses: switch to SPDX-License-Identifier: MIT
excluding: aco, radv, addrlib
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23113>
Eric Engestrom [Wed, 24 May 2023 14:09:38 +0000 (15:09 +0100)]
ci/zink: add new zink-radv-navi10-valve flakes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23215>
David Heidelberg [Wed, 24 May 2023 14:52:40 +0000 (16:52 +0200)]
ci/freedreno: rename piglit job to respresent the real testing it does
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23211>
David Heidelberg [Wed, 24 May 2023 14:51:43 +0000 (16:51 +0200)]
ci/freedreno: disable 3 jobs to match our farm 3 devices down
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23211>
Marek Olšák [Thu, 18 May 2023 20:50:50 +0000 (16:50 -0400)]
mesa: fix a VBO buffer reference leak in _mesa_bind_vertex_buffer
Fixes:
03ba57c6c53214b19 - mesa: extend _mesa_bind_vertex_buffer to take ownership of the buffer reference
Reviewed-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23112>
Samuel Pitoiset [Wed, 24 May 2023 15:09:30 +0000 (17:09 +0200)]
zink/ci: update VANGOGH expected list of failures
arb_pipeline_statistics_query-frag is passing now. VRS flat shading
was the culprit and since smooth lines, it's disabled because
gl_SampleMaskIn is read. Incredible.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23212>
Rhys Perry [Wed, 12 Apr 2023 15:00:10 +0000 (16:00 +0100)]
aco: consider how definitions fixed to operands can change register demand
Usually the register demand before an instruction would be considered part
of the previous instruction, since it's not greater than the register
demand for that previous instruction. Except, it can be greater in the
case of an definition fixed to a non-killed operand: the RA needs to
reserve space between the two instructions for the definition (containing
a copy of the operand).
fossil-db (navi21):
Totals from 5 (0.00% of 135636) affected shaders:
PreVGPRs: 35 -> 40 (+14.29%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8807
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22446>
Rhys Perry [Wed, 12 Apr 2023 14:50:57 +0000 (15:50 +0100)]
aco: add get_op_fixed_to_def() helper
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22446>
Lionel Landwerlin [Sat, 8 Apr 2023 20:21:29 +0000 (23:21 +0300)]
anv: implement EDS2.extendedDynamicState2PatchControlPoints
We make the compiler assume the worst possible case (it's not great
because we have to burn 32 GRFs of potential input data) and then we
push the actual value through push constants.
This enables VK_EXT_gpl usage on zink, which causes two traces to change
their results. Raven is an imperceptible change, blender has missing
original pngs but looks plausible.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22378>
Lionel Landwerlin [Sat, 8 Apr 2023 18:34:35 +0000 (21:34 +0300)]
intel/fs: make tcs input_vertices dynamic
We need to do 3 things to accomplish this :
1. make all the register access consider the maximal case when
unknown at compile time
2. move the clamping of load_per_vertex_input prior to lowering
nir_intrinsic_load_patch_vertices_in (in the dynamic cases, the
clamping will use the nir_intrinsic_load_patch_vertices_in to
clamp), meaning clamping using derefs rather than lowered
nir_intrinsic_load_per_vertex_input
3. in the known cases, lower nir_intrinsic_load_patch_vertices_in
in NIR (so that the clamped elements still be vectorized to the
smallest number of URB read messages)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22378>
Mike Blumenkrantz [Tue, 23 May 2023 17:58:09 +0000 (13:58 -0400)]
zink: use the per-context track_renderpasses flag in more places
this should fix some erroneous zsbuf invalidation
Fixes:
215beee16d9 ("zink: more explicitly track/check rp optimizing per-context")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23189>
Mike Blumenkrantz [Tue, 23 May 2023 13:30:59 +0000 (09:30 -0400)]
zink: don't wait on queue thread if disabled
Fixes:
270f9c0b063 ("zink: add ZINK_DEBUG=flushsync")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23189>
Alyssa Rosenzweig [Tue, 23 May 2023 22:19:03 +0000 (18:19 -0400)]
nir: Drop stale comments
Follow-on clean up after
01e9ee79f70 ("nir: Drop unused name from
nir_ssa_dest_init"). The referenced argument no longer exists.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Rob Clark <robclark@freedesktop.org>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23181>
Alyssa Rosenzweig [Tue, 23 May 2023 18:13:00 +0000 (14:13 -0400)]
agx: Use common combine_all_barriers callback
This contains a bugfix: execution scopes are now respected when combining
barriers. Otherwise control barriers can disappear during combining, which is
wrong.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23181>
Alyssa Rosenzweig [Tue, 23 May 2023 18:12:19 +0000 (14:12 -0400)]
nir/opt_barriers: Add a default callback
Absent any knowledge about the hardware, if the backend wants to combine
barriers we should try to combine all barriers.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23181>
Alyssa Rosenzweig [Tue, 23 May 2023 14:10:47 +0000 (10:10 -0400)]
treewide: Avoid nir_lower_regs_to_ssa calls
nir_registers are only supposed to be used temporarily. They may be created by a
producer, but then must be immediately lowered prior to optimizing the produced
shader. They may be created internally by an optimization pass that doesn't want
to deal with phis, but that pass needs to lower them back to phis immediately.
Finally they may be created when going out-of-SSA if a backend chooses, but that
has to happen late.
Regardless, there should be no case where a backend sees a shader that comes in
with nir_registers needing to be lowered. The two frontend producers of
registers (tgsi_to_nir and mesa/st) both call nir_lower_regs_to_ssa to clean up
as they should. Some backend (like intel) already depend on this behaviour.
There's no need for other backends to call nir_lower_regs_to_ssa too.
Drop the pointless calls as a baby step towards replacing nir_register.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23181>
José Roberto de Souza [Tue, 9 May 2023 17:28:07 +0000 (10:28 -0700)]
iris: Replace aperture_bytes by sram size in iris_resource_create_for_image() for PIPE_USAGE_STAGING
All platforms supported by Iris will have aperture_bytes set as 4Gb.
Also this value is not the actual aperture in i915, it actualy is the
GGTT size.
So here replacing it by the sram size, something that will vary
depending in the amount of RAM available.
This fix some tests with Xe KMD, as it is not setting aperture_bytes.
And will not do that as there is no UAPI to fetch this information
and it is not planned to it to Xe UAPI.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Ack-by: Rohan Garg <rohan.garg@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22969>
Alejandro Piñeiro [Wed, 24 May 2023 09:58:51 +0000 (11:58 +0200)]
broadcom/compiler: disable tmu pipelining when needed
disable_tmu_pipelining has been recently set to false on two
strategies that should set it to true.
Fixes the following CTS test:
dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite
Fixes:
c950098ab - broadcom/compiler: move buffer loads to lower register pressure
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23207>
Julia Tatz [Wed, 15 Feb 2023 05:39:57 +0000 (00:39 -0500)]
zink: Implement PIPE_CAP_OPENCL_INTEGER_FUNCTIONS and PIPE_CAP_INTEGER_MULTIPLY_32X16.
Enables GL_INTEL_shader_integer_functions2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23197>
Alejandro Piñeiro [Wed, 24 May 2023 08:43:55 +0000 (10:43 +0200)]
v3d: assert if v3d_compile returns NULL
Ideally we would like to trigger a compilation error like we do on
v3dv (VK_ERROR_UNKNOWN). But with v3d we can't really do that, as this
could happen on a draw call. Let's at least assert so debug builds
stops at this point.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23203>
Alejandro Piñeiro [Wed, 24 May 2023 08:32:59 +0000 (10:32 +0200)]
broadcom/compiler: return NULL if we fail to register allocate
Right now if we fail to register allocate, we return the qpu_insts
that we had at that point, even if the driver can't really use it.
Also v3dv_pipeline was already assuming that it would return NULL on
failure, returning VK_ERROR_UNKNOWN on that case.
This allows CTS tests with a lot of pressure, that regress now and
then to not being able to allocate, to finish with an error, instead
of blocking forever. For example:
dEQP-VK.graphicsfuzz.spv-stable-maze-flatten-copy-composite
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23203>