Bug 249690 - [GTK] UI process hang when fullscreening video on reddit.com
Summary: [GTK] UI process hang when fullscreening video on reddit.com
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: WebKit Nightly Build
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-12-20 18:04 PST by Michael Catanzaro
Modified: 2023-04-01 09:00 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Catanzaro 2022-12-20 18:04:48 PST
With WebKitGTK 2.39.3 (tested both Tech Preview and my personal jhbuild), the UI process hangs when attempting to fullscreen a video on reddit.com. There is an associated web process crash, bug #249689, but problem is the web process is untrusted and should not be allowed to hang the UI process no matter what, so this is a separate bug from the underlying web process crash.

At the time of the hang, the UI process is just calmly handling Wayland events as if nothing is wrong:

(gdb) bt
#0  __futex_abstimed_wait_common64
    (private=0, cancel=true, abstime=0x0, op=393, expected=0, futex_word=0x5595c8b15190) at futex-internal.c:57
#1  __futex_abstimed_wait_common
    (futex_word=futex_word@entry=0x5595c8b15190, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
#2  0x00007f6e0cc8bc1f in __GI___futex_abstimed_wait_cancelable64
    (futex_word=futex_word@entry=0x5595c8b15190, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:139
#3  0x00007f6e0cc8e4d1 in __pthread_cond_wait_common
    (abstime=0x0, clockid=0, mutex=<optimized out>, cond=0x5595c8b15168) at pthread_cond_wait.c:503
#4  ___pthread_cond_wait (cond=0x5595c8b15168, mutex=<optimized out>) at pthread_cond_wait.c:618
#5  0x00007f6e0608ebd5 in read_events () at /usr/lib/x86_64-linux-gnu/libwayland-client.so.0
#6  0x00007f6e0608ecb3 in wl_display_read_events () at /usr/lib/x86_64-linux-gnu/libwayland-client.so.0
#7  0x00007f6e0608efc6 in wl_display_dispatch_queue () at /usr/lib/x86_64-linux-gnu/libwayland-client.so.0
#8  0x00007f6e0d46be7f in gdk_wayland_toplevel_focus (toplevel=0x5595cb1d1fb0, timestamp=<optimized out>)
    at ../gdk/wayland/gdksurface-wayland.c:3603
#9  0x00007f6e0dd730a3 in  () at /app/lib/epiphany/libephymain.so
#10 0x00007f6e0db066df in g_timeout_dispatch
    (source=0x5595cb21adf0, callback=<optimized out>, user_data=<optimized out>) at ../glib/gmain.c:5007
#11 0x00007f6e0db059e1 in g_main_dispatch (context=<optimized out>) at ../glib/gmain.c:3444
#12 g_main_context_dispatch (context=<optimized out>) at ../glib/gmain.c:4162
#13 0x00007f6e0db05f38 in g_main_context_iterate
    (context=context@entry=0x5595c8ac87c0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at ../glib/gmain.c:4238
#14 0x00007f6e0db05fd3 in g_main_context_iteration
    (context=context@entry=0x5595c8ac87c0, may_block=may_block@entry=1) at ../glib/gmain.c:4303
#15 0x00007f6e0d9ad84d in g_application_run
    (application=0x5595c8afbff0 [EphyShell], argc=<optimized out>, argv=<optimized out>)
    at ../gio/gapplication.c:2573
#16 0x00005595c860d04b in main ()
Comment 1 Kdwk 2023-04-01 07:04:34 PDT
Unable to reproduce with WebKitGTK 2.40
Comment 2 Michael Catanzaro 2023-04-01 09:00:05 PDT
I think we're unable to reproduce because I fixed the web process crash bug #249689, but it's a bug if anything the web process does can cause the UI process to hang, so this bug should not be closed. To fix this bug, the UI process should not hang if bug #249689 is reintroduced.