- May 08, 2024
-
-
Eric Engestrom authored
-
Eric Engestrom authored
-
Using the same buffer without a barrier actually can lead to data races as drivers might not properly synchronize the content. Using the stream uploader is a neat fix which prevents us from having to use a barrier but still keep high throughput when launching kernels back-to-back. Fixes: 5ff33f99 ("rusticl: use real buffer for cb0 for drivers prefering") Part-of: <!27666> (cherry picked from commit 8da8c6c2)
-
Eric Engestrom authored
-
- May 07, 2024
-
-
Part-of: <mesa/mesa!27422> (cherry picked from commit 24a7f6cd)
-
Fixes packing-varying piglit failures Cc: mesa-stable Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Part-of: <mesa/mesa!29017> (cherry picked from commit 81f42d82)
-
Allocations targeting a pan_kmod_dev can happen concurrently, so we need the pan_kmod_dev allocator to be thread-safe. ralloc() is not thread-safe, and we don't really need a hierarchical allocator in this context anyway, so let's just switch to calloc/free instead. Fixes: d95ec56f ("panfrost: Abstract kernel driver operations") Reported-by: Eric Smith <eric.smith@collabora.com> Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Tested-by: Eric Smith <eric.smith@collabora.com> Reviewed-by: Eric Smith <eric.smith@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <mesa/mesa!28926> (cherry picked from commit 4c74d147)
-
On pre-Valhall HW, the fragment shader metadata was part of the RSD (renderer state descriptor), which was emitted at draw time, but Valhall introduces a shader program descriptor containing only the shader information, and this one is emitted at shader preparation time. If we don't add the FS state BO to batch, we might end up with a batch being executed after the shader object has been destroyed, leading to page faults when the GPU tries to access the shader program descriptor. We make the panfrost_batch_add_bo() unconditional since it gracefully handles the NULL case (which will happen on v7-). Fixes: 087b63cb ("panfrost: Allow uploading fragment SPDs") Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com> Part-of: <mesa/mesa!28926> (cherry picked from commit 2cc31776)
-
Patch bumps up the size to the 2MB alignment, this fixes rendering issues with Star Wars KOTOR when VBO's are not used (which is the default setting). Fixes: 0b6693a3 ("iris: Align fresh BO allocations to 2MB in size") Closes: mesa/mesa#10863 Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <mesa/mesa!28974> (cherry picked from commit cbe2630f)
-
Currently ffmpeg has a bug in VAAPI AV1 decode that in some cases it submits the same slice data buffer as many times as there is tiles. However, in other cases it behaves correctly and all slice data buffers contain different parts of bitstream to decode which this change breaks. Now that the va frontend is passing correct offsets, this fixes decoding AV1-TEST-VECTORS/av1-1-b8-22-svc-L1T2 with ffmpeg. This reverts commit e6701f72. Cc: mesa-stable Reviewed-by: Leo Liu <leo.liu@amd.com> Part-of: <mesa/mesa!28960> (cherry picked from commit 88dfe04b)
-
The slice parameter data offset refers to offset in the submitted data buffer. When multiple slice data buffers are submitted, the offsets of all slices needs to be adjusted to be based from the start of the first data buffer. Cc: mesa-stable Reviewed-by: Leo Liu <leo.liu@amd.com> Part-of: <mesa/mesa!28960> (cherry picked from commit 6746d4df)
-
It's legal in SPIRV for functions to not have names, we have to take this into account when calling into strcmp here. Fixes: 2aa9eb49 ("nir: Add a helper for finding a function by name") Signed-off-by: Karol Herbst <kherbst@redhat.com> Part-of: <mesa/mesa!29063> (cherry picked from commit 569c2fcf)
-
Fixes: 19e8df39 ("zink: slightly better swapinterval failure handling") Part-of: <mesa/mesa!29065> (cherry picked from commit 13bd4138)
-
retain the old mode and print an error cc: mesa-stable Acked-by: Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!28904> (cherry picked from commit 19e8df39)
-
Eric Engestrom authored
-
D16 rounds towards zero for fp32 -> fp16, but for fixed point it rounds to nearest even in fp16. MIMG without D16 also rounds to nearest even, but in fp32. This means D16 and f2f16_rtz(tex@32) can produce different results. Sadly this also means we can never use d16 if fp16 rounding isn't undefined. Cc: mesa-stable Acked-by: Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!28730> (cherry picked from commit 3a35522c)
-
Fixes fs-uint-to-float-of-extract-int8.shader_test and fs-uint-to-float-of-extract-int16.shader_test added by piglit!883. No shader-db or fossil-db changes on any Intel platform. v2: Expand the comment explaining the potential problem. Suggested by Caio. Fixes: 29ce110b ("i965/fs: Remove extract virtual opcodes.") Reviewed-by: Caio Oliveira <caio.oliveira@intel.com> Part-of: <mesa/mesa!27891> (cherry picked from commit bf5d8265)
-
When a job is submitted to the flush_queue the resource dt_idx is reset, and if a readback is requested then we have to make sure that the corresponding kopper_preset has finished before we can acquire the image for readback, so wait for the according fence in this case. This fixes the validation error UNASSIGNED-Threading-MultipleThreads-Write triggered by piglit "read-front" lavapipe. Fixes: 8ade5588 zink: add kopper api Signed-off-by: Gert Wollny <gert.wollny@collabora.com> Part-of: <mesa/mesa!28127> (cherry picked from commit 811ed628)
-
This seems to be a simple copy-paste mistake. It makes sense to or-assign surface offsets because we clear the actual offset part with a mask first, but sampler offsets should be just assigned instead. Fixes: 7c76125d ("anv: use 2 different buffers for surfaces/samplers in descriptor sets") Closes: mesa/mesa#10790 Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!29019> (cherry picked from commit 39c4de7e)
-
Fixes: dEQP-EGL.functional.sharing.gles2.multithread.random_egl_sync.*, one of them, its quite finiky, one may say random Signed-off-by: Yusuf Khan <yusisamerican@gmail.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Cc: mesa-stable Part-of: <mesa/mesa!28618> (cherry picked from commit 482d9fcb)
-
The macro takes the type of the pipeline to check for, but the cast to base checks for a full graphics pipeline, so if used on a library one it fails. Cc: mesa-stable Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!29011> (cherry picked from commit 6223388c)
-
Eric Engestrom authored
-
Note: As a matter of fact, this change by itself makes vdpau on r600 works again. Indeed, r600 sets the stride value with vertex_buffer_index as the r600 index; vertex_buffer_index was set to zero at the vl_compositor/init_buffers() stage on the three elements. As a consequence of this typo the stride value was overwritten to zero. This was breaking vdpau. Fixes: 76725452 ("gallium: move vertex stride to CSO") Related: mesa/mesa#10468 Closes: mesa/mesa#10267 Signed-off-by: Patrick Lerda <patrick9876@free.fr> Reviewed-by: Leo Liu <leo.liu@amd.com> Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!28966> (cherry picked from commit fe8fdc58)
-
- May 01, 2024
-
-
if swapchain creation fails (e.g., insane cts swapchain configs), the swapchain gets demoted to a non-window image that is still accessed by the frontend. this image should not ever hit corresponding zink entrypoints for swapchain-only images, which requires a flag to test swapchain-edness cc: mesa-stable Acked-by: Dave Airlie <airlied@redhat.com> Part-of: <mesa/mesa!28904> (cherry picked from commit a50c1780)
-
- Apr 30, 2024
-
-
Cc: mesa-stable Closes: mesa/mesa#10020 Reviewed-by: Ruijing Dong <ruijing.dong@amd.com> Part-of: <mesa/mesa!28945> (cherry picked from commit bc72126c)
-
Cc: mesa-stable Reviewed-by: Ruijing Dong <ruijing.dong@amd.com> Part-of: <mesa/mesa!28945> (cherry picked from commit b144f501)
-
It's never mapped so there's no reason for PIPE_USAGE_STAGING. Improves encoding performance on dGPUs. Tested with 7900XTX (before 1900fps => after 2100fps): ffmpeg -hide_banner -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 \ -f lavfi -i testsrc=size=640x640,format=nv12 -vf hwupload -c:v av1_vaapi \ -f null - Cc: mesa-stable Reviewed-by: Ruijing Dong <ruijing.dong@amd.com> Part-of: <mesa/mesa!28945> (cherry picked from commit cc0df497)
-
For early error returns, all pipeline handles have to be destroyed. Otherwise the caller will treat those valid handles as successfully created pipeline objects. Cc: mesa-stable Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <mesa/mesa!28944> (cherry picked from commit 4ec84adb)
-
If we're passed a memory-info, but no memory-prop, we'd end up dereferencing a null-pointer here. Let's use a fallback struct instead, similar to what RADV does. Fixes: d970fe2e ("panfrost: Add a Vulkan driver for Midgard/Bifrost GPUs") CID: 1496060 Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Part-of: <mesa/mesa!28856> (cherry picked from commit 3b3df7b8)
-
The spec describes pDependencyInfos as an array with eventCount elements. cc: mesa-stable Closes: mesa/mesa#10579 Part-of: <mesa/mesa!28896> (cherry picked from commit d6c9b1d0)
-
Always select sample barycentric when persample dispatch is unknown at compile time and let the payload adjustments feed the expected value based on dispatch. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: mesa-stable Reviewed-by: Ivan Briano <ivan.briano@intel.com> Part-of: <mesa/mesa!27803> (cherry picked from commit 1bbe2d98)
-
optimized pipeline compile jobs may still be ongoing during ctx destroy, and these must complete too or else crashes will occur fixes shutdown crash with dEQP-EGL.functional.sharing.gles2.multithread.simple.images.texture_source.teximage2d_render cc: mesa-stable Part-of: <mesa/mesa!28900> (cherry picked from commit bd1a3921)
-
it's possible for a shader to be precompiling its separate shader variants during destruction, which requires that the programs set be iterated under lock in order to prune every new variant as it is created without crashing fixes crashes in spec@arb_separate_shader_objects@400 combinations.* cc: mesa-stable Part-of: <mesa/mesa!28900> (cherry picked from commit f18a1d3a)
-
fixes KHR-GLESEXT.draw_elements_base_vertex_tests.invalid_mode_argument cc: mesa-stable Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <mesa/mesa!28903> (cherry picked from commit 4660ee1d)
-
If we unconditionally assign false to first *before* we use it, it's never true when used. Instead, let's assign it *both* at the end *and* when continuing. Fixes: 4da88060 ("panfrost: Skip blit shader labelling if the buffer has no space") CID: 1476270 Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Part-of: <mesa/mesa!28856> (cherry picked from commit 9058d5ff)
-
This array has 3 components, because it's meant to hold the X, Y and Z components of the work-group size sysval. However, mir_pick_ubo assumes vec4 for the push-uniforms, which ends up promoting this to 4 components. So let's make sure we don't write that last component. It's not going to do anything good. In practice, this leads to the viewport descriptor being smashed, which doesn't actually do any real-world harm, because this only happens in compute batches where that descriptor is unused. However, writing outside of arrays is undefined behavior, so we should fix it regardless. Fixes: 50061670 ("panfrost: Hook-up indirect dispatch support") Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <mesa/mesa!28856> (cherry picked from commit 186f7fa9)
-
There're many cases in which the ring submissions must succeed. We don't worry about real oom since things would fail earlier. For simulated oom from random intentional allocs, there isn't robust way to fail those must succeeds. e.g. the commands that don't have return codes or valid error return struct defaults. So real oom propagation is still at best effort. Cc: mesa-stable Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <mesa/mesa!28914> (cherry picked from commit 3e16d25d)
-
Somehow I missed this one in 164c0951 If the format the image is being created with doesn't have the FSR format feature, report it as unsupported. Also fixes future CTS tests: dEQP-VK.api.info.unsupported_image_usage.* Cc: mesa-stable Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!28913> (cherry picked from commit 8ebf07ec)
-
Fixes: abc4111d ('anv: pass steam output as argument for anv_dump_pipe_bits') Signed-off-by: Rohan Garg <rohan.garg@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <mesa/mesa!28931> (cherry picked from commit b4067594)
-
for extensions that require features/properties to enable support, this avoids adding the feature struct to the device createinfo Closes: mesa/mesa#11067 cc: mesa-stable Part-of: <mesa/mesa!28925> (cherry picked from commit 2c180c47)
-