Bug 224791 - [GLIB] REGRESSION(r276246): fast/cookies/cookie-averse-document.html and fast/cookies/local-file-can-set-cookies.html are crashing
Summary: [GLIB] REGRESSION(r276246): fast/cookies/cookie-averse-document.html and fast...
Status: RESOLVED CONFIGURATION CHANGED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-04-19 17:22 PDT by Diego Pino
Modified: 2021-05-08 23:30 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 Diego Pino 2021-04-19 17:22:10 PDT
Two tests are crashing after r276246:

  fast/cookies/cookie-averse-document.html [ Crash ]
  fast/cookies/local-file-can-set-cookies.html [ Crash ]

fast/cookies/local-file-can-set-cookies.html is actually a flaky crash, but it crashes most of the times.

https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/r276264%20%281267%29/fast/cookies/local-file-can-set-cookies-crash-log.txt

STDERR: (process:52022): libsoup-CRITICAL **: 12:13:45.535: parse_one_cookie: assertion 'origin == NULL || SOUP_URI_IS_VALID (origin)' failed

Thread 1 (Thread 0x7fcdf1a35e80 (LWP 52022)):
#0  g_logv (log_domain=0x7fcdf2e0795b "libsoup", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413
#1  0x00007fcdf411e973 in g_log (log_domain=log_domain@entry=0x7fcdf2e0795b "libsoup", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7fcdf4176ad0 "%s: assertion '%s' failed") at ../glib/gmessages.c:1451
#2  0x00007fcdf411f19d in g_return_if_fail_warning (log_domain=log_domain@entry=0x7fcdf2e0795b "libsoup", pretty_function=pretty_function@entry=0x7fcdf2e09b70 <__func__.6> "parse_one_cookie", expression=expression@entry=0x7fcdf2e09a88 "origin == NULL || SOUP_URI_IS_VALID (origin)") at ../glib/gmessages.c:2883
#3  0x00007fcdf2dd30b4 in parse_one_cookie (header=0x7fcdf11fd1f0 "ppkcookie1=testcookie", origin=0x5583703bc310) at ../libsoup/cookies/soup-cookie.c:180
#4  0x00007fcdfb923f1a in WebCore::NetworkStorageSession::setCookiesFromDOM(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::Optional<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Optional<WTF::ObjectIdentifier<WebCore::PageIdentifierType> >, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking) const () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#5  0x00007fcdf97b842e in WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#6  0x00007fcdf960b345 in void IPC::handleMessage<Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM, WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking)>(IPC::Decoder&, WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking)) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#7  0x00007fcdf95f37ec in WebKit::NetworkConnectionToWebProcess::didReceiveNetworkConnectionToWebProcessMessage(IPC::Connection&, IPC::Decoder&) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#8  0x00007fcdf990725d in IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder, std::default_delete<IPC::Decoder> >) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#9  0x00007fcdf9908bf1 in IPC::Connection::dispatchOneIncomingMessage() () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#10 0x00007fcdf78609db in WTF::RunLoop::performWork() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#11 0x00007fcdf78d54a9 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#12 0x00007fcdf78d5f8f in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#13 0x00007fcdf4116dbf in g_main_dispatch (context=0x558370357170) at ../glib/gmain.c:3337
#14 g_main_context_dispatch (context=0x558370357170) at ../glib/gmain.c:4055
#15 0x00007fcdf4117168 in g_main_context_iterate (context=0x558370357170, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#16 0x00007fcdf4117483 in g_main_loop_run (loop=0x558370358200) at ../glib/gmain.c:4329
#17 0x00007fcdf78d60d8 in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#18 0x00007fcdf98f343a in WebKit::NetworkProcessMain(int, char**) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#19 0x00007fcdf3ab9062 in __libc_start_main (main=0x55837028c850 <main>, argc=3, argv=0x7ffcd95548d8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffcd95548c8) at ../csu/libc-start.c:308
#20 0x000055837028c88e in _start () at ../sysdeps/x86_64/start.S:120

https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/r276264%20%281267%29/fast/cookies/cookie-averse-document-crash-log.txt

STDERR: (process:2240): libsoup-CRITICAL **: 12:13:34.768: parse_one_cookie: assertion 'origin == NULL || SOUP_URI_IS_VALID (origin)' failed

Thread 1 (Thread 0x7f63d8719e80 (LWP 2240)):
#0  g_logv (log_domain=0x7f63d9aeb95b "libsoup", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413
#1  0x00007f63dae02973 in g_log (log_domain=log_domain@entry=0x7f63d9aeb95b "libsoup", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7f63dae5aad0 "%s: assertion '%s' failed") at ../glib/gmessages.c:1451
#2  0x00007f63dae0319d in g_return_if_fail_warning (log_domain=log_domain@entry=0x7f63d9aeb95b "libsoup", pretty_function=pretty_function@entry=0x7f63d9aedb70 <__func__.6> "parse_one_cookie", expression=expression@entry=0x7f63d9aeda88 "origin == NULL || SOUP_URI_IS_VALID (origin)") at ../glib/gmessages.c:2883
#3  0x00007f63d9ab70b4 in parse_one_cookie (header=0x7f63d7e76b50 "ppkcookie1=testcookie", origin=0x555b87530190) at ../libsoup/cookies/soup-cookie.c:180
#4  0x00007f63e2607f1a in WebCore::NetworkStorageSession::setCookiesFromDOM(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::Optional<WTF::ObjectIdentifier<WebCore::FrameIdentifierType> >, WTF::Optional<WTF::ObjectIdentifier<WebCore::PageIdentifierType> >, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking) const () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#5  0x00007f63e049c42e in WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#6  0x00007f63e02ef345 in void IPC::handleMessage<Messages::NetworkConnectionToWebProcess::SetCookiesFromDOM, WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking)>(IPC::Decoder&, WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WTF::URL const&, WebCore::SameSiteInfo const&, WTF::URL const&, WTF::ObjectIdentifier<WebCore::FrameIdentifierType>, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebCore::ShouldAskITP, WTF::String const&, WebCore::ShouldRelaxThirdPartyCookieBlocking)) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#7  0x00007f63e02d77ec in WebKit::NetworkConnectionToWebProcess::didReceiveNetworkConnectionToWebProcessMessage(IPC::Connection&, IPC::Decoder&) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#8  0x00007f63e05eb25d in IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder, std::default_delete<IPC::Decoder> >) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#9  0x00007f63e05ecbf1 in IPC::Connection::dispatchOneIncomingMessage() () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#10 0x00007f63de5449db in WTF::RunLoop::performWork() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#11 0x00007f63de5b94a9 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#12 0x00007f63de5b9f8f in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#13 0x00007f63dadfadbf in g_main_dispatch (context=0x555b874c2170) at ../glib/gmain.c:3337
#14 g_main_context_dispatch (context=0x555b874c2170) at ../glib/gmain.c:4055
#15 0x00007f63dadfb168 in g_main_context_iterate (context=0x555b874c2170, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#16 0x00007f63dadfb483 in g_main_loop_run (loop=0x555b874c3200) at ../glib/gmain.c:4329
#17 0x00007f63de5ba0d8 in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.1.so.0
#18 0x00007f63e05d743a in WebKit::NetworkProcessMain(int, char**) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.1.so.0
#19 0x00007f63da79d062 in __libc_start_main (main=0x555b872cf850 <main>, argc=3, argv=0x7ffe19ccc818, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe19ccc808) at ../csu/libc-start.c:308
#20 0x0000555b872cf88e in _start () at ../sysdeps/x86_64/start.S:120
Comment 1 Diego Pino 2021-04-19 17:53:55 PDT
These two tests are already marked as failure in webkit.org/b/192883. After the crash is solved, if the tests pass, webkit.org/b/192883 should be marked as closed.
Comment 2 Diego Pino 2021-04-19 17:55:36 PDT
Updated test expectations in r276279.
Comment 3 Diego Pino 2021-04-19 20:13:58 PDT
imported/w3c/web-platform-tests/fetch/nosniff/parsing-nosniff.window.html is flaky since:

r276248                       NOERROR
[r276249-r276251]             UNKNOWN
[r276252-r276253]             TEXT PASS (Expected: PASS)

Very likely due to r276246.

Test dashboard:

https://results.webkit.org/?platform=GTK&platform=WPE&suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Ffetch%2Fnosniff%2Fparsing-nosniff.window.html

I will mark it as flaky in TestExceptions and file it under this bug.
Comment 4 Diego Pino 2021-04-19 20:14:50 PDT
I forgot to add a sample of the test error.

https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/r276274%20%281271%29/imported/w3c/web-platform-tests/fetch/nosniff/parsing-nosniff.window-diff.txt

--- /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/fetch/nosniff/parsing-nosniff.window-expected.txt
+++ /home/buildbot/worker/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/fetch/nosniff/parsing-nosniff.window-actual.txt
@@ -5,13 +5,13 @@
 PASS X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!
 PASS X-Content-Type-Options%3A%20%40%23%24%23%25%25%26%5E%26%5E*()()11!%2Cnosniff
 PASS X-Content-Type-Options%3A%20nosniff%0D%0AX-Content-Type-Options%3A%20no
-PASS X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff
+FAIL X-Content-Type-Options%3A%20no%0D%0AX-Content-Type-Options%3A%20nosniff assert_unreached: Script should have loaded Reached unreachable code
 PASS X-Content-Type-Options%3A%0D%0AX-Content-Type-Options%3A%20nosniff
 PASS X-Content-Type-Options%3A%20%2Cnosniff
 PASS X-Content-Type-Options%3A%20nosniff%0C
-PASS X-Content-Type-Options%3A%20nosniff%0B
+FAIL X-Content-Type-Options%3A%20nosniff%0B assert_unreached: Script should have loaded Reached unreachable code
 PASS X-Content-Type-Options%3A%20nosniff%0B%2Cnosniff
 PASS X-Content-Type-Options%3A%20'NosniFF'
 PASS X-Content-Type-Options%3A%20%22nosniFF%22
-PASS Content-Type-Options%3A%20nosniff
+FAIL Content-Type-Options%3A%20nosniff assert_unreached: Script should have loaded Reached unreachable code
Comment 5 Diego Pino 2021-04-19 20:20:15 PDT
imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.html is also flaky since r276246.

r276245                       NOERROR
r276246                       TIMEOUT PASS (Expected: PASS)
r276247                       UNKNOWN


https://results.webkit.org/?platform=GTK&platform=WPE&suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fmimesniff%2Fmime-types%2Fparsing.any.html
Comment 6 Carlos Garcia Campos 2021-04-20 00:24:56 PDT
This is fixed in libsoup master, the crashes will be fixed once we upgrade to libsoup 2.99.4, and the test failures too (bug #192883)
Comment 7 Radar WebKit Bug Importer 2021-04-26 17:23:27 PDT
<rdar://problem/77184196>
Comment 8 Carlos Garcia Campos 2021-05-08 23:30:17 PDT
This was fixed by the libsoup version bump.