Yiwei Zhang
5dc3708e97
panvk: refactor swapchain image alias bind
...
This is to prepare for ANB support.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35779 >
2025-06-27 16:16:31 +00:00
Yiwei Zhang
827108ab7d
panvk: refactor panvk_image to track panvk_device_memory instead of bo
...
Since we have already dropped the refcounting there, replacing with a
back pointer to the device memory makes it clear we don't hold any ref.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35779 >
2025-06-27 16:16:31 +00:00
Alyssa Rosenzweig
1fd993388e
hk: fix gs static topology + indirect draw
...
Fixes: 5640266eb3 ("agx/nir_lower_gs: rework gs rast shape handling")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:49 +00:00
Alyssa Rosenzweig
1c4eb71cbc
libagx: port pre-GS to CL
...
in prep for changing the compile flow for it.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:49 +00:00
Alyssa Rosenzweig
dff1230879
agx/nir_lower_gs: remove random idiv const call
...
should be fixed in the agx backend now
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:49 +00:00
Alyssa Rosenzweig
73659b4f67
agx/nir_lower_gs: CLify more XFB code
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:48 +00:00
Alyssa Rosenzweig
10554ccad2
agx/nir_lower_gs: rework XFB prim calculation
...
significant instr count reduction for many outputs in a buffer.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:48 +00:00
Alyssa Rosenzweig
46e139d453
libagx: optimize xfb offset pointers
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:47 +00:00
Alyssa Rosenzweig
2544259030
asahi,hk,libagx: drop null checks
...
instead require scratch addresses be passed.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:45 +00:00
Alyssa Rosenzweig
222ffc352e
hk: eliminate null_sink
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:45 +00:00
Alyssa Rosenzweig
fa21722f1c
asahi: use zero/scratch page for null textures
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:44 +00:00
Alyssa Rosenzweig
db2891ec5f
hk,asahi: move scratch BO to common
...
gl needs this too.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:44 +00:00
Alyssa Rosenzweig
d3adef3164
agx: defer nir_opt_idiv_const
...
noticed in GS work.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35797 >
2025-06-27 15:31:43 +00:00
David Rosca
53e3e44eb3
frontends/va: Fix SyncSurface when used to sync coded buffer
...
This would skip the coded buffer fence wait if the surface fence is NULL.
Fixes: 0f20a3a4f1 ("frontends/va: Add surface pipe_fence for vl_compositor rendering")
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35782 >
2025-06-27 15:17:08 +00:00
Eric R. Smith
65bc0f715e
panvk: add a driConf to force enable atomics in shaders
...
This is mainly useful for enabling validation layers, but might also
be useful for a few apps that use very basic atomic operations. In
general these operations do not work properly in Bifrost, but they
work well enough to e.g. pass some piglit tests.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35710 >
2025-06-27 14:48:16 +00:00
Erik Faye-Lund
fcd2fbfdfd
panfrost/ci: fix up msaa fails... again
...
I should really have performed a full run here rather than just copying
the failures from a recent run... poorly.
Fixes: 8e646739baf ("panfrost/ci: add new 8x/16x msaa fails on t760")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35716 >
2025-06-27 14:18:39 +00:00
Erik Faye-Lund
345026ebf1
panfrost/ci: bump timeout for panfrost-t760-gles
...
This test regularly takes close to an hour, and sometimes exceeds that.
Let's bump the timeout for it, to give it a better chance to finish.
This job is only run manually, so it shouldn't affect the time it takes
to merge changes.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35716 >
2025-06-27 14:18:39 +00:00
Corentin Noël
c0d1b199ae
venus: Fix leak in syncobj creation failure path
...
CID: 1475984 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:24 +00:00
Yiwei Zhang
6469d7268f
venus: suppress Coverity Uninitialized scalar variable
...
Just false alarm. Adjusted the code to suppress it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:24 +00:00
Corentin Noël
4f8612f568
mesa/st: Fix leak in st_create_fp_variant
...
CID: 1643014 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:24 +00:00
Corentin Noël
c9513782bc
mesa/st: Fix memory leak in st_create_common_variant
...
CID: 1642998 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:24 +00:00
Corentin Noël
ad9db6b259
glx: Free all populated fields of the glx_display on creation failure
...
Add a common path to ensure that there is no copy-paste error.
CID: 1644424,1644409 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:23 +00:00
Corentin Noël
e3829eccc8
egl/wayland: Plug leak when implicit modifiers are unsupported
...
Do not leak modifiers_subset and modifiers_subset_opaque.
CID: 1644433 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:23 +00:00
Corentin Noël
8adb2d4949
virgl: Free resource memory on creation failure
...
CID: 1646975 Resource leak
Signed-off-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Feng Jiang <jiangfeng@kylinos.cn >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35474 >
2025-06-27 13:56:23 +00:00
Antonio Ospite
abb9ebed26
ci/android: download S3_ANDROID_ARTIFACT_NAME in cuttlefish-runner.sh
...
Downloading the android artifacts separately is really a peculiarity of
cuttlefish jobs, where we need mesa artifacts for both the host and the
guest.
So move the separate download of android artifacts to
cuttlefish-runner.sh
This aligns with the .test-android definition being cuttlefish specific,
and it also matches the original comment in that definition regarding
S3_ANDROID_ARTIFACT_NAME.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35380 >
2025-06-27 09:27:45 +00:00
Antonio Ospite
00ea50d964
ci/android: download mesa artifacts in a more robust way
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35380 >
2025-06-27 09:27:45 +00:00
Antonio Ospite
59ecbaaac0
ci/android: support issuing custom commands before running Android CTS
...
Some Android build may require some specific setup before running
Android CTS, for example switching to a user different than 0, or
setting some properties.
Add a mechanism to issue such commands in a generic way.
The job definition will have to set the `ANDROID_CTS_PREPARE_COMMAND`
variable with the desired command to execute right before running
Android CTS.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35380 >
2025-06-27 09:27:45 +00:00
Antonio Ospite
d49653e4a3
ci/android: trust system GLES if ANGLE_TAG is not specified
...
In commit c99c67c490 (ci/android: Only replace ANGLE if needed,
2025-06-05) ANGLE is replaced in the Android device only when ANGLE_TAG
is specified.
However it can still happen that the device was using ANGLE all along,
and not replacing it means that the original version would not match the
one built by mesa-ci, making the GLES version check fail unnecessarily.
In case ANGLE_TAG is not specified the GLES version check can be skipped
altogether, the rationale for this approach is that ANGLE can be
considered the default GLES implementation for Android going forward,
so if android-runner.sh has not replaced it we can just trust that the
original one is in place.
There might still be some fancy setups in the wild where the GLES
implementation is mesa and not ANGLE, but we are not testing those in
mesa-ci for now, so skipping the test for non-ANGLE GLES too is
acceptable.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35380 >
2025-06-27 09:27:45 +00:00
Eric Engestrom
b885e39c63
broadcom/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:53 +00:00
Eric Engestrom
6ebef82ae8
zink+lavapipe/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:53 +00:00
Eric Engestrom
30f92cff89
zink+nvk/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:53 +00:00
Eric Engestrom
39585f9372
zink+radv/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:53 +00:00
Eric Engestrom
671a63b0c7
nvk/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:52 +00:00
Eric Engestrom
0e78939afb
radv/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:52 +00:00
Eric Engestrom
e0e35c051d
radeonsi/ci: document flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:52 +00:00
Eric Engestrom
286318d0f3
radv/ci: sort previously added flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35787 >
2025-06-27 09:09:52 +00:00
Pierre-Eric Pelloux-Prayer
3210484fe2
ac/virtio: fix alignment of metadata command
...
Command size must be aligned to 8.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Fixes: 22263616ed ("amd: amdgpu-virtio implementation")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
7c6fb24067
amd/virtio: clear DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT
...
Calls to radv_amdgpu_cs_submit will come with either no waits
or through vk_queue.
vk_queue uses VK_SYNC_WAIT_PENDING which is translated as
DRM_SYNCOBJ_WAIT_FLAGS_WAIT_AVAILABLE.
WAIT_AVAILABLE will wait for the fence to materialize, so
it means it's safe to pass the syncobj in a
AMDGPU_CHUNK_ID_SYNCOBJ_TIMELINE_WAIT chunk without the
WAIT_FOR_SUBMIT flag.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
f0ab43ec1b
ac/virtio: support timeline syncobj
...
The only missing bit was supporting the timeline chunk_ids
during submit.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
c1fdd540aa
ac/info: add ac_drm_query_pci_bus_info
...
This allows to return dummy values for the vpipe case.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
ddf73e76a9
ac/info: use u_sync_provider instead of DRM_CAP_SYNCOBJ(_TIMELINE)
...
So we get the correct results regardless of the backend (amdgpu,
virtio nctx, vpipe, null).
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
df1224c8b2
radv: rework VM_ALWAYS_VALID handling
...
Instead of assuming that VM_ALWAYS_VALID is always available,
make its use conditionnal on its support.
This allows to remove the virtio nctx special case (where
VM_ALWAYS_VALID is only possible with virtio for buffers that
also have the NO_CPU_ACCESS flag since CPU access is implemented
through dmabuf on the host).
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
8c529ba58c
radv: disable extension depending on timeline syncobj when missing
...
It was already done through sync_types but we also need to declare
that the extensions are not supported.
Similarly .KHR_present_wait can't be exposed since it requires
timeline support.
This is useful for virtio native context which currently doesn't
support timelines on amdgpu.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
999d5098b4
radv/virtio: support vpipe
...
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
a96356b26e
radeonsi/virtio: support vpipe
...
For now use an environment variable to test the virtio code
using vpipe.
Exposing DRM_PRIME_CAP_EXPORT manually is required, otherwise
gbm platform will fallback to dummy buffers which aren't
supported.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
84c137ff14
amd/virtio: add vpipe support
...
When vpipe is used we won't have a valid fd available,
so make sure init doesn't fail.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
5d63d2fb04
ac/drm: replace direct ioctl calls by util_sync_provider
...
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
62b9c3eafc
ac/drm: store a util_sync_provider in ac_drm_device
...
util_sync_provider provides a wrapper to manipulate syncobjs.
This allows replacing direct ioctl usages with other functions,
and is going to be used to support vpipe.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:50 +00:00
Pierre-Eric Pelloux-Prayer
80985767cb
ac/drm: remove ac_drm_cs_create_syncobj
...
ac_drm_cs_create_syncobj2 is a simple replacement and this allows
to remove some code.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:49 +00:00
Pierre-Eric Pelloux-Prayer
e0bd24672c
ac/virtio: port to vdrm functions
...
Let's use the shared helpers instead of our own version.
Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com >
Reviewed-by: Rob Clark <robdclark@chromium.org >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34470 >
2025-06-27 08:15:49 +00:00