mesa issueshttps://gitlab.freedesktop.org/mesa/mesa/-/issues2024-03-27T16:04:46Zhttps://gitlab.freedesktop.org/mesa/mesa/-/issues/10905r300: crash when compiling some GSK shaders2024-03-27T16:04:46ZPavel Ondračkapavel.ondracka@gmail.comr300: crash when compiling some GSK shadersExample affected shader:[138.shader_test](/uploads/dc9456d55ace61584521cbf621c44d84/138.shader_test), crash can be reproduced with radeon drm-shim.
Regression from a782809f81dc32079691b3a280580dbf7b800dba
```
a782809f81dc32079691b3a2805...Example affected shader:[138.shader_test](/uploads/dc9456d55ace61584521cbf621c44d84/138.shader_test), crash can be reproduced with radeon drm-shim.
Regression from a782809f81dc32079691b3a280580dbf7b800dba
```
a782809f81dc32079691b3a280580dbf7b800dba is the first bad commit
commit a782809f81dc32079691b3a280580dbf7b800dba
Author: Faith Ekstrand <faith.ekstrand@collabora.com>
Date: Mon Mar 18 18:12:41 2024 -0500
nir/builder: Correctly handle decl_reg or undef as the first instruction
These are both handled by inserting them directly at the top of the
nir_function_impl. However, if the cursor is already at the top, it
never gets updated so we end up inserting other stuff after the newly
inserted undef or decl_reg. It's an odd edge case to be sure but I hit
it with my new NIR CF pass for NAK.
Fixes: 1be4c61c957d ("nir/builder: Add a helper for creating undefs")
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28300>
src/compiler/nir/nir_builder.c | 16 ++++++++++++++++
src/compiler/nir/nir_builder.h | 7 +++----
2 files changed, 19 insertions(+), 4 deletions(-)
```
Crash happens late in the backend during `nir_lower_vec_to_regs`:
```
Thread 1 "run" received signal SIGSEGV, Segmentation fault.
nir_instr_prev (instr=0x1126298) at ../src/compiler/glsl/list.h:203
203 return n->prev == NULL;
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.38-16.fc39.x86_64 libX11-xcb-1.8.7-1.fc39.x86_64 libXau-1.0.11-3.fc39.x86_64 libdrm-2.4.120-1.fc39.x86_64 libedit-3.1-48.20230828cvs.fc39.x86_64 libepoxy-1.5.10-4.fc39.x86_64 libffi-3.4.4-4.fc39.x86_64 libgomp-13.2.1-7.fc39.x86_64 libstdc++-13.2.1-7.fc39.x86_64 libwayland-client-1.22.0-2.fc39.x86_64 libwayland-server-1.22.0-2.fc39.x86_64 libxcb-1.13.1-12.fc39.x86_64 libxshmfence-1.3-13.fc39.x86_64 llvm-libs-17.0.6-3.fc39.x86_64 ncurses-libs-6.4-7.20230520.fc39.1.x86_64
(gdb) bt
#0 nir_instr_prev (instr=0x1126298) at ../src/compiler/glsl/list.h:203
#1 reduce_cursor (cursor=...) at ../src/compiler/nir/nir.c:997
#2 0x00007ffff6d05e45 in nir_cursors_equal (a=..., b=...) at ../src/compiler/nir/nir.c:1027
#3 0x00007ffff6d0ac36 in nir_builder_instr_insert_at_top (build=build@entry=0x7fffffffb190, instr=instr@entry=0xffbec8) at ../src/compiler/nir/nir_builder.c:387
#4 0x00007ffff704084f in nir_decl_reg (num_array_elems=0, bit_size=32, num_components=4, b=0x7fffffffb190) at ../src/compiler/nir/nir_builder.h:1834
#5 lower (b=b@entry=0x7fffffffb190, instr=instr@entry=0x1126dd8, data_=data_@entry=0x7fffffffb180) at ../src/compiler/nir/nir_lower_vec_to_regs.c:216
#6 0x00007ffff7041598 in lower (data_=0x7fffffffb180, instr=0x1126dd8, b=0x7fffffffb190) at ../src/compiler/nir/nir_lower_vec_to_regs.c:198
#7 nir_function_instructions_pass (pass=<optimized out>, preserved=3, cb_data=0x7fffffffb180, impl=0xfe1760) at ../src/compiler/nir/nir_builder.h:103
#8 nir_shader_instructions_pass (shader=0xfe1760, pass=<optimized out>, preserved=3, cb_data=0x7fffffffb180) at ../src/compiler/nir/nir_builder.h:135
#9 nir_lower_vec_to_regs (shader=shader@entry=0x4785c0, cb=cb@entry=0x0, _data=_data@entry=0x0) at ../src/compiler/nir/nir_lower_vec_to_regs.c:259
#10 0x00007ffff6ffb50b in nir_to_rc_options (s=<optimized out>, screen=0x475bb0, options=0x7ffff7501028 <hwtcl_r500_options>) at ../src/gallium/drivers/r300/compiler/nir_to_rc.c:2458
#11 0x00007ffff6fe744e in r300_create_vs_state (pipe=0x728980, shader=0x7fffffffb550) at ../src/gallium/drivers/r300/r300_state.c:1962
#12 0x00007ffff694dec9 in st_create_common_variant (st=st@entry=0x7ef1f0, prog=prog@entry=0xf79e50, key=key@entry=0x7fffffffb830) at ../src/mesa/state_tracker/st_program.c:781
#13 0x00007ffff695109b in st_get_common_variant (st=st@entry=0x7ef1f0, prog=prog@entry=0xf79e50, key=key@entry=0x7fffffffb830) at ../src/mesa/state_tracker/st_program.c:834
#14 0x00007ffff6951601 in st_precompile_shader_variant (prog=0xf79e50, st=0x7ef1f0) at ../src/mesa/state_tracker/st_program.c:1320
#15 st_finalize_program (st=0x7ef1f0, prog=0xf79e50) at ../src/mesa/state_tracker/st_program.c:1421
#16 0x00007ffff6bdc39f in st_link_glsl_to_nir (shader_program=0x4172e0, ctx=0x7ef1f0) at ../src/mesa/state_tracker/st_glsl_to_nir.cpp:753
#17 st_link_shader (ctx=ctx@entry=0x7fffef0a9010, prog=prog@entry=0x4172e0) at ../src/mesa/state_tracker/st_glsl_to_nir.cpp:989
#18 0x00007ffff6b8a29b in link_program (no_error=<optimized out>, shProg=<optimized out>, ctx=<optimized out>) at ../src/mesa/main/shaderapi.c:1336
#19 link_program_error (ctx=0x7fffef0a9010, shProg=0x4172e0) at ../src/mesa/main/shaderapi.c:1445
#20 0x0000000000403e7c in main._omp_fn.0 () at run.c:846
#21 0x00007ffff7e0a286 in GOMP_parallel () from /lib64/libgomp.so.1
#22 0x000000000040298d in main (argc=<optimized out>, argv=<optimized out>) at run.c:672
```
This is how NIR looks just before:
```
nir_convert_from_ssa
shader: MESA_SHADER_VERTEX
source_sha1: {0x29b48658, 0xf5a27373, 0xd6272160, 0x1889e085, 0x00d29486}
name: GLSL1
label: shaders/gnome-shell-42/138.shader_test
internal: false
stage: 0
next_stage: 4
num_ubos: 1
inputs_read: 15-16
outputs_written: 0,32-38
subgroup_size: 1
bit_sizes_float: 0x20
bit_sizes_int: 0x21
first_ubo_is_default_ubo: true
flrp_lowered: true
inputs: 2
outputs: 8
uniforms: 14
decl_var shader_in INTERP_MODE_NONE none vec2 aPosition (VERT_ATTRIB_GENERIC0.xy, 0, 0)
decl_var shader_in INTERP_MODE_NONE none vec4 aColor (VERT_ATTRIB_GENERIC1.xyzw, 1, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 gl_Position (VARYING_SLOT_POS.xyzw, 0, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 final_color (VARYING_SLOT_VAR0.xyzw, 1, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_outside_outline (VARYING_SLOT_VAR1.xyzw, 2, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_outside_outline#0 (VARYING_SLOT_VAR2.xyzw, 3, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_outside_outline#1 (VARYING_SLOT_VAR3.xyzw, 4, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_inside_outline (VARYING_SLOT_VAR4.xyzw, 5, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_inside_outline#2 (VARYING_SLOT_VAR5.xyzw, 6, 0)
decl_var shader_out INTERP_MODE_NONE none vec4 transformed_inside_outline#3 (VARYING_SLOT_VAR6.xyzw, 7, 0)
decl_var ubo INTERP_MODE_NONE none vec4[14] uniform_0 (0, 0, 0)
decl_function main (0 params)
impl main {
con block b0: // preds:
32 %0 = load_const (0x00000000)
32x4 %5 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=7, component=0)
32x2 %1 = @load_input (%0 (0x0)) (base=0, range=1, component=0, dest_type=float32, io location=VERT_ATTRIB_GENERIC0 slots=1) // aPosition
32x4 %3 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=4, component=0)
32x4 %6 = ffma %3, %1.xxxx, %5
32x4 %4 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=5, component=0)
32x4 %7 = ffma %4, %1.yyyy, %6
32x4 %9 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=1, component=0)
32x4 %10 = fmul %9, %7.yyyy
32x4 %8 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=0, component=0)
32x4 %11 = ffma %8, %7.xxxx, %10
32x4 %12 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=2, component=0)
32x4 %13 = ffma %12, %7.zzzz, %11
32x4 %14 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=3, component=0)
32x4 %15 = ffma %14, %7.wwww, %13
32x4 %2 = @load_input (%0 (0x0)) (base=1, range=1, component=0, dest_type=float32, io location=VERT_ATTRIB_GENERIC1 slots=1) // aColor
32x3 %16 = fmul %2.xyz, %2.www
32 %18 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=8, component=0)
32x4 %17 = vec4 %16.x, %16.y, %16.z, %2.w
32x4 %19 = fmul %17, %18.xxxx
32x4 %22 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=11, component=0)
32x2 %23 = fadd %22.xy, %22.zw
32x4 %24 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=12, component=0)
32x2 %25 = fadd %22.xy, %24.xy
32x2 %26 = vec2 %23.x, %22.y
32x2 %20 = load_const (0xbf800000, 0x3f800000) = (-1.000000, 1.000000)
32x2 %27 = ffma %24.zw, %20 (-1.000000, 1.000000), %26
32x4 %28 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=13, component=0)
32x2 %29 = fneg %28.xy
32x2 %30 = fabs %28.xy
32x2 %31 = fadd %23, %29
32x2 %32 = vec2 %22.x, %23.y
32x2 %21 = load_const (0x3f800000, 0xbf800000) = (1.000000, -1.000000)
32x2 %33 = ffma %28.zw, %21 (1.000000, -1.000000), %32
32 %34 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=9, component=0)
32x4 %36 = fneg %34.xxxx
32x4 %35 = vec4 %32.x, %26.y, %26.x, %32.y
32x4 %37 = ffma %36, %21 (1.000000, -1.000000).xxyy, %35
32x2 %40 = fabs %24.xy
32 %41 = fneg %40.y
32 %42 = seq %40.x, %41
32x4 %38 = vec4 %25.x, %25.y, %27.x, %27.y
32x4 %107 = fneg %38
32x4 %84 = mov %42.xxxx
32x4 %108 = ffma %107, %84, %38
32x4 %43 = vec4 %37.x, %37.y, %38.z, %38.w
32x4 %109 = ffma %43, %84, %108
32x2 %110 = seq %43.zw, %35.zy
32 %47 = fmul %110.x, %110.y
32x4 %87 = mov %47.xxxx
32x4 %88 = fneg %87
32 %86 = load_const (0x00000000 = 0.000000)
32x4 %89 = slt %88, %86 (0.000000).xxxx
32x4 %104 = fneg %109
32x4 %105 = ffma %104, %89, %109
32x4 %48 = vec4 %109.x, %109.y, %37.z, %43.y
32x4 %106 = ffma %48, %89, %105
32 %50 = fneg %30.y
32 %51 = seq %30.x, %50
32x4 %39 = vec4 %31.x, %31.y, %33.x, %33.y
32x4 %101 = fneg %39
32x4 %91 = mov %51.xxxx
32x4 %102 = ffma %101, %91, %39
32x4 %52 = vec4 %48.z, %37.w, %39.z, %39.w
32x4 %103 = ffma %52, %91, %102
32x2 %111 = seq %52.zw, %35.xw
32 %56 = fmul %111.x, %111.y
32x4 %94 = mov %56.xxxx
32x4 %95 = fneg %94
32 %93 = load_const (0x00000000 = 0.000000)
32x4 %96 = slt %95, %93 (0.000000).xxxx
32x4 %98 = fneg %103
32x4 %99 = ffma %98, %96, %103
32x4 %57 = vec4 %103.x, %103.y, %43.x, %52.y
32x4 %100 = ffma %57, %96, %99
32x2 %59 = @load_ubo_vec4 (%0 (0x0), %0 (0x0)) (access=speculatable, base=10, component=0)
32x4 %60 = fadd %37, %59.xyxy
32x4 %61 = fadd %106, %59.xyxy
32x4 %62 = fadd %100, %59.xyxy
32x4 %63 = ffma %3.xyxy, %60.xxzz, %5.xyxy
32x4 %64 = ffma %4.xyxy, %60.yyww, %63
32x4 %65 = ffma %3.xyxy, %61.xxzz, %5.xyxy
32x4 %66 = ffma %4.xyxy, %61.yyww, %65
32x4 %67 = ffma %3.xyxy, %62.xxzz, %5.xyxy
32x4 %68 = ffma %4.xyxy, %62.yyww, %67
32x4 %112 = ffma %3.xyxy, %35.xxzz, %5.xyxy
32x4 %113 = ffma %4.xyxy, %35.yyww, %112
32x2 %73 = ffma %3.xy, %38.xx, %5.xy
32x2 %74 = ffma %4.xy, %38.yy, %73
32x2 %75 = ffma %3.xy, %43.zz, %5.xy
32x2 %76 = ffma %4.xy, %43.ww, %75
32x2 %77 = ffma %3.xy, %39.xx, %5.xy
32x2 %78 = ffma %4.xy, %39.yy, %77
32x2 %79 = ffma %3.xy, %52.zz, %5.xy
32x2 %80 = ffma %4.xy, %52.ww, %79
@store_output (%15, %0 (0x0)) (base=0, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_POS slots=1, xfb(), xfb2()) // gl_Position
@store_output (%19, %0 (0x0)) (base=1, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR0 slots=1, xfb(), xfb2()) // final_color
@store_output (%64, %0 (0x0)) (base=2, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR1 slots=1, xfb(), xfb2()) // transformed_outside_outline
@store_output (%66, %0 (0x0)) (base=3, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR2 slots=1, xfb(), xfb2()) // transformed_outside_outline
@store_output (%68, %0 (0x0)) (base=4, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR3 slots=1, xfb(), xfb2()) // transformed_outside_outline
32x4 %81 = vec4 %113.x, %113.y, %113.z, %113.w
@store_output (%81, %0 (0x0)) (base=5, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR4 slots=1, xfb(), xfb2()) // transformed_inside_outline
32x4 %82 = vec4 %74.x, %74.y, %76.x, %76.y
@store_output (%82, %0 (0x0)) (base=6, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR5 slots=1, xfb(), xfb2()) // transformed_inside_outline
32x4 %83 = vec4 %78.x, %78.y, %80.x, %80.y
@store_output (%83, %0 (0x0)) (base=7, range=1, wrmask=xyzw, component=0, src_type=float32, io location=VARYING_SLOT_VAR6 slots=1, xfb(), xfb2()) // transformed_inside_outline
// succs: b1
block b1:
}
```
CC @gfxstrand @alyssa I probably need to fix something in the r300 backend, but I thought I would ask first if you have any ideas as this might be obvious to you what goes wrong, before I start digging.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10881r600: bisected 5eb0136a3c561 breaks a number of piglits2024-03-28T20:19:00ZGert Wollnyr600: bisected 5eb0136a3c561 breaks a number of piglitsWith 5eb0136a3c561e25d3f274e33a86812cfb2af589 (mesa/st: when creating draw shader variants, use the base nir and skip driver opts) number of piglits regress on r600:
```
spec@!opengl 1.0@gl-1.0-rendermode-feedback
spec@!opengl 1.1@gl_...With 5eb0136a3c561e25d3f274e33a86812cfb2af589 (mesa/st: when creating draw shader variants, use the base nir and skip driver opts) number of piglits regress on r600:
```
spec@!opengl 1.0@gl-1.0-rendermode-feedback
spec@!opengl 1.1@gl_select - alpha-test enabled
spec@!opengl 1.1@gl_select - depth-test enabled
spec@!opengl 1.1@gl_select - no test function
spec@!opengl 1.1@gl_select - scissor-test enabled
spec@!opengl 1.1@gl_select - stencil-test enabled
```
The issue seems to be with using the *base nir*, i.e. applying
```patch
diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
index 99fba22d69e..d774da057f6 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -646,14 +646,12 @@ get_nir_shader(struct st_context *st, struct gl_program *prog, bool is_draw)
const struct nir_shader_compiler_options *options =
is_draw ? &draw_nir_options : st_get_nir_compiler_options(st, prog->info.stage);
- if (is_draw) {
- assert(prog->base_serialized_nir);
- blob_reader_init(&blob_reader, prog->base_serialized_nir, prog->base_serialized_nir_size);
- } else {
- assert(prog->serialized_nir);
- blob_reader_init(&blob_reader, prog->serialized_nir, prog->serialized_nir_size);
- }
- return nir_deserialize(NULL, options, &blob_reader);
+ assert(prog->serialized_nir);
+ blob_reader_init(&blob_reader, prog->serialized_nir, prog->serialized_nir_size);
```
fixes the issue.
The difference in the draw shaders at the entry point of `draw_create_vs_llvm` looks like this:
```diff
decl_var shader_out INTERP_MODE_SMOOTH none vec4 VARYING_SLOT_POS (VARYING_SLOT_POS.xyzw, 0, 0)
decl_var shader_out INTERP_MODE_SMOOTH none vec4 VARYING_SLOT_COL0 (VARYING_SLOT_COL0.xyzw, 1, 0)
decl_var shader_out INTERP_MODE_SMOOTH none vec4 VARYING_SLOT_TEX0 (VARYING_SLOT_TEX0.xyzw, 2, 0)
-decl_var ubo INTERP_MODE_NONE none vec4[4] uniform_0 (0, 0, 0)
+decl_var ubo INTERP_MODE_NONE none vec4[8] uniform_0 (0, 0, 0)
decl_function main (0 params)
impl main {
con block b0: // preds:
- 32 %0 = load_const (0x00000000)
- 32x4 %1 = @load_ubo (%0 (0x0), %0 (0x0)) (access=none, align_mul=1073741824, align_offset=0, range_base=0, range=16)
- 32 %2 = load_const (0x00000010 = 16)
- 32x4 %3 = @load_ubo (%0 (0x0), %2 (0x10)) (access=none, align_mul=1073741824, align_offset=16, range_base=16, range=16)
- 32 %4 = load_const (0x00000020 = 32)
- 32x4 %5 = @load_ubo (%0 (0x0), %4 (0x20)) (access=none, align_mul=1073741824, align_offset=32, range_base=32, range=16)
- 32 %6 = load_const (0x00000030 = 48)
- 32x4 %7 = @load_ubo (%0 (0x0), %6 (0x30)) (access=none, align_mul=1073741824, align_offset=48, range_base=48, range=16)
+ 32 %0 = deref_var &state.matrix.mvp.transpose.row[0] (uniform vec4)
+ 32 %46 = load_const (0x00000000)
+ 32 %54 = load_const (0x00000000 = 0.000000)
+ 32 %55 = load_const (0x00000004)
+ 32 %56 = ishl %46 (0x0), %55 (0x4)
+ 32 %57 = load_const (0x00000010 = 16)
+ 32 %58 = iadd %56, %57 (0x10)
+ 32x4 %59 = @load_ubo (%54 (0x0), %58) (access=none, align_mul=1073741824, align_offset=16, range_base=16, range=16)
+ 32 %2 = deref_var &state.matrix.mvp.transpose.row[1] (uniform vec4)
+ 32 %48 = load_const (0x00000000)
+ 32 %60 = load_const (0x00000000 = 0.000000)
+ 32 %61 = load_const (0x00000004)
+ 32 %62 = ishl %48 (0x0), %61 (0x4)
+ 32 %63 = load_const (0x00000020 = 32)
+ 32 %64 = iadd %62, %63 (0x20)
+ 32x4 %65 = @load_ubo (%60 (0x0), %64) (access=none, align_mul=1073741824, align_offset=32, range_base=32, range=16)
+ 32 %4 = deref_var &state.matrix.mvp.transpose.row[2] (uniform vec4)
+ 32 %50 = load_const (0x00000000)
+ 32 %66 = load_const (0x00000000 = 0.000000)
+ 32 %67 = load_const (0x00000004)
+ 32 %68 = ishl %50 (0x0), %67 (0x4)
+ 32 %69 = load_const (0x00000030 = 48)
+ 32 %70 = iadd %68, %69 (0x30)
+ 32x4 %71 = @load_ubo (%66 (0x0), %70) (access=none, align_mul=1073741824, align_offset=48, range_base=48, range=16)
+ 32 %6 = deref_var &state.matrix.mvp.transpose.row[3] (uniform vec4)
+ 32 %52 = load_const (0x00000000)
+ 32 %72 = load_const (0x00000000 = 0.000000)
+ 32 %73 = load_const (0x00000004)
+ 32 %74 = ishl %52 (0x0), %73 (0x4)
+ 32 %75 = load_const (0x00000040 = 64)
+ 32 %76 = iadd %74, %75 (0x40)
+ 32x4 %77 = @load_ubo (%72 (0x0), %76) (access=none, align_mul=1073741824, align_offset=64, range_base=64, range=16)
32 %8 = deref_var &VERT_ATTRIB_POS (shader_in vec4)
32x4 %9 = @load_deref (%8) (access=none)
- 32 %10 = fmul %1.x, %9.x
- 32 %11 = fmul %1.y, %9.x
- 32 %12 = fmul %1.z, %9.x
- 32 %13 = fmul %1.w, %9.x
- 32 %14 = fmul %3.x, %9.y
- 32 %15 = fmul %3.y, %9.y
- 32 %16 = fmul %3.z, %9.y
- 32 %17 = fmul %3.w, %9.y
+ 32 %10 = fmul %59.x, %9.x
+ 32 %11 = fmul %59.y, %9.x
+ 32 %12 = fmul %59.z, %9.x
+ 32 %13 = fmul %59.w, %9.x
+ 32 %14 = fmul %65.x, %9.y
+ 32 %15 = fmul %65.y, %9.y
+ 32 %16 = fmul %65.z, %9.y
+ 32 %17 = fmul %65.w, %9.y
32 %18 = fadd %14, %10
32 %19 = fadd %15, %11
32 %20 = fadd %16, %12
32 %21 = fadd %17, %13
- 32 %22 = fmul %5.x, %9.z
- 32 %23 = fmul %5.y, %9.z
- 32 %24 = fmul %5.z, %9.z
- 32 %25 = fmul %5.w, %9.z
+ 32 %22 = fmul %71.x, %9.z
+ 32 %23 = fmul %71.y, %9.z
+ 32 %24 = fmul %71.z, %9.z
+ 32 %25 = fmul %71.w, %9.z
32 %26 = fadd %22, %18
32 %27 = fadd %23, %19
32 %28 = fadd %24, %20
32 %29 = fadd %25, %21
- 32 %30 = fmul %7.x, %9.w
- 32 %31 = fmul %7.y, %9.w
- 32 %32 = fmul %7.z, %9.w
- 32 %33 = fmul %7.w, %9.w
+ 32 %30 = fmul %77.x, %9.w
+ 32 %31 = fmul %77.y, %9.w
+ 32 %32 = fmul %77.z, %9.w
+ 32 %33 = fmul %77.w, %9.w
32 %34 = fadd %30, %26
32 %35 = fadd %31, %27
32 %36 = fadd %32, %28
```Mike BlumenkrantzMike Blumenkrantzhttps://gitlab.freedesktop.org/mesa/mesa/-/issues/10863mesa 24 intel A770 KOTOR black shadow smoke scenes2024-03-22T10:01:08Zzlicemesa 24 intel A770 KOTOR black shadow smoke scenes### system info
* mesa 24.0.x
* kernel 6.7 or 6.8
* wine 9.4
* dxvk 2.3.1
* A770 dg2
### issue
KOTOR (star wars) new game has black scenes at certain camera views that only have smoke and spark effects in mesa 24.0.x. This does not ha...### system info
* mesa 24.0.x
* kernel 6.7 or 6.8
* wine 9.4
* dxvk 2.3.1
* A770 dg2
### issue
KOTOR (star wars) new game has black scenes at certain camera views that only have smoke and spark effects in mesa 24.0.x. This does not happen in 23.3.5 and does not happen in 24.0.x on AMD 5700.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10838Regression from Mesa 23.3.4 to 24.x affecting Xemu emulator on AMD GPUs2024-03-27T14:14:31Zcjames11Regression from Mesa 23.3.4 to 24.x affecting Xemu emulator on AMD GPUsHello,
I am experiencing an issue with the Xemu emulator on systems using AMD GPUs, which appears to be related to a regression between Mesa versions 23.3.4 and 24.x. This issue has been identified while using Batocera and confirmed wit...Hello,
I am experiencing an issue with the Xemu emulator on systems using AMD GPUs, which appears to be related to a regression between Mesa versions 23.3.4 and 24.x. This issue has been identified while using Batocera and confirmed with Manjaro Linux for additional testing clarity.
Environment:
Operating System: Manjaro Linux (also observed on Batocera Linux v39 and v40)
Mesa Versions Affected: 24.x series
GPUs Tested: AMD Radeon RX550, Ryzen iGPUs (e.g., Ryzen 5560U, Ryzen 7 5800H)
Symptoms: Launching any Xbox game via the Xemu emulator leads to the game freezing or crashing back to the emulator's GUI after the initial splash screens. Audio may cut out, and the system can experience brief flashes before the crash.
Steps to Reproduce:
Install Manjaro Linux on a system with an affected AMD GPU.
Update all system packages to ensure the latest Mesa drivers (24.x) are installed.
Install the Xemu emulator via the package manager.
Attempt to launch any Xbox game through Xemu.
Expected Behaviour:
Games should launch and run as expected without crashing, similar to the behaviour observed with Mesa version 23.3.4 used in Batocera Linux v38.
Actual Behaviour:
Games either freeze during the initial loading phase or crash back to the emulator's GUI, indicating a failure in the graphical processing that was not present in Mesa 23.3.4.
Additional Information:
This issue was not present in Batocera Linux v38, which uses Mesa 23.3.4, but appears in v39 and v40, aligning with the update to Mesa 24.x.
A direct comparison using Batocera Linux on identical hardware but different Mesa versions isolates the regression to the Mesa driver update.
Testing on different hardware and with different AMD GPUs (both iGPUs and discrete GPUs like the AMD RX550) consistently reproduces the issue under Mesa 24.x.
I kindly request assistance in identifying and resolving this regression, as it significantly impacts the usability of emulation software reliant on Mesa for AMD GPU users. Thank you for your attention to this matter.
More info here: https://github.com/batocera-linux/batocera.linux/issues/11167https://gitlab.freedesktop.org/mesa/mesa/-/issues/10829[bisected][regression] kitty fails to start due to `glfwWindowHint(GLFW_SRGB_...2024-03-15T20:35:40ZPatrik Plihal[bisected][regression] kitty fails to start due to `glfwWindowHint(GLFW_SRGB_CAPABLE,true)`since mesa 6a084e2b081882ff027e426e8faddbe1f5497614 the terminal app [kitty](https://github.com/kovidgoyal/kitty) 0.32.2 (or newer)
fails with
```
$ kitty
[075 21:17:57.069937] [glfw error 65544]: EGL: Failed to create window surface:...since mesa 6a084e2b081882ff027e426e8faddbe1f5497614 the terminal app [kitty](https://github.com/kovidgoyal/kitty) 0.32.2 (or newer)
fails with
```
$ kitty
[075 21:17:57.069937] [glfw error 65544]: EGL: Failed to create window surface: Arguments are inconsistent
[075 21:17:57.075025] Traceback (most recent call last):
File "/usr/bin/../lib/kitty/kitty/main.py", line 561, in main
_main()
File "/usr/bin/../lib/kitty/kitty/main.py", line 553, in _main
run_app(opts, cli_opts, bad_lines)
File "/usr/bin/../lib/kitty/kitty/main.py", line 296, in __call__
_run_app(opts, args, bad_lines)
File "/usr/bin/../lib/kitty/kitty/main.py", line 268, in _run_app
window_id = create_os_window(
^^^^^^^^^^^^^^^^^
ValueError: Failed to create GLFWwindow
```
as mentioned in [kitty/issues/7174](https://github.com/kovidgoyal/kitty/issues/7174)
workarounds: launching with `KITTY_DISABLE_WAYLAND=1 kitty` or
compiling kitty without line 1080 in [kitty/glfw.c](https://github.com/kovidgoyal/kitty/blob/master/kitty/glfw.c#L1080)
```
if (!global_state.is_wayland || !is_nvidia_gpu_driver()) glfwWindowHint(GLFW_SRGB_CAPABLE, true);
```
---
sysinfo:
```
System:
Host: blackbox Kernel: 6.7.9-arch1-1 arch: x86_64 bits: 64 compiler: gcc
v: 13.2.1
Desktop: Sway v: 1.9 lm: greetd Distro: Arch Linux
CPU:
Info: 8-core model: AMD Ryzen 7 5700X bits: 64 type: MT MCP arch: Zen 3+
rev: 2 cache: L1: 512 KiB L2: 4 MiB L3: 32 MiB
Speed (MHz): avg: 1254 high: 4663 min/max: 550/4663 boost: enabled cores:
1: 4663 2: 550 3: 550 4: 550 5: 550 6: 4663 7: 550 8: 550 9: 550 10: 550
11: 550 12: 550 13: 550 14: 3600 15: 550 16: 550 bogomips: 108836
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3
Graphics:
Device-1: AMD Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]
vendor: Tul / PowerColor AXRX driver: amdgpu v: kernel arch: RDNA-1 pcie:
speed: 16 GT/s lanes: 16 ports: active: DP-1 empty: DP-2,DP-3,HDMI-A-1
bus-ID: 0b:00.0 chip-ID: 1002:731f
Display: wayland server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4
compositor: Sway v: 1.9 driver: gpu: amdgpu display-ID: 1
Monitor-1: DP-1 model: Dell UP2516D res: 2560x1440 dpi: 118
diag: 634mm (25")
API: EGL v: 1.5 platforms: device: 0 drv: radeonsi device: 1 drv: swrast
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
inactive: gbm
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd v: N/A glx-v: 1.4
direct-render: yes renderer: AMD Radeon RX 5700 XT (radeonsi navi10 LLVM
17.0.6 DRM 3.57 6.7.9-arch1-1) device-ID: 1002:731f
API: Vulkan v: 1.3.279 surfaces: xcb,xlib,wayland device: 0
type: discrete-gpu driver: mesa radv device-ID: 1002:731f
```https://gitlab.freedesktop.org/mesa/mesa/-/issues/10790Graphical glitches in RPCS3 after updating Vulkan Intel drivers2024-03-12T16:29:14ZSESDGraphical glitches in RPCS3 after updating Vulkan Intel drivers### System information
Please post `inxi -GSC -xx` output ([fenced with triple backticks](https://docs.gitlab.com/ee/user/markdown.html#code-spans-and-blocks)) OR fill information below manually
- OS: (`EndeavourOS')
- GPU: (`Intel Co...### System information
Please post `inxi -GSC -xx` output ([fenced with triple backticks](https://docs.gitlab.com/ee/user/markdown.html#code-spans-and-blocks)) OR fill information below manually
- OS: (`EndeavourOS')
- GPU: (`Intel Corporation DG2 [Arc A580] [8086:56a2] (rev 08)')
- Kernel version: ('6.7.8`)
- Mesa version: (`24.0.2"`)
- Xserver version (if applicable): (`1.21.1.11`)
- Desktop manager and compositor: KDE Plasma and Wayland
### Describe the issue
RPCS3 experiences significant graphical bugs on all titles I've tested
### Regression
I downgraded the vulkan-intel package to 23.3.5 and I experienced no graphical issues.
### Screenshots/video files (if applicable)
![image](/uploads/fc3847db4d57fc9c736a1929eaee6ac2/image.png)
![image](/uploads/0caab6223ea0f36c38e5f3e8963e26b8/image.png)
![image](/uploads/6983ab41b3bcc077aa62929688ba3a92/image.png)
### Any extra information would be greatly appreciated
I reported this to RPCS3 and they directed me here, https://github.com/RPCS3/rpcs3/issues/15302https://gitlab.freedesktop.org/mesa/mesa/-/issues/10788SDL 2 fails in Wayland mode: Failed to create temporary window: unable to cre...2024-03-15T20:47:25ZShmerlSDL 2 fails in Wayland mode: Failed to create temporary window: unable to create an EGL window surface (call to eglCreateWindowSurface failed, reporting an error of EGL_BAD_MATCH)When running dosbox-staging with SDL in Wayland mode (`export SDL_VIDEODRIVER='wayland'`), it fails with such error:
```
2024-03-10 14:05:19.619 | SDL: Failed to create window: unable to create an EGL window surface (call to eglCreateWi...When running dosbox-staging with SDL in Wayland mode (`export SDL_VIDEODRIVER='wayland'`), it fails with such error:
```
2024-03-10 14:05:19.619 | SDL: Failed to create window: unable to create an EGL window surface (call to eglCreateWindowSurface failed, reporting an error of EGL_BAD_MATCH)
2024-03-10 14:05:19.619 | OPENGL: Could not create OpenGL window, using 'texture' output mode
2024-03-10 14:05:19.631 | SDL: Failed to create temporary window: unable to create an EGL window surface (call to eglCreateWindowSurface failed, reporting an error of EGL_BAD_MATCH)
Stack trace:
6 0x4d54de _start + 46
5 0x7fd3c2366785 __libc_start_main + 133
4 0x7fd3c23666ca /lib/x86_64-linux-gnu/libc.so.6(+0x276ca) [0x7fd3c23666ca]
3 0x77b3b0 sdl_main(int, char**) + 5632
2 0x98a1a6 Config::Init() const + 214
1 0x77879e dosbox() [0x77879e]
0 0x776c81 dosbox() [0x776c81]
2024-03-10 14:05:19.631 | ABORT: SDL: Could not initialize video: unable to create an EGL window surface (call to eglCreateWindowSurface failed, reporting an error of EGL_BAD_MATCH)
```
It started happening only recently in Mesa-main:
```
OpenGL renderer string: AMD Radeon RX 7900 XTX (radeonsi, navi31, LLVM 17.0.6, DRM 3.57, 6.8.0-rc7-dirty)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 24.1.0-devel (git-cc74a819e4)
OpenGL core profile shading language version string: 4.60
OpenGL version string: 4.6 (Compatibility Profile) Mesa 24.1.0-devel (git-cc74a819e4)
OpenGL shading language version string: 4.60
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 24.1.0-devel (git-cc74a819e4)
```
It works fine for example with slightly earlier one (I'll try to find the exact offending change). I.e. for instance this one works fine (which is Mesa from around Feb 24, 2024.
```
OpenGL renderer string: AMD Radeon RX 7900 XTX (radeonsi, navi31, LLVM 19.0.0, DRM 3.57, 6.8.0-rc7-dirty)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 24.1.0-devel (git-423add61e2)
OpenGL core profile shading language version string: 4.60
OpenGL version string: 4.6 (Compatibility Profile) Mesa 24.1.0-devel (git-423add61e2)
OpenGL shading language version string: 4.60
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 24.1.0-devel (git-423add61e2)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
```
* SDL version: 2.30.0
* Dosbox Staging: 0.81.0
* KDE Plasma 5.27.10https://gitlab.freedesktop.org/mesa/mesa/-/issues/10765Primitive-ray intersector GLES shader regression in crostini Mesa 22.3.6 on v...2024-03-07T15:34:13ZMartin KrastevPrimitive-ray intersector GLES shader regression in crostini Mesa 22.3.6 on virgl device IMG GX6250### System information
Crostini guest on ChromeOS host Lenovo 300e Chromebook. Host GPU is IMG GX6250.
- OS:
```
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_CODENAME=bookworm
```
- GPU:
```
*-display ...### System information
Crostini guest on ChromeOS host Lenovo 300e Chromebook. Host GPU is IMG GX6250.
- OS:
```
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_CODENAME=bookworm
```
- GPU:
```
*-display
description: Display controller
product: Virtio 1.0 GPU [1AF4:1050]
vendor: Red Hat, Inc. [1AF4]
physical id: 2
bus info: pci@0000:00:02.0
version: 01
width: 64 bits
clock: 33MHz
capabilities: bus_master cap_list
configuration: driver=virtio-pci latency=0
resources: iomemory:40-3f irq:15 memory:2008000-200ffff memory:400000000-5ffffffff
```
- Kernel version:
```
Linux penguin 6.1.64-09049-g010fe86d9eae #1 SMP PREEMPT Thu, 1 Feb 2024 01:25:43 +0000 aarch64 GNU/Linux
```
- Mesa version:
```
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Mesa/X.org (0x1af4)
Device: virgl (PowerVR Rogue GX6250) (0x1010)
Version: 22.3.6
Accelerated: yes
Video memory: 0MB
Unified memory: no
Preferred profile: compat (0x2)
Max core profile version: 0.0
Max compat profile version: 2.1
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 2.0
OpenGL vendor string: Mesa/X.org
OpenGL renderer string: virgl (PowerVR Rogue GX6250)
OpenGL version string: 2.1 Mesa 22.3.6
OpenGL shading language version string: 1.20
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 22.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
```
- Desktop manager and compositor: crostini Chrome compositor (via Exosphere)
### Describe the issue
A popular raycasting shader producing intersections with parametric capsule primitives (ie. a tube section + sphere caps) glitches at the "tube" part of the test, resulting in always producing tube hits, thus not reaching the "sphere" part of the test. The end result is missing capsule caps, and wrong ray depth intersection (ray "t" param) all along the image space. Original shader by Inigo Quilez https://www.shadertoy.com/view/Xt3SzX
### Regression
The sample scene + shaders used to work on crostini Mesa 21.2.6, producing a continuous capsule "polyline" shape. On Mesa 22.3.6 "polyline" caps are missing, producing discontinuities, and ray "t" is wrong for the entire image.
### Screenshots/video files
[good screengrab; Mesa 21.2.6](https://ibb.co/VTBG1Bv)
[bad screengrab; Mesa 22.3.6](https://ibb.co/WHcLkwv)
Above from standalone repro case here: https://github.com/blu/hello-chromeos-gles2/blob/master/asset/shader/conic.glslf
(don't mind the shader name -- it's a capsule intersector, not a conic intersector)https://gitlab.freedesktop.org/mesa/mesa/-/issues/10761J3455 CPU (Intel HD 500 GPU) segfault in _mesa_update_shader_textures_used2024-03-28T17:15:42ZtlhonmeyJ3455 CPU (Intel HD 500 GPU) segfault in _mesa_update_shader_textures_used### System information
```System:
Host: REDACTED Kernel: 6.1.35-gentoo-x86_64 arch: x86_64 bits: 64
compiler: gcc v: 12.3.1 Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.38 wm: xfwm
dm: LXDM Distro: Gentoo Base System release 2.13
C...### System information
```System:
Host: REDACTED Kernel: 6.1.35-gentoo-x86_64 arch: x86_64 bits: 64
compiler: gcc v: 12.3.1 Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.38 wm: xfwm
dm: LXDM Distro: Gentoo Base System release 2.13
CPU:
Info: quad core model: Intel Celeron J3455 bits: 64 type: MCP arch: Goldmont
rev: A cache: L1: 224 KiB L2: 2 MiB
Speed (MHz): avg: 2248 high: 2300 min/max: 800/2300 cores: 1: 2300 2: 2197
3: 2196 4: 2300 bogomips: 11984
Flags: ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: Intel HD Graphics 500 driver: i915 v: kernel arch: Gen-9 ports:
active: DP-1,HDMI-A-1 empty: HDMI-A-2 bus-ID: 00:02.0 chip-ID: 8086:5a85
Display: server: X.org v: 1.21.1.11 compositor: xfwm v: 4.18.0 driver: X:
loaded: intel unloaded: fbdev,modesetting alternate: vesa dri: i965
gpu: i915 display-ID: :0 screens: 1
Screen-1: 0 s-res: 5120x2160
Monitor-1: DP-1 mapped: DP1 pos: primary,left model: ASUS VP28U
res: 3840x2160 dpi: 157 diag: 708mm (27.9")
Monitor-2: HDMI-A-1 mapped: HDMI1 pos: right model: Asus VB195
res: 1280x1024 dpi: 86 diag: 482mm (19")
API: OpenGL v: 4.6 Mesa 24.0.1 renderer: Mesa Intel HD Graphics 500 (APL
2) direct-render: Yes
```
### Describe the issue
Qt-based video application crashes in iris_dri.so on this system with latest Mesa.
Installing mesa-amber and setting MESA_LOADER_DRIVER_OVERRIDE=i915 avoids the crash, but performance is abysmal.
### Regression
Worked fine with mesa 21.3.7. Failed with 23.3.5 and 24.0.1. Can test with any additional versions that would be useful.
### Log files as attachment
Stack trace:
```#0 0x00007fc99256b561 in _mesa_update_shader_textures_used (shProg=0x7fc9057c8230, prog=0x7fc9057cc460) at ../mesa-24.0.1/src/mesa/main/uniforms.c:114
#1 0x00007fc99256a2f1 in _mesa_uniform (location=<optimized out>, count=1, values=0x7fc8f17f35ac, ctx=<optimized out>, shProg=0x7fc9057c8230, basicType=<optimized out>, src_components=1)
at ../mesa-24.0.1/src/mesa/main/uniform_query.cpp:1576
#2 0x00007fc99256bb2d in _mesa_Uniform1i (location=<optimized out>, v0=<optimized out>) at ../mesa-24.0.1/src/mesa/main/uniforms.c:231
#3 0x00000000004cfc19 in openeye::OpenglPlainFrameRenderer::draw(unsigned int, unsigned int, unsigned int, int, bool) ()
#4 0x00000000004d4cfc in openeye::OpenglRenderPane::render(bool) ()
#5 0x00000000004da9c0 in openeye::OpenglSurface::render() ()
#6 0x00000000004e3273 in openeye::QtNativeSurface::paint() ()
#7 0x00007fc997990ec0 in ?? () from /opt/nvr/qt5/lib/libQt6Core.so.6
#8 0x00007fc9992a362e in QSGBatchRenderer::Renderer::render() () from /opt/nvr/qt5/lib/libQt6Quick.so.6
#9 0x00007fc9992b9762 in QSGRenderer::renderScene() () from /opt/nvr/qt5/lib/libQt6Quick.so.6
#10 0x00007fc999266d65 in QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) () from /opt/nvr/qt5/lib/libQt6Quick.so.6
#11 0x00007fc9994128f6 in ?? () from /opt/nvr/qt5/lib/libQt6Quick.so.6
#12 0x00007fc999413b97 in ?? () from /opt/nvr/qt5/lib/libQt6Quick.so.6
#13 0x00007fc997ac1aaf in ?? () from /opt/nvr/qt5/lib/libQt6Core.so.6
#14 0x00007fc9972a37c4 in ?? () from /lib64/libc.so.6
#15 0x00007fc997325510 in ?? () from /lib64/libc.so.6
```
### Any extra information would be greatly appreciated
System is running Gentoo, so adjusting compile options and software versions for testing is trivial.
Can provide remote access to testing system as required.
Can test with whichever versions of software might be useful.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10758nvk: spec@arb_get_texture_sub_image@arb_get_texture_sub_image-get regression2024-03-05T17:53:59ZMike Blumenkrantznvk: spec@arb_get_texture_sub_image@arb_get_texture_sub_image-get regressionI had this as passing at some point within the past month, but I can't find the commit where it was working. I still think it's an nvk regression though.I had this as passing at some point within the past month, but I can't find the commit where it was working. I still think it's an nvk regression though.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10756LLVM ERROR: inconsistency in registered CommandLine options2024-03-25T02:31:42Z한국콩시LLVM ERROR: inconsistency in registered CommandLine options- OS: Debian GNU/Linux trixie/sid aarch64
- GPU: zink Vulkan 1.3(Turnip Adreno (TM) 750 (MESA_TURNIP)) (0x43051401)
- Kernel version: 6.1.25
I'm getting build failures with the latest mesa-main sources.
The build progress is as follo...- OS: Debian GNU/Linux trixie/sid aarch64
- GPU: zink Vulkan 1.3(Turnip Adreno (TM) 750 (MESA_TURNIP)) (0x43051401)
- Kernel version: 6.1.25
I'm getting build failures with the latest mesa-main sources.
The build progress is as follows.
```
$ wget https://gitlab.freedesktop.org/mesa/mesa/-/archive/main/mesa-main.tar.gz
$ tar -xf mesa-main.tar.gz
$ cd mesa-main
$ meson build -Dgbm=enabled -Dopengl=true -Degl=enabled -Degl-native-platform=x11 -Dgles1=disabled -Dgles2=enabled -Ddri3=enabled -Dglx=dri -Dllvm=enabled -Dshared-llvm=disabled -Dplatforms=x11,wayland -Dgallium-drivers=swrast,virgl,zink -Dosmesa=true -Dglvnd=true -Dxmlconfig=disabled
$ ninja -C build install
```
And the build fails with the following situation:
```c
ninja: Entering directory `build'
[1459/1692] Generating src/intel/shade... command (wrapped by meson to set env)
FAILED: src/intel/shaders/intel_gfx8_shaders_code.h
env MESA_SHADER_CACHE_DISABLE=true /home/hsm/mesa-main/build/src/intel/compiler/intel_clc --llvm17-wa --nir --gfx-version=8 --prefix gfx8_intel_shaders --in ../src/intel/shaders/libintel_shaders.h --in ../src/intel/shaders/generate.cl --in ../src/intel/shaders/generate_draws.cl --in ../src/intel/shaders/generate_draws_iris.cl --in ../src/intel/shaders/memcpy.cl --in ../src/intel/shaders/query_copy.cl -o src/intel/shaders/intel_gfx8_shaders_code.h -- -cl-std=cl2.0 -D__OPENCL_VERSION__=200 -DGFX_VERx10=80 -I/home/hsm/mesa-main/src/intel/shaders/. -I/home/hsm/mesa-main/src -I/home/hsm/mesa-main/src/intel -I/home/hsm/mesa-main/build/src/intel -I/home/hsm/mesa-main/src/intel/genxml
: CommandLine Error: Option 'm68k-register-prefix-optional' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
Aborted
[1460/1692] Generating src/intel/shade... command (wrapped by meson to set env)
FAILED: src/intel/shaders/intel_gfx9_shaders_code.h
env MESA_SHADER_CACHE_DISABLE=true /home/hsm/mesa-main/build/src/intel/compiler/intel_clc --llvm17-wa --nir --gfx-version=9 --prefix gfx9_intel_shaders --in ../src/intel/shaders/libintel_shaders.h --in ../src/intel/shaders/generate.cl --in ../src/intel/shaders/generate_draws.cl --in ../src/intel/shaders/generate_draws_iris.cl --in ../src/intel/shaders/memcpy.cl --in ../src/intel/shaders/query_copy.cl -o src/intel/shaders/intel_gfx9_shaders_code.h -- -cl-std=cl2.0 -D__OPENCL_VERSION__=200 -DGFX_VERx10=90 -I/home/hsm/mesa-main/src/intel/shaders/. -I/home/hsm/mesa-main/src -I/home/hsm/mesa-main/src/intel -I/home/hsm/mesa-main/build/src/intel -I/home/hsm/mesa-main/src/intel/genxml
: CommandLine Error: Option 'm68k-register-prefix-optional' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
Aborted
[1461/1692] Generating src/intel/shade... command (wrapped by meson to set env)
FAILED: src/intel/shaders/intel_gfx11_shaders_code.h
env MESA_SHADER_CACHE_DISABLE=true /home/hsm/mesa-main/build/src/intel/compiler/intel_clc --llvm17-wa --nir --gfx-version=11 --prefix gfx11_intel_shaders --in ../src/intel/shaders/libintel_shaders.h --in ../src/intel/shaders/generate.cl --in ../src/intel/shaders/generate_draws.cl --in ../src/intel/shaders/generate_draws_iris.cl --in ../src/intel/shaders/memcpy.cl --in ../src/intel/shaders/query_copy.cl -o src/intel/shaders/intel_gfx11_shaders_code.h -- -cl-std=cl2.0 -D__OPENCL_VERSION__=200 -DGFX_VERx10=110 -I/home/hsm/mesa-main/src/intel/shaders/. -I/home/hsm/mesa-main/src -I/home/hsm/mesa-main/src/intel -I/home/hsm/mesa-main/build/src/intel -I/home/hsm/mesa-main/src/intel/genxml
: CommandLine Error: Option 'm68k-register-prefix-optional' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
Aborted
[1462/1692] Generating src/intel/shade... command (wrapped by meson to set env)
FAILED: src/intel/shaders/intel_gfx12_shaders_code.h
env MESA_SHADER_CACHE_DISABLE=true /home/hsm/mesa-main/build/src/intel/compiler/intel_clc --llvm17-wa --nir --gfx-version=12 --prefix gfx12_intel_shaders --in ../src/intel/shaders/libintel_shaders.h --in ../src/intel/shaders/generate.cl --in ../src/intel/shaders/generate_draws.cl --in ../src/intel/shaders/generate_draws_iris.cl --in ../src/intel/shaders/memcpy.cl --in ../src/intel/shaders/query_copy.cl -o src/intel/shaders/intel_gfx12_shaders_code.h -- -cl-std=cl2.0 -D__OPENCL_VERSION__=200 -DGFX_VERx10=120 -I/home/hsm/mesa-main/src/intel/shaders/. -I/home/hsm/mesa-main/src -I/home/hsm/mesa-main/src/intel -I/home/hsm/mesa-main/build/src/intel -I/home/hsm/mesa-main/src/intel/genxml
: CommandLine Error: Option 'm68k-register-prefix-optional' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options
Aborted
[1468/1692] Linking target src/gallium/targets/dri/libgallium_dri.so
ninja: build stopped: subcommand failed.
```
The build went well based on the mesa-mian branch committed two weeks ago,
but the above problem is occurring starting with the latest source.
Why is this happening?https://gitlab.freedesktop.org/mesa/mesa/-/issues/10747[bisected][regression][zink][gen9] piglit failures on gen9 intel chips.2024-03-08T17:28:45Zngcortes[bisected][regression][zink][gen9] piglit failures on gen9 intel chips.Looks like these failures began after !27867 got merged.
You can review the failures here: https://mesa-ci.01.org/gl_main/builds/5609/group/63a9f0ea7bb98050796b649e85481845
stderr seems to mention an unsupported format:
```
...
MESA: ...Looks like these failures began after !27867 got merged.
You can review the failures here: https://mesa-ci.01.org/gl_main/builds/5609/group/63a9f0ea7bb98050796b649e85481845
stderr seems to mention an unsupported format:
```
...
MESA: error: zink: refusing to create possibly-srgb dmabuf due to missing driver support: PIPE_FORMAT_B8G8R8X8_SRGB not supported!
...
```ngcortesngcorteshttps://gitlab.freedesktop.org/mesa/mesa/-/issues/10698[TGL] 7% perf drop in GfxBench Manhattan 3.12024-03-08T11:13:55ZEero Tamminen[TGL] 7% perf drop in GfxBench Manhattan 3.1### Describe the issue
7% drop in GfxBench Manhattan 3.1 benchmark, on TGL, between following Mesa commits:
* 2024-02-20 15:47:45 UTC 1e849b12f5: vk/wsi/x11/sw: use swapchain depth for putimage
* 2024-02-21 17:02:04 UTC cfc8cf198c: inte...### Describe the issue
7% drop in GfxBench Manhattan 3.1 benchmark, on TGL, between following Mesa commits:
* 2024-02-20 15:47:45 UTC 1e849b12f5: vk/wsi/x11/sw: use swapchain depth for putimage
* 2024-02-21 17:02:04 UTC cfc8cf198c: intel/meson: Fix warning about broken str.format
(Potentially relevant commits in that one day period could be 74534397ac and c12300844d.)
### Any extra information would be greatly appreciated
* Regression is same both in onscreen & offscreen version
* I see no perf changes in other synthetic 3D benchmarks, only in 3.1 version of Manhattan
* No idea whether this regression applies also to other GEN12+ platforms, but at least it does not happen on GEN9 Atoms (I'm running these tests only on TGL, GLK and BXT)
* No changes in messages output by GfxBench, no warnings in dmesg
### System information
```
$ inxi -GSC -xx
System:
Host: tgl-h-3 Kernel: 6.8.0-rc6-CI-Nightly x86_64 bits: 64
compiler: gcc v: 11.4.0 Desktop: GNOME 42.9 tk: GTK 3.24.33 wm: Compiz
dm: LightDM Distro: Ubuntu 22.04.4 LTS (Jammy Jellyfish)
CPU:
Info: 8-core model: 11th Gen Intel Core i7-11800H bits: 64 type: MT MCP
arch: Tiger Lake rev: 1 cache: L1: 640 KiB L2: 10 MiB L3: 24 MiB
Speed (MHz): avg: 831 high: 1300 min/max: 800/4600 cores: 1: 800 2: 800
3: 800 4: 1300 5: 800 6: 800 7: 800 8: 800 9: 800 10: 800 11: 800 12: 800
13: 800 14: 800 15: 800 16: 800 bogomips: 73728
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: Intel TigerLake-H GT1 [UHD Graphics] driver: i915 v: kernel
ports: active: DP-1 empty: DP-2, DP-3, DP-4, DP-5, HDMI-A-1 bus-ID: 00:02.0
chip-ID: 8086:9a60
Display: server: X.Org v: 1.21.1.4 compositor: Compiz v: 0.9.14.1 driver:
X: loaded: modesetting unloaded: fbdev,vesa gpu: i915 display-ID: :0
screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96
Monitor-1: DP-1 model: Acer G246HYL res: 1920x1080 dpi: 93
diag: 604mm (23.8")
OpenGL: renderer: Mesa Intel UHD Graphics (TGL GT1)
v: 4.6 Mesa 24.1.0-devel (git-a8a4bcec36) direct render: Yes
```https://gitlab.freedesktop.org/mesa/mesa/-/issues/10638OSMesa performance regression starting with 19.0.02024-02-19T22:15:43ZLaura HorstOSMesa performance regression starting with 19.0.0There seems to be some performance regression with OSMesa since version 19.0.0.
The code below (built with the command given below) runs reasonably fast with Mesa versions 8.0.5 - 18.3.6, but becomes much slower starting with version 19...There seems to be some performance regression with OSMesa since version 19.0.0.
The code below (built with the command given below) runs reasonably fast with Mesa versions 8.0.5 - 18.3.6, but becomes much slower starting with version 19.0.0.
The example code is a minimal example extracted from much more complex code. The performance regression is also noticable in the original code which we cannot provide here. It is present with a lot of different input geometry - small and big - and with different image buffer sizes, though these variables can have a big impact on the scale of the regression measured.
Linux (Ubuntu 14.04 & 20.04) and Windows (10) are affected, both on x86 64bit.
Mesa versions tested: 8.0.5, 18.0.1, 18.3.6, 19.0.0, 23.0.2.
<details>
<summary>Example Code</summary>
```plaintext
#include "GL/glu.h"
#include "GL/gl.h"
#include "GL/osmesa.h"
#include <iostream>
#include <chrono>
#include <vector>
std::vector<GLfloat> getVertexBuffer(){
// 12 triangles of a cube
return {
-1, -1, -1, 1, -1, 1, 1, -1, -1,
1, -1, 1, 0, 0, 0, -1, 1, -1,
-1, -1, 1, -1, 1, 1, 0, 0, 0,
1, 1, 1, 0, 0, 0, -1, 1, 1,
1, -1, -1, -1, 1, -1, 1, 1, 1,
-1, -1, -1, 1, 1, 1, -1, 1, 1,
-1, -1, -1, -1, -1, 1, 1, -1, 1,
1, -1, 1, -1, -1, 1, 0, 0, 0,
-1, -1, 1, -1, -1, -1, -1, 1, 1,
1, 1, 1, -1, 1, -1, 0, 0, 0,
1, -1, -1, 1, -1, 1, -1, 1, -1,
-1, -1, -1, 1, -1, -1, 1, 1, 1
};
}
std::vector<GLubyte> getColorBuffer(){
// 12 "RGBA" color values
return{
1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48
};
}
void renderGeo(){
std::vector<GLfloat> vertex_buffer = getVertexBuffer();
std::vector<GLubyte> color_buffer = getColorBuffer();
glVertexPointer(3, GL_FLOAT, 0, vertex_buffer.data());
glEnableClientState(GL_VERTEX_ARRAY);
glColorPointer(4, GL_UNSIGNED_BYTE, 0, color_buffer.data());
glEnableClientState(GL_COLOR_ARRAY);
glDrawArrays(GL_TRIANGLES, 0, 12);
glDisableClientState(GL_VERTEX_ARRAY);
glDisableClientState(GL_COLOR_ARRAY);
}
void render(){
const GLsizei width = 44;
const GLsizei height = 44;
OSMesaContext context = OSMesaCreateContextExt(OSMESA_RGBA, 16, 0, 0, NULL);
std::vector<GLubyte> image_buffer = std::vector<GLubyte>(4 * width * height);
OSMesaMakeCurrent(context, image_buffer.data(), GL_UNSIGNED_BYTE, width, height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-11.0, 11.0, -11.0, 11.0, 11.0, -11.0);
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
renderGeo();
glFlush();
glFinish();
OSMesaDestroyContext(context);
}
int main(){
std::chrono::time_point before = std::chrono::steady_clock::now();
render();
std::chrono::time_point after = std::chrono::steady_clock::now();
std::chrono::milliseconds diff = std::chrono::duration_cast<std::chrono::milliseconds>(after - before);
std::cerr << "Time: "; << diff.count() << "ms\n";;
return EXIT_SUCCESS;
}
```
</details>
<details>
<summary>Build Command</summary>
`g++ -isystem "./mesa/include" -Wall -Wextra -Wno-deprecated -Werror -O3 -DNDEBUG -std=gnu++17 -o "./bin/example" "./sources/main.cpp" -Wl,-rpath,"\$ORIGIN:\$ORIGIN/../mesa/lib" "./mesa/lib/libGLU.so" "./mesa/lib/libOSMesa.so"`
</details>
Tested on "Intel i5-8500" with 32GB RAM (Ubuntu 20.04):
* Mesa 18.3.6 or older: \~40ms
* Mesa 19.0.0 or newer: \~600ms
Additional Info:
* Using VertexArrayObject & VertexBufferObject does not help.
* Mesa 18.x is fast both when built with autogen and meson, so that's not the issue it seems.
* Mesa built with: Release, with LLVM, x86, with OSMESA, gallium (swr/swrast)
* Build instructions used (for some versions): https://www.paraview.org/Wiki/ParaView/ParaView_And_Mesa_3Dhttps://gitlab.freedesktop.org/mesa/mesa/-/issues/10552Performance regression in radv affecting Guardians of the Galaxy2024-02-04T15:13:09ZSimon HurtadoPerformance regression in radv affecting Guardians of the Galaxy### Description
There are two notable problems with the game, one is that VRAM gets filled during the benchmark, causing lower performance. And the other is that after the benchmark runs and VRAM usage goes down, performance remains poo...### Description
There are two notable problems with the game, one is that VRAM gets filled during the benchmark, causing lower performance. And the other is that after the benchmark runs and VRAM usage goes down, performance remains poor, with the main menu going from over 100 FPS to under 20 FPS. In older RADV versions, VRAM usage is lower and doesn't display this bad performance.
I tested the epic games store version of the game.
### Screenshots/video files
![Marvel_s_Guardians_of_the_Galaxy_20240201_191643](/uploads/6c7d5cd970b409444f9941632095d0f2/Marvel_s_Guardians_of_the_Galaxy_20240201_191643.png)
with the issue
![Marvel_s_Guardians_of_the_Galaxy_20240117_204357](/uploads/548cdf0f2ea4e395e0bfe09de030b9cd/Marvel_s_Guardians_of_the_Galaxy_20240117_204357.png)
without the issue
![gotg](/uploads/aa00726f8ddcfc0cd1813a9d75625768/gotg.png)
performance in windows
### Steps to reproduce
You can access the benchmark by going into the settings. In affected radv versions, vram will be filled at the very start of the benchmark.
### System information
```System:
Host: DeepBlue Kernel: 6.7.2-arch1-2 arch: x86_64 bits: 64 compiler: gcc
v: 13.2.1 Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.12 wm: kwin_x11 dm:
1: LightDM note: stopped 2: SDDM Distro: Arch Linux
CPU:
Info: 6-core model: AMD Ryzen 5 5600G with Radeon Graphics bits: 64
type: MT MCP arch: Zen 3 rev: 0 cache: L1: 384 KiB L2: 3 MiB L3: 16 MiB
Speed (MHz): avg: 2948 high: 3865 min/max: 400/4464 cores: 1: 2994 2: 2993
3: 2992 4: 2991 5: 3865 6: 400 7: 2991 8: 3033 9: 2991 10: 3265 11: 3767
12: 3096 bogomips: 93456
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
Device-1: AMD Navi 23 [Radeon RX 6600/6600 XT/6600M] vendor: ASRock
driver: amdgpu v: kernel arch: RDNA-2 pcie: speed: 16 GT/s lanes: 16 ports:
active: HDMI-A-1 empty: DP-1,DP-2,DP-3 bus-ID: 03:00.0 chip-ID: 1002:73ff
Display: x11 server: X.Org v: 21.1.11 with: Xwayland v: 23.2.4
compositor: kwin_x11 driver: X: loaded: amdgpu
unloaded: fbdev,modesetting,vesa dri: radeonsi gpu: amdgpu display-ID: :0
screens: 1
Screen-1: 0 s-res: 1680x1050 s-dpi: 96
Monitor-1: HDMI-A-1 mapped: HDMI-A-0 model: LG (GoldStar) TV
res: 1680x1050 dpi: 90 diag: 558mm (22")
API: EGL v: 1.5 platforms: device: 0 drv: radeonsi device: 1 drv: swrast
surfaceless: drv: radeonsi x11: drv: radeonsi inactive: gbm,wayland
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd v: N/A glx-v: 1.4
direct-render: yes renderer: AMD Radeon RX 6600 (navi23 LLVM 16.0.6 DRM
3.56 6.7.2-arch1-2) device-ID: 1002:73ff
API: Vulkan v: 1.3.276 surfaces: xcb,xlib device: 0 type: discrete-gpu
driver: mesa radv device-ID: 1002:73ff
```
#### If applicable
- Xserver version: 1.21.1.11
- vkd3d-proton: v2.11-19-g0e681135.
- Wine/Proton version: 8
### Regression
I have bisected and the first commit with this problem is this 374bd4e1bef25ba2aeef6016ac35b41df07f3a99
### Traces
[gotg.exe_dxr.rmv](/uploads/b381478101be02c21d028b27ba1e92f0/gotg.exe_dxr.rmv)
[gotg.exe_nodxr.rmv](/uploads/35dc19bf18139425ef86d447dd620013/gotg.exe_nodxr.rmv)
### Further information (optional)
~~Might or might not be related to the issue, but in affected versions, the game detects available vram to be 24GB (incorrect) instead of 8GB (correct).~~
Windows also reports having 24GB when the VRAM gets full.
After further testing I found that amdvlk is also running out of vram (though its performance is better than radv when this happens), so I decided to test other vkd3d-proton versions and found that the problem doesn't happen in 2.10, and that it started somewhere between that and 2.11.
Edit: vkd3d-proton 2.11 enables dxr by default, and that along with the commit above together trigger the issue, if the user set `VKD3D_CONFIG=nodxr` the issue won't appear.
Added rmv traces when running the game with dxr and nodxr.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10523SDDM greeter has blank Login window fields and descriptors after update to Me...2024-03-07T03:18:08ZPaul GraffSDDM greeter has blank Login window fields and descriptors after update to Mesa 23.3.4```
Compaq-nc6400:/> inxi -GSC -xx
System:
Host: user-Compaq-nc6400.PK5001Z Kernel: 6.7.1-2-pae arch: i686 bits: 32
compiler: gcc v: 13.2.1 Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.12
wm: kwin_x11 dm: SDDM Distro: openSUSE...```
Compaq-nc6400:/> inxi -GSC -xx
System:
Host: user-Compaq-nc6400.PK5001Z Kernel: 6.7.1-2-pae arch: i686 bits: 32
compiler: gcc v: 13.2.1 Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.12
wm: kwin_x11 dm: SDDM Distro: openSUSE Tumbleweed 20240128
CPU:
Info: dual core model: Intel T2400 bits: 32 type: MCP arch: M Yonah rev: 8
cache: L1: 128 KiB L2: 2 MiB
Speed (MHz): avg: 1000 min/max: 1000/1833 cores: 1: 1000 2: 1000
bogomips: 7317
Flags: ht nx pae sse sse2 sse3 vmx
Graphics:
Device-1: Intel Mobile 945GM/GMS 943/940GML Express Integrated Graphics
vendor: Hewlett-Packard driver: i915 v: kernel arch: Gen-3.5 ports:
active: LVDS-1 empty: DVI-D-1,SVIDEO-1,VGA-1 bus-ID: 00:02.0
chip-ID: 8086:27a2
Display: x11 server: X.Org v: 21.1.11 with: Xwayland v: 23.2.4
compositor: kwin_x11 driver: X: loaded: intel
unloaded: fbdev,modesetting,vesa dri: i915 gpu: i915 display-ID: :0
screens: 1
Screen-1: 0 s-res: 1280x800 s-dpi: 96
Monitor-1: LVDS-1 mapped: LVDS1 model: LG Philips 0x8d00 res: 1280x800
dpi: 108 diag: 358mm (14.1")
API: EGL v: 1.5 platforms: device: 0 egl: 1.4 drv: i915 device: 1
drv: swrast surfaceless: egl: 1.4 drv: i915 x11: egl: 1.4 drv: i915
inactive: gbm,wayland
API: OpenGL v: 4.5 compat-v: 2.1 vendor: mesa v: 23.3.4 glx-v: 1.4
direct-render: yes renderer: i915 (: 945GM) device-ID: 8086:27a2
API: Vulkan Message: No Vulkan data available.
Compaq-nc6400:/>
```
```
- OS: (opensuse:tumbleweed:20240128)
- GPU: (00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller [8086:27a2] (rev 03))
- Kernel version: (Compaq-nc6400.PK5001Z 6.7.1-2-pae #1 SMP PREEMPT_DYNAMIC Fri Jan 26 06:32:58 UTC 2024 (6aca254) i686 i686 i386 GNU/Linux)
- Mesa version: (OpenGL version string: 2.1 Mesa 23.3.4)
- Xserver version (if applicable): (X.Org X Server 1.21.1.11
X Protocol Version 11, Revision 0
Current Operating System: Linux paul-Compaq-nc6400.PK5001Z 6.7.1-2-pae #1 SMP PREEMPT_DYNAMIC Fri Jan 26 06:32:58 UTC 2024 (6aca254) i686
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-6.7.1-2-pae root=/dev/mapper/system-root splash=silent resume=/dev/system/swap mitigations=auto quiet security=apparmor
Current version of pixman: 0.42.2
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
```
### Describe the issue
After entering LUKS passphrase can see openSUSE Tumbleweed loading display. Once SDDM is displayed only blank window fields and descriptors are displayed. I was expecting to see my username and once entering password, dots in the indentification box. This happens each time now since a 'zypper dup' pulled in new Mesa updates. I tried switching Mesa to openSUSE OSS repository (from packman) after a known good rollback, with no luck. Kwin was also occasionally crashing about 50% of the time after each login (reading KDE bugs led me here). Moving mouse cursor to an open tab in KDE taskbar displays a preview window with the color 'pink' background. VLC video playback appears to be fine with no issues currently. Phonon backend functions fine in Dolphin for video previews. I have tried to add either one of the following lines (without #) to `/etc/profile.d/kwin.sh`
```
Compaq-nc6400:/etc/profile.d> cat kwin.sh
#export KWIN_COMPOSE=O2ES
#export KWIN_OPENGL_INTERFACE=EGL
Compaq-nc6400:/etc/profile.d>
```
Which one of the above entries if any would you suggest?
### Regression
Yes, before updating to mesa v: 23.3.4. SDDM was fine though, Kwin did crash when logging into KDE about 50% of the time.
### Log files as attachment
See pastebin: [dmesg | -tail 500] (https://pastebin.com/DNm4eaKz)
### Screenshots/video files (if applicable)
I have taken 2 photos. 1 of SDDM blank and 1 of the pink background taskbar tabs.
[Photos](https://ibb.co/album/qLcX5S)
### Any extra information would be greatly appreciated
I do not understand how to use the apitrace package which I have installed for this purpose yet. I cannot seem to file a report for Kwin on KDE even after downloading Kwin debugging package. Reviewing the KDE website bug # 472544 top comment, led me here.
-Best Regardshttps://gitlab.freedesktop.org/mesa/mesa/-/issues/10491Mesa 23.3.X causing glitches with Gnome apps on Intel cards2024-01-24T21:08:14ZShadowMesa 23.3.X causing glitches with Gnome apps on Intel cards### System information
```
System:
Host: calculate Kernel: 6.6.12-calculate arch: x86_64 bits: 64 compiler: gcc
v: 13.2.1 Desktop: GNOME v: 45.2 tk: GTK v: 3.24.39 wm: gnome-shell dm: GDM
Distro: Calculate Linux Desktop GNOME ...### System information
```
System:
Host: calculate Kernel: 6.6.12-calculate arch: x86_64 bits: 64 compiler: gcc
v: 13.2.1 Desktop: GNOME v: 45.2 tk: GTK v: 3.24.39 wm: gnome-shell dm: GDM
Distro: Calculate Linux Desktop GNOME Adrien 23
CPU:
Info: dual core model: Intel Core2 Duo T5670 bits: 64 type: MCP
arch: Core2 Merom rev: D cache: L1: 128 KiB L2: 2 MiB
Speed (MHz): avg: 1197 min/max: 800/1801 boost: enabled cores: 1: 1197
2: 1197 bogomips: 7184
Flags: ht lm nx pae sse sse2 sse3 ssse3
Graphics:
Device-1: Intel Mobile GM965/GL960 Integrated Graphics vendor: Dell
driver: i915 v: kernel arch: Gen-4 ports: active: LVDS-1
empty: SVIDEO-1,VGA-1 bus-ID: 00:02.0 chip-ID: 8086:2a02
Device-2: Microdia Sonix Integrated Webcam driver: uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 4-3:3 chip-ID: 0c45:63e0
Display: x11 server: X.Org v: 21.1.11 with: Xwayland v: 23.2.4
compositor: gnome-shell driver: X: loaded: intel dri: crocus gpu: i915
display-ID: :1 screens: 1
Screen-1: 0 s-res: 1280x800 s-dpi: 96
Monitor-1: LVDS-1 mapped: LVDS1 model: LG Philips res: 1280x800 dpi: 99
diag: 390mm (15.4")
API: EGL v: 1.5 platforms: device: 0 drv: crocus device: 1 drv: swrast
gbm: drv: crocus surfaceless: drv: crocus x11: drv: crocus inactive: wayland
API: OpenGL v: 2.1 vendor: intel mesa v: 23.3.2 glx-v: 1.4 es-v: 2.0
direct-render: yes renderer: Mesa Intel 965GM (CL) device-ID: 8086:2a02
```
### Describe the issue
Upon updating the system through emerge @world, and changing from Mesa 23.1.9 up to 23.3.1, the whole system started glitching out as soon as the login finished (though if I pressed on the Settings cog for GDM it froze).
Once inside Gnome Desktop, the whole desktop environment started to corrupt, with the panels having odd black boxes, black flickers all around, and every time I tried to click on anything, the screen flickered and froze for around 10 seconds, and that's if the desktop didn't crash and logged me out.
I tried also testing out Mesa 23.3.2, and while the issue is mitigated in this instance, there's still flickering happening when opening certain apps and windows, like with Nautilus, Gnome Settings, Gnome Console, etc.
### Regression
The graphical glitches are not present in Mesa version 23.1.9 at all, it wasn't until the update through emerge @world on Gentoo that it got updated and stopped working altogether. Rolling back to 23.1.9 from both 23.3.1 or 23.3.2 fixes the glitches.
### Log files as attachment
[dmesg.log](/uploads/1b2f9c9a6c162f6da5efca409b9bc7a3/dmesg.log)
### Screenshots/video files (if applicable)
Here's a video showcasing the graphical issue with Mesa 23.3.2:
https://youtu.be/eQZCkaGlNQw
With Mesa 23.3.1 the issue is even worse, the whole Gnome desktop is glitched with black boxes around everything, constant flickering and not even being able to click on any option or the system would crash. I couldn't get a video for this since Mesa takes a while to compile and install on the tested machine (around 2 hours or so).
### Any extra information would be greatly appreciated
I have confirmed the issue also happens on another Dell Laptop I have access to, a Dell Latitude E5510. Same behaviour as with the Vostro 1510, only rolling back to Mesa 23.1.9 fixes the glitches for both computers.
I'm not sure if the forced installation of the package `intel_clc` for Gentoo-based systems could be related to the problem.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10472Update mesa breaks graphics on fedora 39 running under Windows 11 with VMware...2024-02-02T17:22:32ZGLwd40Update mesa breaks graphics on fedora 39 running under Windows 11 with VMware 17 PlayerI installed Fedora 39 under VMware Player 17. After the last update using the dnf command of the mesa package, after logging in
screen comes up with some of the graphical elements messed up or with the entire sceen very faint. After clic...I installed Fedora 39 under VMware Player 17. After the last update using the dnf command of the mesa package, after logging in
screen comes up with some of the graphical elements messed up or with the entire sceen very faint. After clicking on it with the mouse, the screen will go completely dark and I can’t get any response from it after that. Everything works fine, but after turning off 3D acceleration.
This is exactly what is happening as described on the forum: https://discussion.fedoraproject.org/t/recent-update-breaks-graphics-on-fedora-39-running-under-windows-11-with-vmware-17-player/100887
The mesa package I have installed: mesa-23.3.3-1.fc39.https://gitlab.freedesktop.org/mesa/mesa/-/issues/10428Visual artifacts on radeon video card in latest 24.0 branch2024-03-11T01:29:50ZMarco PiazzaVisual artifacts on radeon video card in latest 24.0 branch### Description
Latest mesa git self compiled has some trouble.
My gnome-shell (and GDM) flickers and many text are hidden until I pass over with the mouse.
### System information
```
inxi -GSC -xx
System:
Host: albireo Kernel: 6.6.7...### Description
Latest mesa git self compiled has some trouble.
My gnome-shell (and GDM) flickers and many text are hidden until I pass over with the mouse.
### System information
```
inxi -GSC -xx
System:
Host: albireo Kernel: 6.6.7-bfq arch: x86_64 bits: 64 compiler: gcc
v: 12.2.0 Desktop: GNOME v: 45.2 tk: GTK v: 3.24.38 wm: gnome-shell dm: GDM3
Distro: Debian GNU/Linux jessie/sid
CPU:
Info: quad core model: AMD A4-5000 APU with Radeon HD Graphics bits: 64
type: MCP arch: Jaguar rev: 1 cache: L1: 256 KiB L2: 2 MiB
Speed (MHz): avg: 1057 high: 1098 min/max: 800/1500 boost: disabled cores:
1: 934 2: 1098 3: 1098 4: 1098 bogomips: 11977
Flags: avx ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
Device-1: AMD Kabini [Radeon HD 8330] vendor: Toshiba driver: amdgpu
v: kernel arch: GCN-2 ports: active: LVDS-1 empty: HDMI-A-1,VGA-1
bus-ID: 00:01.0 chip-ID: 1002:9832
Device-2: AMD Sun PRO [Radeon HD 8570A/8570M] vendor: Toshiba
driver: amdgpu v: kernel arch: GCN-1 pcie: speed: 2.5 GT/s lanes: 4
bus-ID: 01:00.0 chip-ID: 1002:6663 temp: 40.0 C
Device-3: IMC Networks TOSHIBA Web Camera - HD driver: uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 1-4:4 chip-ID: 13d3:5606
Display: x11 server: X.Org v: 1.20.9 with: Xwayland v: 23.2.3
compositor: gnome-shell driver: X: loaded: amdgpu unloaded: modesetting
alternate: fbdev,vesa dri: radeonsi gpu: amdgpu display-ID: :0 screens: 1
Screen-1: 0 s-res: 1366x768 s-dpi: 96
Monitor-1: LVDS-1 mapped: LVDS model: LG Display 0x033a res: 1366x768
dpi: 101 diag: 395mm (15.5")
API: EGL v: 1.5 platforms: gbm: drv: N/A x11: drv: N/A
inactive: wayland,device
API: OpenGL v: 4.6 vendor: amd v: N/A glx-v: 1.4 es-v: 3.2
direct-render: yes renderer: AMD Radeon HD 8330 (radeonsi kabini LLVM
16.0.6 DRM 3.54 6.6.7-bfq) device-ID: 1002:9832
API: Vulkan v: 1.2.70 surfaces: xcb device: 0 type: integrated-gpu
driver: N/A device-ID: 1002:9832 device: 1 type: discrete-gpu driver: N/A
device-ID: 1002:6663 device: 2 type: cpu driver: N/A device-ID: 10005:0000
```
### Describe the issue
My gnome-shell screen has visual artifacts when usually it has none.
### Regression
Gnome-shell used to work as expected
### Extra information
It seems that the bug is releated to Wayland.
In fact usally gnome shell starts whith wayland rendering, but (as I can see in the command below now it start with Xorg rendering)
```
xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x54 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 3 associated providers: 0 name:AMD Radeon HD 8330 @ pci:0000:00:01.0
Provider 1: id: 0x7c cap: 0xd, Source Output, Source Offload, Sink Offload crtcs: 0 outputs: 0 associated providers: 0 name:AMD Radeon HD 8500M Series @ pci:0000:01:00.0
```https://gitlab.freedesktop.org/mesa/mesa/-/issues/10345black screen when reading h264 files with VLC 3.0.20-4 and mesa/mesa-vdpau 1:...2024-01-02T16:13:34ZPotomacblack screen when reading h264 files with VLC 3.0.20-4 and mesa/mesa-vdpau 1:23.3I use archlinux, mesa 1:23.3.1-1, mesa-vdpau 1:23.3.1-1, libvdpau-va-gl 0.4.2-3, libva-mesa-driver 1:23.3.1-1,
my graphic card is a radeon HD4650 Pcie (RV730, UVD 2.2).
I notice that since mesa 1:23.3 VLC 3.0.20-4 displays a black scre...I use archlinux, mesa 1:23.3.1-1, mesa-vdpau 1:23.3.1-1, libvdpau-va-gl 0.4.2-3, libva-mesa-driver 1:23.3.1-1,
my graphic card is a radeon HD4650 Pcie (RV730, UVD 2.2).
I notice that since mesa 1:23.3 VLC 3.0.20-4 displays a black screen when I try to read h264 video files, I can only hear the audio track.
If I downgrade mesa and mesa-vdpau to 1:23.2.1 version then all is ok, I can play h264 files with VLC.
MPV is not affected by this problem, I can have hardware acceleration with vdpau ("mpv -hwdec=vdpau").
Output of vainfo :
```
$ vainfo
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.20 (libva 2.20.1)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
<unknown profile> : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
```
Output of vdpauinfo :
```
$ vdpauinfo
display: :0 screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0
Video surface:
name width height types
-------------------------------------------
420 8192 8192 NV12 YV12
422 8192 8192 UYVY YUYV
444 8192 8192 Y8U8V8A8 V8U8Y8A8
420_16 8192 8192
422_16 8192 8192
444_16 8192 8192
Decoder capabilities:
name level macbs width height
----------------------------------------------------
MPEG1 --- not supported ---
MPEG2_SIMPLE 3 9216 2048 1152
MPEG2_MAIN 3 9216 2048 1152
H264_BASELINE 41 9216 2048 1152
H264_MAIN 41 9216 2048 1152
H264_HIGH 41 9216 2048 1152
VC1_SIMPLE 1 9216 2048 1152
VC1_MAIN 2 9216 2048 1152
VC1_ADVANCED 4 9216 2048 1152
MPEG4_PART2_SP --- not supported ---
MPEG4_PART2_ASP --- not supported ---
DIVX4_QMOBILE --- not supported ---
DIVX4_MOBILE --- not supported ---
DIVX4_HOME_THEATER --- not supported ---
DIVX4_HD_1080P --- not supported ---
DIVX5_QMOBILE --- not supported ---
DIVX5_MOBILE --- not supported ---
DIVX5_HOME_THEATER --- not supported ---
DIVX5_HD_1080P --- not supported ---
H264_CONSTRAINED_BASELINE 0 9216 2048 1152
H264_EXTENDED --- not supported ---
H264_PROGRESSIVE_HIGH --- not supported ---
H264_CONSTRAINED_HIGH --- not supported ---
H264_HIGH_444_PREDICTIVE --- not supported ---
VP9_PROFILE_0 --- not supported ---
VP9_PROFILE_1 --- not supported ---
VP9_PROFILE_2 --- not supported ---
VP9_PROFILE_3 --- not supported ---
HEVC_MAIN --- not supported ---
HEVC_MAIN_10 --- not supported ---
HEVC_MAIN_STILL --- not supported ---
HEVC_MAIN_12 --- not supported ---
HEVC_MAIN_444 --- not supported ---
HEVC_MAIN_444_10 --- not supported ---
HEVC_MAIN_444_12 --- not supported ---
AV1_MAIN --- not supported ---
AV1_HIGH --- not supported ---
AV1_PROFESSIONAL --- not supported ---
Output surface:
name width height nat types
----------------------------------------------------
B8G8R8A8 8192 8192 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A4I4 I4A4 A8I8 I8A8
R8G8B8A8 8192 8192 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A4I4 I4A4 A8I8 I8A8
R10G10B10A2 8192 8192 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A4I4 I4A4 A8I8 I8A8
B10G10R10A2 8192 8192 y NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 P010 P016 A4I4 I4A4 A8I8 I8A8
Bitmap surface:
name width height
------------------------------
B8G8R8A8 8192 8192
R8G8B8A8 8192 8192
R10G10B10A2 8192 8192
B10G10R10A2 8192 8192
A8 8192 8192
Video mixer:
feature name sup
------------------------------------
DEINTERLACE_TEMPORAL y
DEINTERLACE_TEMPORAL_SPATIAL -
INVERSE_TELECINE -
NOISE_REDUCTION y
SHARPNESS y
LUMA_KEY y
HIGH QUALITY SCALING - L1 y
HIGH QUALITY SCALING - L2 -
HIGH QUALITY SCALING - L3 -
HIGH QUALITY SCALING - L4 -
HIGH QUALITY SCALING - L5 -
HIGH QUALITY SCALING - L6 -
HIGH QUALITY SCALING - L7 -
HIGH QUALITY SCALING - L8 -
HIGH QUALITY SCALING - L9 -
parameter name sup min max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH y 48 2048
VIDEO_SURFACE_HEIGHT y 48 1152
CHROMA_TYPE y
LAYERS y 0 4
attribute name sup min max
-----------------------------------------------------
BACKGROUND_COLOR y
CSC_MATRIX y
NOISE_REDUCTION_LEVEL y 0.00 1.00
SHARPNESS_LEVEL y -1.00 1.00
LUMA_KEY_MIN_LUMA y
LUMA_KEY_MAX_LUMA y
```