Hello, basically mpv's vulkan mode breaks with this update (reverting only glslang fixes it). Maybe a hairy problem, someone on IRC using mpv on Gentoo with same glslang and libplacebo (5.229.1, tried with git too) versions didn't have any problem. The exact assertion is: $ mpv --no-config --gpu-api=vulkan my.mkv ... mpv: /var/tmp/portage/dev-util/glslang-1.3.231-r2/work/glslang-sdk-1.3.231.0/SPIRV/SpvBuilder.cpp:1075: spv::Id spv::Builder::createDebugGlobalVariable(spv::Id, const char*, spv::Id): Assertion `type != 0' failed. https://github.com/mpv-player/mpv/issues/10965 for details
Oh, and I tried with mainline mpv, to be sure the vapoursynth build option wasn't the culprit. Same problem. emerge -pqv mpv: [ebuild N ] media-video/mpv-0.35.0 USE="X alsa archive bluray cli drm iconv jpeg libmpv libplacebo lua opengl uchardet vapoursynth vulkan zlib (-aqua) -cdda (-coreaudio) -debug -dvb -dvd -egl -gamepad -jack -javascript -lcms -libcaca (-mmal) -nvenc -openal -pipewire -pulseaudio (-raspberry-pi) -rubberband -sdl (-selinux) -sndio -test -tools -vaapi -vdpau -wayland -xv -zimg" LUA_SINGLE_TARGET="luajit -lua5-1" PYTHON_SINGLE_TARGET="python3_10 -python3_9 -python3_11"
Just tired the repro steps and it works for me, so probably an upstream issue with specific mpv input. Will let the upstream bug figure it out.
I see. Could it be hardware specific (with a codepath conditional on hardware)?
Sure, it could be that too. A developer for either glslang or mpv needs to investigate, it doesn't seem like a packaging issue.
fwiw no issues either, same glslang-1.3.231 + libplacebo, built with exact same USE (minus vapoursynth), same mpv command and it works (using nvidia-drivers-525.60.1 fwiw) with -v, shown being used too: [vo/gpu] Probing for best GPU context. [vo/gpu/vulkan] Initializing GPU context 'x11vk' [vo/gpu/libplacebo] Initialized libplacebo v5.229.0 (API v229) emerge --info? sometime even different optimizations could trigger these issues
The new assert non-trivially comes from https://github.com/KhronosGroup/glslang/pull/2985, not that I can say what's up with it and why it's failing for you (as sarnex says, that looks more for upstream).
Created attachment 840103 [details] emerge --info I use -O3 -march=native and stable mesa with a RX580. Nothing out-of-the-ordinary for a Gentoo user, I'd say.
If you want to try stuff, maybe 1) Try dropping to -O2 for glslang/mpv, which is what I'm using 2) Try unstable mesa, which is what I'm using
No luck. Guess I'll just wait for upstream to inspect my gdb backtrace.
Just to be complete, you could also try O2 for libplacebo and shaderc since those are involved in the backtrace. But just a hail mary.
So: * According to upstream, I tried rebuilding media-libs/shaderc, but hit https://bugs.gentoo.org/show_bug.cgi?id=884379 * After unmasking everything that needed to in that unholy dependency mess, problem is fixed. I don't know if something is breaking ABI contract or anything, sadly.
I think I see the problem. If you have irc can you join #gentoo-desktop and ping me (sarnex)