Bug 221023 - REGRESSION(r271879) [Soup] Crashes after SoupRequest changes
Summary: REGRESSION(r271879) [Soup] Crashes after SoupRequest changes
Status: RESOLVED DUPLICATE of bug 220981
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-01-26 20:20 PST by Lauro Moura
Modified: 2021-01-27 00:40 PST (History)
2 users (show)

See Also:


Attachments
Crash log for fast/events/event-handler-detached-document.html (didSendRequest) (22.23 KB, text/plain)
2021-01-26 20:23 PST, Lauro Moura
no flags Details
Crash log for fast/encoding/char-decoding.html (SOUP_MESSAGE_HTTP assert) (28.15 KB, text/plain)
2021-01-26 20:33 PST, Lauro Moura
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lauro Moura 2021-01-26 20:20:14 PST
A few tests are either crashing after r271879:

# Crash inside createRequest (SOUP_MESSAGE_HTTP)
fast/encoding/char-decoding-mac.html
fast/encoding/char-decoding.html
imported/w3c/web-platform-tests/xhr/send-network-error-sync-events.sub.htm
svg/load-event-detached.html

# Crash inside NetworkDataTaskSoup::didSendRequest.
# No Remote log, had to get locally
fast/events/event-handler-detached-document.html
imported/w3c/web-platform-tests/xhr/xmlhttprequest-sync-block-defer-scripts.html
imported/w3c/web-platform-tests/xhr/xmlhttprequest-sync-block-scripts.html
imported/w3c/web-platform-tests/xhr/xmlhttprequest-sync-default-feature-policy.sub.html
imported/w3c/web-platform-tests/xhr/xmlhttprequest-sync-not-hang-scriptloader.html

Detailed traces in the next comments.
Comment 1 Lauro Moura 2021-01-26 20:23:40 PST
Created attachment 418500 [details]
Crash log for fast/events/event-handler-detached-document.html (didSendRequest)

Crash log for fast/events/event-handler-detached-document.html

Thread 1:

Thread 1 (Thread 0x7f7bdc7b49c0 (LWP 40)):
#0  0x00007f7be38c0c92 in WebKit::NetworkDataTaskSoup::didSendRequest(WTF::GRefPtr<_GInputStream>&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#1  0x00007f7be38c15dd in WebKit::NetworkDataTaskSoup::sendRequestCallback(_SoupRequest*, _GAsyncResult*, WebKit::NetworkDataTaskSoup*) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#2  0x00007f7bdda0f539 in g_task_return_now (task=task@entry=0x55e6069dfcb0 [GTask]) at ../gio/gtask.c:1215
#3  0x00007f7bdda0f57d in complete_in_idle_cb (task=0x55e6069dfcb0) at ../gio/gtask.c:1229
#4  0x00007f7be0d5a18f in g_main_dispatch (context=0x55e6069ba5a0) at ../glib/gmain.c:3325
#5  g_main_context_dispatch (context=0x55e6069ba5a0) at ../glib/gmain.c:4043
#6  0x00007f7be0d5a538 in g_main_context_iterate (context=0x55e6069ba5a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4119
#7  0x00007f7be0d5a853 in g_main_loop_run (loop=0x55e6069bb750) at ../glib/gmain.c:4317
#8  0x00007f7be7621c38 in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#9  0x00007f7be38ba2ca in WebKit::NetworkProcessMain(int, char**) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#10 0x00007f7be05c0062 in __libc_start_main (main=0x55e605c97780 <main>, argc=3, argv=0x7ffc9a4765d8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc9a4765c8) at ../csu/libc-start.c:308
#11 0x000055e605c977be in _start () at ../sysdeps/x86_64/start.S:120
Comment 2 Lauro Moura 2021-01-26 20:33:31 PST
Created attachment 418501 [details]
Crash log for fast/encoding/char-decoding.html (SOUP_MESSAGE_HTTP assert)

Thread 1:

Thread 1 (Thread 0x7f194daec9c0 (LWP 11778)):
#0  g_logv (log_domain=0x7f1952007a06 "libsoup", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1377
#1  0x00007f1952099c23 in g_log (log_domain=log_domain@entry=0x7f1952007a06 "libsoup", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7f19520ef95f "%s: assertion '%s' failed") at ../glib/gmessages.c:1415
#2  0x00007f195209a41d in g_return_if_fail_warning (log_domain=log_domain@entry=0x7f1952007a06 "libsoup", pretty_function=pretty_function@entry=0x7f195200e240 <__FUNCTION__.0> "soup_request_http_get_message", expression=expression@entry=0x7f195200e1ce "SOUP_IS_REQUEST_HTTP (http)") at ../glib/gmessages.c:2771
#3  0x00007f1951fe49ba in soup_request_http_get_message (http=0x55ca4f364b90 [SoupRequestData]) at ../libsoup/soup-request-http.c:231
#4  0x00007f1954bf2fd1 in WebKit::NetworkDataTaskSoup::createRequest(WebCore::ResourceRequest&&, WebKit::NetworkDataTaskSoup::WasBlockingCookies) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#5  0x00007f1954bf5269 in WebKit::NetworkDataTaskSoup::NetworkDataTaskSoup(WebKit::NetworkSession&, WebKit::NetworkDataTaskClient&, WebCore::ResourceRequest const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::StoredCredentialsPolicy, WebCore::ContentSniffingPolicy, WebCore::ContentEncodingSniffingPolicy, bool, bool) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#6  0x00007f1954ac9762 in WebKit::NetworkDataTask::create(WebKit::NetworkSession&, WebKit::NetworkDataTaskClient&, WebKit::NetworkLoadParameters const&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#7  0x00007f1954ad0451 in WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, WebCore::BlobRegistryImpl*, WebKit::NetworkLoadParameters&&, WebKit::NetworkSession&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#8  0x00007f1954aff323 in WebKit::NetworkResourceLoader::startNetworkLoad(WebCore::ResourceRequest&&, WebKit::NetworkResourceLoader::FirstLoad) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#9  0x00007f1954af665d in WTF::Detail::CallableWrapper<WebKit::NetworkResourceLoader::start()::{lambda(auto:1&&)#1}, void, WTF::Variant<WebCore::ResourceRequest, WebKit::NetworkLoadChecker::RedirectionTriplet, WTF::Variant::ResourceError>&&>::call(WTF::Variant<WebCore::ResourceRequest, WebKit::NetworkLoadChecker::RedirectionTriplet, WTF::Variant::ResourceError>) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#10 0x00007f1954af9099 in WebKit::NetworkLoadChecker::continueCheckingRequest(WebCore::ResourceRequest&&, WTF::CompletionHandler<void (WTF::Variant<WebCore::ResourceRequest, WebKit::NetworkLoadChecker::RedirectionTriplet, WebCore::ResourceError>&&)>&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#11 0x00007f1954af9885 in WebKit::NetworkLoadChecker::processContentRuleListsForLoad(WebCore::ResourceRequest&&, WTF::CompletionHandler<void (std::experimental::fundamentals_v3::expected<WebKit::NetworkLoadChecker::ContentExtensionResult, WebCore::ResourceError>&&)>&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#12 0x00007f1954af9e19 in auto WebKit::NetworkLoadChecker::checkRequest(WebCore::ResourceRequest&&, WebCore::ContentSecurityPolicyClient*, WTF::CompletionHandler<void (WTF::Variant<WebCore::ResourceRequest, WebKit::NetworkLoadChecker::RedirectionTriplet, WebCore::ResourceError>&&)>&&)::{lambda(auto:1&&)#1}::operator()<WebCore::ResourceRequest>(WebCore::ResourceRequest&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#13 0x00007f1954afa0a8 in WebKit::NetworkLoadChecker::applyHTTPSUpgradeIfNeeded(WebCore::ResourceRequest&&, WTF::CompletionHandler<void (WebCore::ResourceRequest&&)>&&) const () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#14 0x00007f1954afa250 in WebKit::NetworkLoadChecker::checkRequest(WebCore::ResourceRequest&&, WebCore::ContentSecurityPolicyClient*, WTF::CompletionHandler<void (WTF::Variant<WebCore::ResourceRequest, WebKit::NetworkLoadChecker::RedirectionTriplet, WebCore::ResourceError>&&)>&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#15 0x00007f1954b0c5aa in WebKit::NetworkResourceLoader::start() () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#16 0x00007f1954aceff9 in WebKit::NetworkConnectionToWebProcess::performSynchronousLoad(WebKit::NetworkResourceLoadParameters&&, WTF::CompletionHandler<void (WebCore::ResourceError const&, WebCore::ResourceResponse const&, WTF::Vector<char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)>&&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#17 0x00007f19548ce254 in void IPC::handleMessageSynchronous<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad, WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters&&, WTF::CompletionHandler<void (WebCore::ResourceError const&, WebCore::ResourceResponse const&, WTF::Vector<char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)>&&)>(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder, std::default_delete<IPC::Encoder> >&, WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters&&, WTF::CompletionHandler<void (WebCore::ResourceError const&, WebCore::ResourceResponse const&, WTF::Vector<char, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)>&&)) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#18 0x00007f19548c4afb in WebKit::NetworkConnectionToWebProcess::didReceiveSyncNetworkConnectionToWebProcessMessage(IPC::Connection&, IPC::Decoder&, std::unique_ptr<IPC::Encoder, std::default_delete<IPC::Encoder> >&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#19 0x00007f1954c05eed in IPC::Connection::dispatchSyncMessage(IPC::Decoder&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#20 0x00007f1954c05fa2 in IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder, std::default_delete<IPC::Decoder> >) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#21 0x00007f1954c064e6 in IPC::Connection::SyncMessageState::dispatchMessagesAndResetDidScheduleDispatchMessagesForConnection(IPC::Connection&) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#22 0x00007f19588eb438 in WTF::RunLoop::performWork() () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#23 0x00007f1958957bb9 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#24 0x00007f195895856f in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#25 0x00007f195209218f in g_main_dispatch (context=0x55ca4f3175a0) at ../glib/gmain.c:3325
#26 g_main_context_dispatch (context=0x55ca4f3175a0) at ../glib/gmain.c:4043
#27 0x00007f1952092538 in g_main_context_iterate (context=0x55ca4f3175a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4119
#28 0x00007f1952092853 in g_main_loop_run (loop=0x55ca4f318750) at ../glib/gmain.c:4317
#29 0x00007f19589586b8 in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#30 0x00007f1954bf183a in WebKit::NetworkProcessMain(int, char**) () at /app/webkit/WebKitBuild/Release/lib/libWPEWebKit-1.0.so.3
#31 0x00007f19518f8062 in __libc_start_main (main=0x55ca4d47e780 <main>, argc=3, argv=0x7ffeef9f33d8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffeef9f33c8) at ../csu/libc-start.c:308
#32 0x000055ca4d47e7be in _start () at ../sysdeps/x86_64/start.S:120
Comment 3 Lauro Moura 2021-01-26 20:34:11 PST
(In reply to Lauro Moura from comment #0)
> A few tests are either crashing after r271879:
> 
> # Crash inside createRequest (SOUP_MESSAGE_HTTP)
> fast/encoding/char-decoding-mac.html
> fast/encoding/char-decoding.html
> imported/w3c/web-platform-tests/xhr/send-network-error-sync-events.sub.htm
> svg/load-event-detached.html
> 

Running locally, these tests ended up crashing in didSendRequest instead.
Comment 4 Lauro Moura 2021-01-26 20:39:51 PST
Gardened in r271932.
Comment 5 Carlos Garcia Campos 2021-01-27 00:40:08 PST

*** This bug has been marked as a duplicate of bug 220981 ***