WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
154169
REGRESSION(
r196384
): [GTK] ASSERTION FAILED: SessionTracker::storageSession(parameters.sessionID)
https://bugs.webkit.org/show_bug.cgi?id=154169
Summary
REGRESSION(r196384): [GTK] ASSERTION FAILED: SessionTracker::storageSession(p...
Carlos Garcia Campos
Reported
2016-02-12 08:45:27 PST
Several bugs started to fail in the GTK+ Debug bot due to this assert after
r196384
. STDERR: ASSERTION FAILED: SessionTracker::storageSession(parameters.sessionID) STDERR: ../../Source/WebKit2/NetworkProcess/NetworkLoad.cpp(63) : WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, const WebKit::NetworkLoadParameters&) STDERR: 1 0x7ffbcd4f0fc3 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTFCrashImpl+0x1e) [0x7ffbcd4f0fc3] STDERR: 2 0x7ffbd38eb0a3 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, WebKit::NetworkLoadParameters const&)+0x10f) [0x7ffbd38eb0a3] STDERR: 3 0x7ffbd38fc344 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(std::_Unique_if<WebKit::NetworkLoad>::_Single_object std::make_unique<WebKit::NetworkLoad, WebKit::NetworkResourceLoader&, WebKit::NetworkLoadParameters&>(WebKit::NetworkResourceLoader&, WebKit::NetworkLoadParameters&)+0x52) [0x7ffbd38fc344] STDERR: 4 0x7ffbd38f8590 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkResourceLoader::startNetworkLoad(WebCore::ResourceRequest const&)+0x176) [0x7ffbd38f8590] STDERR: 5 0x7ffbd38f7fb9 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkResourceLoader::start()+0xad) [0x7ffbd38f7fb9] STDERR: 6 0x7ffbd38e5a20 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad(WebKit::NetworkResourceLoadParameters const&)+0x92) [0x7ffbd38e5a20] STDERR: 7 0x7ffbd3a51aef /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::callMemberFunctionImpl<WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&), std::tuple<WebKit::NetworkResourceLoadParameters>, 0ul>(WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&), std::tuple<WebKit::NetworkResourceLoadParameters>&&, std::index_sequence<0ul>)+0x80) [0x7ffbd3a51aef] STDERR: 8 0x7ffbd3a51070 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::callMemberFunction<WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&), std::tuple<WebKit::NetworkResourceLoadParameters>, std::make_index_sequence<1ul> >(std::tuple<WebKit::NetworkResourceLoadParameters>&&, WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&))+0x41) [0x7ffbd3a51070] STDERR: 9 0x7ffbd3a4e8d2 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(void IPC::handleMessage<Messages::NetworkConnectionToWebProcess::ScheduleResourceLoad, WebKit::NetworkConnectionToWebProcess, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&)>(IPC::MessageDecoder&, WebKit::NetworkConnectionToWebProcess*, void (WebKit::NetworkConnectionToWebProcess::*)(WebKit::NetworkResourceLoadParameters const&))+0xca) [0x7ffbd3a4e8d2] STDERR: 10 0x7ffbd3a4db4b /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkConnectionToWebProcess::didReceiveNetworkConnectionToWebProcessMessage(IPC::Connection&, IPC::MessageDecoder&)+0xa1) [0x7ffbd3a4db4b] STDERR: 11 0x7ffbd38e5633 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebKit::NetworkConnectionToWebProcess::didReceiveMessage(IPC::Connection&, IPC::MessageDecoder&)+0x85) [0x7ffbd38e5633] STDERR: 12 0x7ffbd35283b0 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchMessage(IPC::MessageDecoder&)+0x3a) [0x7ffbd35283b0] STDERR: 13 0x7ffbd3528513 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchMessage(std::unique_ptr<IPC::MessageDecoder, std::default_delete<IPC::MessageDecoder> >)+0x161) [0x7ffbd3528513] STDERR: 14 0x7ffbd35286fa /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(IPC::Connection::dispatchOneMessage()+0xc8) [0x7ffbd35286fa] STDERR: 15 0x7ffbd35281fe /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x4ba71fe) [0x7ffbd35281fe] STDERR: 16 0x7ffbd35299b9 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x4ba89b9) [0x7ffbd35299b9] STDERR: 17 0x7ffbd3492a48 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(std::function<void ()>::operator()() const+0x32) [0x7ffbd3492a48] STDERR: 18 0x7ffbcd50ad3d /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTF::RunLoop::performWork()+0xdb) [0x7ffbcd50ad3d] STDERR: 19 0x7ffbcd543310 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1fd8310) [0x7ffbcd543310] STDERR: 20 0x7ffbcd543335 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1fd8335) [0x7ffbcd543335] STDERR: 21 0x7ffbcd5432b0 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1fd82b0) [0x7ffbcd5432b0] STDERR: 22 0x7ffbcd5432df /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(+0x1fd82df) [0x7ffbcd5432df] STDERR: 23 0x7ffbc8afba26 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x53a26) [0x7ffbc8afba26] STDERR: 24 0x7ffbc8afc854 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_main_context_dispatch+0x33) [0x7ffbc8afc854] STDERR: 25 0x7ffbc8afca39 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(+0x54a39) [0x7ffbc8afca39] STDERR: 26 0x7ffbc8afce60 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/DependenciesGTK/Root/lib/libglib-2.0.so.0(g_main_loop_run+0x1d7) [0x7ffbc8afce60] STDERR: 27 0x7ffbcd5438b0 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTF::RunLoop::run()+0xac) [0x7ffbcd5438b0] STDERR: 28 0x7ffbd394c0a6 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(int WebKit::ChildProcessMain<WebKit::NetworkProcess, WebKit::NetworkProcessMain>(int, char**)+0x82) [0x7ffbd394c0a6] STDERR: 29 0x7ffbd394bfa4 /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(NetworkProcessMainUnix+0x20) [0x7ffbd394bfa4] STDERR: 30 0x400cba /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/Debug/bin/WebKitNetworkProcess(main+0x34) [0x400cba] STDERR: 31 0x7ffbc51dcb45 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7ffbc51dcb45]
Attachments
Add some prints to stderr
(2.74 KB, patch)
2016-02-23 05:48 PST
,
Adrien Plazas
no flags
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Alex Christensen
Comment 1
2016-02-12 10:30:19 PST
I'm also hitting the ASSERT_NOT_REACHED just above it sometimes with Top Sites in Safari when using NetworkSession. I'm not sure why, but the reasons might be related. The most confusing thing is why the assertion is not failing when not using NetworkSession.
Adrien Plazas
Comment 2
2016-02-23 05:48:45 PST
Created
attachment 272013
[details]
Add some prints to stderr This patch add traces (prints to stderr) to accessors of the session map. When running the http/tests/security/appcache-in-private-browsing.html test with this patch, it produces this trace before the usual stacktrace: SessionTracker::storageSessionMap() SessionTracker::storageSessionMap() SessionTracker::storageSessionMap() SessionTracker::destroySession(2) SessionTracker::storageSession(1) default case: 0x7fe2397fb480 SessionTracker::storageSession(1) default case: 0x7fe2397fb480 SessionTracker::storageSession(1) default case: 0x7fe2397fb480 SessionTracker::storageSession(2) null case: nullptr SessionTracker::setSession(2, 0x7fff56df8620) SessionTracker::setSession(2, 0x7fff56df8620) : 0x7fad345b3f80 SessionTracker::storageSession(2) session case: 0x7fad345b3f80 SessionTracker::storageSession(2) null case: nullptr ASSERTION FAILED: SessionTracker::storageSession(parameters.sessionID) ../../Source/WebKit2/NetworkProcess/NetworkLoad.cpp(63) : WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, const WebKit::NetworkLoadParameters&) I checked the first calls to SessionTracker::storageSessionMap as they give direct access to the session map put I found nothing suspicious with the code there. Though what I find suspicious is the end of the trace: SessionTracker::storageSession(2) session case: 0x7fad345b3f80 SessionTracker::storageSession(2) null case: nullptr ASSERTION FAILED: SessionTracker::storageSession(parameters.sessionID) When looking two times for the same element without editing the map, the first time it is found but not the second time... So far I have no way to explain this, does anybody have a clue?
Alex Christensen
Comment 3
2016-02-23 09:29:36 PST
Print out the process identifier. One of those accesses is from the NetworkProcess and one is from the WebProcess.
Adrien Plazas
Comment 4
2016-02-24 01:20:52 PST
You're right: STDERR: PID:7900 SessionTracker::storageSessionMap() STDERR: PID:7900 SessionTracker::storageSessionMap() STDERR: PID:7902 SessionTracker::storageSessionMap() STDERR: PID:7902 SessionTracker::destroySession(2) STDERR: PID:7900 SessionTracker::storageSession(1) default case: 0x7f5c899fb480 STDERR: PID:7900 SessionTracker::storageSession(1) default case: 0x7f5c899fb480 STDERR: PID:7900 SessionTracker::storageSession(1) default case: 0x7f5c899fb480 STDERR: PID:7902 SessionTracker::storageSession(2) null case: nullptr STDERR: PID:7902 SessionTracker::setSession(2, 0x7ffef6343bb0) STDERR: PID:7902 SessionTracker::setSession(2, 0x7ffef6343bb0) : 0x7f20c45b7900 STDERR: PID:7902 SessionTracker::storageSession(2) session case: 0x7f20c45b7900 STDERR: PID:7900 SessionTracker::storageSession(2) null case: nullptr STDERR: ASSERTION FAILED: SessionTracker::storageSession(parameters.sessionID) STDERR: ../../Source/WebKit2/NetworkProcess/NetworkLoad.cpp(63) : WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, const WebKit::NetworkLoadParameters&)
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