Joshua's vc4/v3d/dma-patch was applied in 21.1.7
Release notes 21.1.7:
Bug fixes
Miscompilation of a switch case
[radeonsi][regression] CPU is being used ~10 times more than usual after
c5478f9067f.
dEQP-VK.wsi.android.swapchain.create#image_swapchain_create_info crash on Android R
The image is distorted while use iGPU(Intel GPU) rendering and output via dGPU (AMD GPU)
lima: regression in plbu scissors cmd
Incorrect rendering
Changes
pan/bi: Restrict swizzles on same cycle temporaries
nir/lower_mediump_io: Don’t remap base unless needed
nir/lower_mediump: Fix metadata in all passes
util/fossilize_db: Update parsed_offset correctly.
util/fossilize_db: Reset file position to parsed_offset on cache_offset read failure.
util/fossilize_db: Flush files after header write.
util/fossilize_db: Be conservative about header length check for locking.
util/fossilize_db: Only allocate entries after full read.
util/fossilize_db: Use uint64_t for file size.
util/fossilize_db: Unlock the cache file if the entry already exists.
util/fossilize_db: Add extra flock mutex.
radv: Allocate space for inline push constants.
vulkan/wsi/x11: do not inherit last_present_mode
ir3: Preserve gl_ViewportIndex in the binning shader
teximage: return correct desktop GL error for compressedteximage
intel/fs: restrict max push length on older GPUs to a smaller amount
virgl: disable anisotropic filtering.
freedreno/ir3: Add build id to the disassembler test
.pick_status.json: Update to
7055282231cdad23e7b23fb49a2f953a99797f8a
.pick_status.json: Update to
2f06642b06c94f07f4bfe3df32b25659428c9144
.pick_status.json: Mark
6ccf11ac2b951963407601b5b1109b45a972e48e as denominated
.pick_status.json: Update to
2f06642b06c94f07f4bfe3df32b25659428c9144
.pick_status.json: Update to
353e6323936b812884fa677c25bdba91554881b7
.pick_status.json: Update to
4128acdee32eadfef1fb8c3c3ce2e512a267cdf4
pick-ui: drop assert that optional argument is passed
pick-ui: show nomination type in the UI
pick-ui: show commit date
lima: avoid crash with negative viewport values
zink: make codegen compatible with python 3.5
mesa/main: Check for fbo attachments when importing EGL images to textures
v3d, vc4: Fix dmabuf import for non-scanout buffers
gallium/hud: initialize query
nv30: fix emulated vertex index buffers
gallium: Reset {d,r}Priv in dri_unbind_context
loader/dri3: create linear buffer with scanout support
anv: fix submission batching with perf queries
anv: don’t try to access Android swapchains
renderonly: don’t complain when GPU import fails
etnaviv: always try to create KMS side handles for imported resources
glsl: evaluate switch expression once
zink: use array size in spirv bo length calculations
etnaviv: fix gbm_bo_get_handle_for_plane for multiplanar images
clover/spirv: Properly size 3-component vector args
clover/nir: Set constant buffer pointer size to host
gallium/va: don’t use key=NULL in hash tables
amd/registers: fix fields conflict detection
radeonsi: don’t create an infinite number of variants
nir/algebraic: fix imod by negative power-of-two
radv: fix selecting the first active CU when profiling with SQTT
etnaviv: fix renderonly check in etna_resource_alloc
etnaviv: fail in get_handle(TYPE_KMS) without a scanout resource
freedreno: fail in get_handle(TYPE_KMS) without a scanout resource
panfrost: fail in get_handle(TYPE_KMS) without a scanout resource
lima: fail in get_handle(TYPE_KMS) without a scanout resource
nine: Fix assert in tx_src_param
intel/compiler: make sure swizzle is applied to if condition
glsl: Add operator for .length() method on implicitly-sized arrays
glsl: Properly handle .length() of an unsized array
gallium/vl: don’t leak fd in vl_dri3_screen_create
Release notes 21.1.6:
Bug fixes
[RADV] FSR in Resident Evil: Village looks very pixelated on Polaris
Crash in update_buffers after closing KDE “splash screen” downloader
Crash in update_buffers after closing KDE “splash screen” downloader
radeonsi: persistent, read-only buffer maps are slow to read
substance painter flickering with jagged texture and masks shown black
radv: FP16 mode in FidelityFX FSR doesn’t look right
[RADV] Blocky corruption in Scarlet Nexus and vkd3d-proton 2.4
Radeon RX580 and 5700 XT: Reloading ARB assembly shaders causes very glitchy rendering
Changes
targets/graw-xlib: Add missing dep_x11
egl/surfaceless: try kms_swrast before swrast
meson: allow egl_native_platform to be specified
freedreno/computerator: Fix local_size typo
aco/optimizer: ensure to not erase high bits when propagating packed constants
egl/wayland: Error on invalid native window
egl/wayland: Allow EGLSurface to outlive wl_egl_window
softpipe/aniso: move DDQ calculation to after scaling.
llvmpipe: add support for time elapsed queries.
.pick_status.json: Mark
a9c9a9938d6d2ead6f08ccf5256c95801fbc864f as backported
.pick_status.json: Update to
376fb4f55f080929df8ca5a2a975fc88a00eec06
.pick_status.json: Update to
1d6c790f9f6c373e667de955822b1048c7073ba3
.pick_status.json: Update to
73262d4bd4a4637a332264a165c62ce3209d03fb
zink: remove duplicate format-mapping on little-endian
vulkan: do not map zero-sized region of memory
vulkan: allocate host-visible memory for swapchain images
nir/gcm: Clear out pass_flags before starting
iris: Re-emit MEDIA_VFE_STATE for variable group size shaders
anv: Handle errors properly in anv_i915_query
v3d/driconf: Expose non-MSAA texture limits for mutter and gnome-shell
lavapipe: Use common Vulkan format helpers
broadcom/compiler: emit TMU flush before a jump
nv50/ir/nir: fix smem size for GL
radeonsi: don’t expose no-attachment MSAA 16x on all 1 RB chips due to issues
st/mesa: always use PIPE_USAGE_STAGING for GL_MAP_READ_BIT usage
egl/android: include “util/compiler.h” for FALLTHROUGH macro
util/foz: stop crashing on destroy if prepare hasn’t been called
radeonsi: Check aux_context on si_destroy_screen()
mesa: clear shader_info::is_lowered in prog_to_nir
mesa: fix bindless uniform samplers update
aco: don’t create v_madmk_f32/v_madak_f32 from v_fma_legacy_f16
freedreno/ir3: Don’t force RTNE if rounding mode is undefined
radv: only init the TC-compat ZRANGE metadata for the depth aspect
glsl: replace some C++ code with C
util: add workaround for Full Bore
glsl: relax rule on varying matching for shaders older than 4.20
lima: handle fp16 vertex formats
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+++ /dev/null
-From 303c02a31df4e2b8f6090e75982922a9cba33e4c Mon Sep 17 00:00:00 2001
-From: Joshua Watt <JPEWhacker@gmail.com>
-Date: Tue, 27 Jul 2021 11:41:53 -0500
-Subject: [PATCH] v3d, vc4: Fix dmabuf import for non-scanout buffers
-
-Failure to create a buffer for scanout should not be fatal when
-importing a buffer. Buffers allocated from a render-only device may not
-be able to scanned out directly but can still be used for other
-rendering purposes (e.g. as a texture).
-
-Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12081]
----
- src/gallium/drivers/v3d/v3d_resource.c | 13 +++++--------
- src/gallium/drivers/vc4/vc4_resource.c | 3 ---
- 2 files changed, 5 insertions(+), 11 deletions(-)
-
-diff --git a/src/gallium/drivers/v3d/v3d_resource.c b/src/gallium/drivers/v3d/v3d_resource.c
-index 602ba6d8447..02dc29ae6a0 100644
---- a/src/gallium/drivers/v3d/v3d_resource.c
-+++ b/src/gallium/drivers/v3d/v3d_resource.c
-@@ -433,10 +433,11 @@ v3d_resource_get_handle(struct pipe_screen *pscreen,
- return v3d_bo_flink(bo, &whandle->handle);
- case WINSYS_HANDLE_TYPE_KMS:
- if (screen->ro) {
-- assert(rsc->scanout);
-- bool ok = renderonly_get_handle(rsc->scanout, whandle);
-- whandle->stride = rsc->slices[0].stride;
-- return ok;
-+ if (renderonly_get_handle(rsc->scanout, whandle)) {
-+ whandle->stride = rsc->slices[0].stride;
-+ return true;
-+ }
-+ return false;
- }
- whandle->handle = bo->handle;
- return true;
-@@ -929,10 +930,6 @@ v3d_resource_from_handle(struct pipe_screen *pscreen,
- renderonly_create_gpu_import_for_resource(prsc,
- screen->ro,
- NULL);
-- if (!rsc->scanout) {
-- fprintf(stderr, "Failed to create scanout resource.\n");
-- goto fail;
-- }
- }
-
- if (rsc->tiled && whandle->stride != slice->stride) {
-diff --git a/src/gallium/drivers/vc4/vc4_resource.c b/src/gallium/drivers/vc4/vc4_resource.c
-index 61e5fd7e5a6..bf3f7656ff8 100644
---- a/src/gallium/drivers/vc4/vc4_resource.c
-+++ b/src/gallium/drivers/vc4/vc4_resource.c
-@@ -320,7 +320,6 @@ vc4_resource_get_handle(struct pipe_screen *pscreen,
- return vc4_bo_flink(rsc->bo, &whandle->handle);
- case WINSYS_HANDLE_TYPE_KMS:
- if (screen->ro) {
-- assert(rsc->scanout);
- return renderonly_get_handle(rsc->scanout, whandle);
- }
- whandle->handle = rsc->bo->handle;
-@@ -689,8 +688,6 @@ vc4_resource_from_handle(struct pipe_screen *pscreen,
- renderonly_create_gpu_import_for_resource(prsc,
- screen->ro,
- NULL);
-- if (!rsc->scanout)
-- goto fail;
- }
-
- if (rsc->tiled && whandle->stride != slice->stride) {
---
-2.32.0
-
file://0002-meson.build-make-TLS-ELF-optional.patch \
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
- file://0001-v3d-vc4-Fix-dmabuf-import-for-non-scanout-buffers.patch \
"
-SRC_URI[sha256sum] = "022c7293074aeeced2278c872db4fa693147c70f8595b076cf3f1ef81520766d"
+SRC_URI[sha256sum] = "e9e67c10654f2e4bf15b944bb048007a614292aa4792b1b7512eb700b7b3a7bb"
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"