mesa: d120506e158e58b7a532c31427fe0a056ea270d8 (master 10.2.0-devel) $ ./bin/clearbuffer-mixed-format -auto src/gallium/drivers/llvmpipe/lp_rast.c:165:lp_rast_clear_color: Assertion `util_format_is_pure_uint(format)' failed. Trace/breakpoint trap (core dumped) (gdb) bt #0 0x00007fb9e91c09f1 in _debug_assert_fail (expr=0x7fb9e9c3adf0 "util_format_is_pure_uint(format)", file=0x7fb9e9c3adc8 "src/gallium/drivers/llvmpipe/lp_rast.c", line=165, function=0x7fb9e9c3afa0 <__func__.15884> "lp_rast_clear_color") at src/gallium/auxiliary/util/u_debug.c:278 #1 0x00007fb9e8ddb406 in lp_rast_clear_color (task=0x2417f08, arg=...) at src/gallium/drivers/llvmpipe/lp_rast.c:165 #2 0x00007fb9e8ddc702 in do_rasterize_bin (task=0x2417f08, bin=0x7fb9ec8f91e8, x=0, y=0) at src/gallium/drivers/llvmpipe/lp_rast.c:653 #3 0x00007fb9e8ddc76f in rasterize_bin (task=0x2417f08, bin=0x7fb9ec8f91e8, x=0, y=0) at src/gallium/drivers/llvmpipe/lp_rast.c:672 #4 0x00007fb9e8ddc87f in rasterize_scene (task=0x2417f08, scene=0x7fb9ec8f9010) at src/gallium/drivers/llvmpipe/lp_rast.c:721 #5 0x00007fb9e8ddcb4b in thread_function (init_data=0x2417f08) at src/gallium/drivers/llvmpipe/lp_rast.c:842 #6 0x00007fb9e8dda412 in impl_thrd_routine (p=0x2408060) at include/c11/threads_posix.h:87 #7 0x00007fb9e7d66f6e in start_thread (arg=0x7fb9e06fc700) at pthread_create.c:311 #8 0x00007fb9ec0429cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 (gdb) frame 1 #1 0x00007fb9e8ddb406 in lp_rast_clear_color (task=0x2417f08, arg=...) at src/gallium/drivers/llvmpipe/lp_rast.c:165 165 assert(util_format_is_pure_uint(format)); (gdb) print format $1 = PIPE_FORMAT_R8G8B8A8_UNORM
I'm pretty sure that's because llvmpipe lacks the ability to clear just one rb from the fb. The gallium interface lacked that too which made it impossible to actually clear such mixed fbs in a useful way, but that was fixed. I'll take a look at it when I find some time if noone beats me to it.
Fixed by a7a03d84fc1a7a1721b4a0338258b3b8687743e8.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.