Skip to content

[internal]: WebKit crash in dri2_wl_swrast_put_image2 on Ubuntu 22.04 #35586

Open
@mxschmitt

Description

@mxschmitt

Stacktrace:

#0  __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:708
#1  0x00007fdb0b84f12e in dri2_wl_swrast_put_image2 (draw=<optimized out>, op=<optimized out>, x=x@entry=0, y=y@entry=0, w=w@entry=1280, h=360, 
    h@entry=768, stride=<optimized out>, data=<optimized out>, loaderPrivate=<optimized out>) at ../src/egl/drivers/dri2/platform_wayland.c:2589
#2  0x00007fdb0b84edea in dri2_wl_swrast_put_image (draw=<optimized out>, op=<optimized out>, x=0, y=0, w=1280, h=768, data=<optimized out>, loaderPrivate=<optimized out>)
    at ../src/egl/drivers/dri2/platform_wayland.c:2604
#3  0x00007fdab5daab76 in put_image (drawable=0x7fdabd000000, data=0x7fdabd000000, width=3170893824, height=3727102800) at ../src/gallium/frontends/dri/drisw.c:63
#4  drisw_put_image (drawable=0x7fdabd000000, data=0x7fdabd000000, width=3170893824, height=3727102800) at ../src/gallium/frontends/dri/drisw.c:166
#5  0x00007fdab5dab515 in drisw_present_texture (pipe=0x7fdab4696040, drawable=0x7fda835eadc0, ptex=0x7fda835eb7f0, sub_box=0x0) at ../src/gallium/frontends/dri/drisw.c:196
#6  drisw_copy_to_front (pipe=0x7fdab4696040, drawable=0x7fda835eadc0, ptex=0x7fda835eb7f0) at ../src/gallium/frontends/dri/drisw.c:212
#7  drisw_swap_buffers (drawable=0x7fda835eadc0) at ../src/gallium/frontends/dri/drisw.c:258
#8  0x00007fdb0b8503fc in dri2_wl_swrast_swap_buffers (disp=0x5999de275830, draw=0x7fdab4696040) at ../src/egl/drivers/dri2/platform_wayland.c:2616
#9  0x00007fdb0b8469ae in dri2_swap_buffers (disp=0x5999de275830, surf=0x7fda835ea910) at ../src/egl/drivers/dri2/egl_dri2.c:1968
#10 0x00007fdb0b8364bb in eglSwapBuffers (dpy=<optimized out>, surface=<optimized out>) at ../src/egl/main/eglapi.c:1444
#11 0x00007fdb16d023cd in WebCore::GLContext::swapBuffers() () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#12 0x00007fdb12db116c in WebKit::ThreadedCompositor::renderLayerTree() () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#13 0x00007fdb14f2fa4b in WTF::RunLoop::TimerBase::TimerBase(WTF::Ref<WTF::RunLoop, WTF::RawPtrTraits<WTF::RunLoop>, WTF::DefaultRefDerefTraits<WTF::RunLoop> >&&)::$_0::__invoke(void*) ()
    at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#14 0x00007fdb14f2edda in WTF::RunLoop::$_0::__invoke(_GSource*, int (*)(void*), void*) () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#15 0x00007fdb11c05c44 in g_main_dispatch (context=0x7fda80000b70) at ../../../glib/gmain.c:3419
#16 g_main_context_dispatch (context=0x7fda80000b70) at ../../../glib/gmain.c:4137
#17 0x00007fdb11c5b2b8 in g_main_context_iterate.constprop.0 (context=0x7fda80000b70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../glib/gmain.c:4213
#18 0x00007fdb11c052b3 in g_main_loop_run (loop=0x7fda80003210) at ../../../glib/gmain.c:4413
#19 0x00007fdb14f2f27c in WTF::RunLoop::run() () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#20 0x00007fdb14ed4e14 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#21 0x00007fdb14f33416 in WTF::wtfThreadEntryPoint(void*) () at /home/pwuser/webkit/WebKitBuild/WPE/Release/lib/libWPEWebKit-2.0.so.1
#22 0x00007fdb11494ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#23 0x00007fdb11526850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Investigation:

  • Segfaults here
  • Happens consistently on Ubuntu 22.04 - not on 24.04
  • Repro WKPATH=../playwright-browsers/browser_patches/webkit/pw_run.sh DEBUG=pw:browser xvfb-run npm run wtest -- screenshot:44 --repeat-each 2000 -x
  • Happens with MESA version 23.2.1 (Ubuntu 22.04 version) and 24.0.5 (Ubuntu 24.04 version - compiled manually)

Maybe related to:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions