WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED INVALID
162465
NetworkProcess is using 100% CPU on a specific website
https://bugs.webkit.org/show_bug.cgi?id=162465
Summary
NetworkProcess is using 100% CPU on a specific website
Christian Stadelmann
Reported
2016-09-22 14:44:19 PDT
Created
attachment 289602
[details]
Backtrace from gdb attached to WebKitNetworkProcess Steps to reproduce: 1. open epiphany 2. browse to
https://bodhi.fedoraproject.org/updates/FEDORA-2016-77ffa78abb
3. watch WebKitNetworkProcess What happens? 100% CPU load on one core, by WebKitNetworkProcess What should happen? No 100% CPU when just showing an ordinary page. Affected version: epiphany-3.20.3-1.fc24.x86_64 webkitgtk4-2.12.5-1.fc24.x86_64 libsoup-2.54.1-1.fc24.x86_64 gtk3-3.20.9-1.fc24.x86_64 Additional info: I attached gdb to WebKitNetworkProcess while being busy, then I created a backtrace: #0 0x00007ffff07ccbe4 in g_source_callback_get (cb_data=0x555556647f50, source=0x555556648cf0, func=0x7fffffffd930, data=0x7fffffffd938) at gmain.c:1574 #1 0x00007ffff07cf39c in g_main_context_find_source_by_user_data (context=0x555555588dd0, user_data=user_data@entry=0x555555580020) at gmain.c:2232 #2 0x00007fffefe49ed4 in soup_session_real_kick_queue (session=<optimized out>) at soup-session.c:2339 #3 0x00007fffefe4ef7b in message_completed (session=<optimized out>) at soup-session.c:2360 #4 0x00007fffefe4ef7b in message_completed (msg=<optimized out>, completion=SOUP_MESSAGE_IO_COMPLETE, user_data=0x555555b195a0) at soup-session.c:1586 #5 0x00007fffefe3d9a2 in soup_message_io_finished (msg=0x555555cff8a0 [SoupMessage]) at soup-message-io.c:183 #6 0x00007fffefe29223 in soup_client_input_stream_close_fn (stream=<optimized out>, cancellable=<optimized out>, error=<optimized out>) at soup-client-input-stream.c:135 #7 0x00007ffff0f49fe4 in g_input_stream_close (stream=0x555555be3960 [SoupClientInputStream], cancellable=cancellable@entry=0x0, error=error@entry=0x0) at ginputstream.c:511 #8 0x00007ffff6e3d308 in WebCore::readCallback(GObject*, GAsyncResult*, gpointer) (asyncResult=<optimized out>, data=0x7fffe1d3da20) at /usr/src/debug/webkitgtk-2.12.5/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:1340 #9 0x00007ffff0f4a04a in async_ready_callback_wrapper (source_object=0x555555be3960 [SoupClientInputStream], res=0x555555a10de0, user_data=0x7fffe1d3da20) at ginputstream.c:532 #10 0x00007ffff0f711f3 in g_task_return_now (task=0x555555a10de0 [GTask]) at gtask.c:1107 #11 0x00007ffff0f71229 in complete_in_idle_cb (task=0x555555a10de0) at gtask.c:1121 #12 0x00007ffff07d06ba in g_main_context_dispatch (context=0x555555588dd0) at gmain.c:3154 #13 0x00007ffff07d06ba in g_main_context_dispatch (context=context@entry=0x555555588dd0) at gmain.c:3769 #14 0x00007ffff07d0a70 in g_main_context_iterate (context=0x555555588dd0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840 #15 0x00007ffff07d0d92 in g_main_loop_run (loop=0x555555c58590) at gmain.c:4034 #16 0x00007ffff5553770 in WTF::RunLoop::run() () at /usr/src/debug/webkitgtk-2.12.5/Source/WTF/wtf/glib/RunLoopGLib.cpp:94 #17 0x00007ffff5ff289d in WebKit::ChildProcessMain<WebKit::NetworkProcess, WebKit::NetworkProcessMain>(int, char**) (argc=<optimized out>, argv=0x7fffffffde28) at /usr/src/debug/webkitgtk-2.12.5/Source/WebKit2/Shared/unix/ChildProcessMain.h:61 #18 0x00007fffebcd6731 in __libc_start_main (main= 0x555555554c20 <main(int, char**)>, argc=2, argv=0x7fffffffde28, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffde18) at ../csu/libc-start.c:289 #19 0x0000555555554c79 in _start () (more detailed version attached)
Attachments
Backtrace from gdb attached to WebKitNetworkProcess
(50.75 KB, text/plain)
2016-09-22 14:44 PDT
,
Christian Stadelmann
no flags
Details
MHTML file from this website
(597.75 KB, application/x-mimearchive)
2016-09-22 14:50 PDT
,
Christian Stadelmann
no flags
Details
View All
Add attachment
proposed patch, testcase, etc.
Christian Stadelmann
Comment 1
2016-09-22 14:50:01 PDT
Created
attachment 289606
[details]
MHTML file from this website Please note that this website also breaks firefox, see
https://bugzilla.redhat.com/show_bug.cgi?id=1378601
While trying to save the website I noticed the title is too long so it cannot be saved into a MHTML file without renaming. Opening the MHTML file with epiphany does NOT make this bug reappear. Reloading the page from the URL does, though.
David H. Gutteridge
Comment 2
2016-09-23 14:55:53 PDT
I can also reproduce this issue with WebKitGTK4 2.14.0 and Epiphany 3.20.4. The behaviour is similar, but after WebKitNetworkProcess stays at 100% for some minutes, it drops off, and WebKitWebProcess goes to 100% and stays there, at which point I can't scroll in that page anymore. (When WebKitNetworkProcess is running, I can scroll and view what's been rendered so far.) (I can also reproduce similar behaviour with both Safari 9.1.3 and 10.0 on El Capitan 10.11.6.)
Carlos Garcia Campos
Comment 3
2016-09-24 02:09:52 PDT
(In reply to
comment #2
)
> I can also reproduce this issue with WebKitGTK4 2.14.0 and Epiphany 3.20.4. > The behaviour is similar, but after WebKitNetworkProcess stays at 100% for > some minutes, it drops off, and WebKitWebProcess goes to 100% and stays > there, at which point I can't scroll in that page anymore. (When > WebKitNetworkProcess is running, I can scroll and view what's been rendered > so far.) > > (I can also reproduce similar behaviour with both Safari 9.1.3 and 10.0 on > El Capitan 10.11.6.)
It's not GTK+ specific then.
Chris Dumez
Comment 4
2016-09-24 09:15:56 PDT
Given that this happens with all browsers, I think it is safe to assume this is caused by bad content and not a specific bug in WebKit. The page seems to be generating a large amount of content and it keeps getting bigger and bigger. It causes a lot of network activity, a lot of CSS / HTML parsing and relayout.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug