Early hint preloader, phase 2, informing the speculative loader
Categories
(Core :: Networking: HTTP, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox109 | --- | fixed |
People
(Reporter: manuel, Assigned: manuel)
References
(Blocks 1 open bug)
Details
(Whiteboard: [necko-triaged])
Attachments
(14 files, 5 obsolete files)
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
Details |
Follow up on 1753730#c12 to make the preloader reliable.
Might help with Devtools (Bug 1761248).
Updated•2 years ago
|
Assignee | ||
Comment 1•2 years ago
|
||
Assignee | ||
Comment 2•2 years ago
|
||
Depends on D149643
Updated•2 years ago
|
Assignee | ||
Comment 3•2 years ago
|
||
Depends on D149643
Assignee | ||
Comment 4•2 years ago
|
||
Depends on D154222
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Assignee | ||
Comment 5•2 years ago
|
||
Depends on D154222
Assignee | ||
Comment 6•2 years ago
|
||
Depends on D154222
Assignee | ||
Comment 7•2 years ago
|
||
Updated•2 years ago
|
Assignee | ||
Comment 8•2 years ago
|
||
Updated•2 years ago
|
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Comment 10•2 years ago
|
||
bugherder |
Assignee | ||
Comment 11•2 years ago
|
||
Assignee | ||
Comment 12•2 years ago
|
||
Depends on D161172
Assignee | ||
Comment 13•2 years ago
|
||
Depends on D161173
Assignee | ||
Comment 14•2 years ago
|
||
Note that modules can't be specified in Link preloads with rel=preload
,
only in rel=modulepreload
. We currently only support rel=preload
in
early hints. See Bug 1798319 for updates on module preloads.
Depends on D161174
Assignee | ||
Comment 15•2 years ago
|
||
Depends on D161175
Assignee | ||
Comment 16•2 years ago
|
||
Depends on D161176
Assignee | ||
Comment 17•2 years ago
|
||
Depends on D161177
Assignee | ||
Comment 18•2 years ago
|
||
Depends on D161178
Assignee | ||
Comment 19•2 years ago
|
||
Previously those got cancelled to discourage http usage in new components.
Preloading them now to make this preloader behave the same way as the
preloader in the content process.
Depends on D161179
Assignee | ||
Comment 20•2 years ago
|
||
to make implementation more spec conform
Depends on D161180
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Assignee | ||
Comment 21•2 years ago
|
||
They won't get passed to the PreloadService anyway. Resulting in an unnecessary
additional load
Depends on D161181
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Comment 22•2 years ago
|
||
Comment 23•2 years ago
|
||
Backed out for causing CanonicalBrowsingContext crashes.
- backout: https://hg.mozilla.org/integration/autoland/rev/e2b41473c7ed7b21209ff83fd80017a4f7b5de8f
- push: https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&selectedTaskRun=L7wuCkh5TW207Ey7maeE6Q.0&revision=120838b58449ab57a04eee2823ead4054efd2e05
- failure log: https://treeherder.mozilla.org/logviewer?job_id=398438231&repo=autoland&lineNumber=5025
[task 2022-12-02T11:05:19.692Z] 11:05:19 WARNING - PROCESS-CRASH | image/test/mochitest/test_bug468160.html | application crashed [@ RefPtr<mozilla::dom::CanonicalBrowsingContext>::operator->() const]
Assignee | ||
Comment 24•2 years ago
|
||
Will figure out a fix (and run more tests next time). backtrace:
(gdb) bt
#0 RefPtr<mozilla::dom::CanonicalBrowsingContext>::operator->() const (this=<optimized out>) at /home/user/dev/gecko/obj-x86_64-pc-linux-gnu/dist/include/mozilla/RefPtr.h:314
#1 0x00007fffeab93071 in mozilla::net::DocumentLoadListener::AddURIVisit(nsIChannel*, unsigned int) (this=this@entry=0x7fffbfe4b8d0, aChannel=aChannel@entry=0x7fffac026250, aLoadFlags=<optimized out>)
at /home/user/dev/gecko/netwerk/ipc/DocumentLoadListener.cpp:448
#2 0x00007fffeab9bb66 in mozilla::net::DocumentLoadListener::AsyncOnChannelRedirect(nsIChannel*, nsIChannel*, unsigned int, nsIAsyncVerifyRedirectCallback*)
(this=0x7fffbfe4b8d0, aOldChannel=0x7fffac026250, aNewChannel=0x7fffac026c50, aFlags=1, aCallback=0x7fffa99212f0) at /home/user/dev/gecko/netwerk/ipc/DocumentLoadListener.cpp:2775
#3 0x00007fffeab9bd97 in non-virtual thunk to mozilla::net::DocumentLoadListener::AsyncOnChannelRedirect(nsIChannel*, nsIChannel*, unsigned int, nsIAsyncVerifyRedirectCallback*) ()
at /home/user/dev/gecko/obj-x86_64-pc-linux-gnu/dist/bin/libxul.so
#4 0x00007fffec937f6d in mozilla::dom::(anonymous namespace)::ClientChannelHelper::AsyncOnChannelRedirect(nsIChannel*, nsIChannel*, unsigned int, nsIAsyncVerifyRedirectCallback*)
(this=0x7fffbfeb1780, aOldChannel=0x7fffac026250, aNewChannel=0x7fffac026c50, aFlags=1, aCallback=0x7fffa99212f0) at /home/user/dev/gecko/dom/clients/manager/ClientChannelHelper.cpp:174
#5 0x00007fffea64b397 in mozilla::net::nsAsyncRedirectVerifyHelper::DelegateOnChannelRedirect(nsIChannelEventSink*, nsIChannel*, nsIChannel*, unsigned int)
(this=this@entry=0x7fffa99212e0, sink=0x7fffbfeb1788, oldChannel=0x7fffac026250, newChannel=0x7fffac026c50, flags=1) at /home/user/dev/gecko/netwerk/base/nsAsyncRedirectVerifyHelper.cpp:155
#6 0x00007fffea64b662 in mozilla::net::nsAsyncRedirectVerifyHelper::Run() (this=0x7fffa99212e0) at /home/user/dev/gecko/netwerk/base/nsAsyncRedirectVerifyHelper.cpp:260
#7 0x00007fffea4d2fe5 in mozilla::RunnableTask::Run() (this=0x7fffbd94fa00) at /home/user/dev/gecko/xpcom/threads/TaskController.cpp:538
#8 0x00007fffea4cc751 in mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=this@entry=0x7fffe2622d00, aProofOfLock=...)
at /home/user/dev/gecko/xpcom/threads/TaskController.cpp:851
#9 0x00007fffea4cb97e in mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal(mozilla::detail::BaseAutoLock<mozilla::Mutex&> const&) (this=this@entry=0x7fffe2622d00, aProofOfLock=...)
at /home/user/dev/gecko/xpcom/threads/TaskController.cpp:683
#10 0x00007fffea4cbbcb in mozilla::TaskController::ProcessPendingMTTask(bool) (this=0x7fffe2622d00, aMayWait=false) at /home/user/dev/gecko/xpcom/threads/TaskController.cpp:461
#11 0x00007fffea4ccb7d in mozilla::TaskController::InitializeInternal()::$_2::operator()() const (this=<optimized out>) at /home/user/dev/gecko/xpcom/threads/TaskController.cpp:187
#12 mozilla::detail::RunnableFunction<mozilla::TaskController::InitializeInternal()::$_2>::Run() (this=<optimized out>) at /home/user/dev/gecko/obj-x86_64-pc-linux-gnu/dist/include/nsThreadUtils.h:546
#13 0x00007fffea4e3647 in nsThread::ProcessNextEvent(bool, bool*) (this=0x7ffff78a3600, aMayWait=<optimized out>, aResult=0x7fffffffc4d7) at /home/user/dev/gecko/xpcom/threads/nsThread.cpp:1204
#14 0x00007fffea4e7211 in NS_ProcessNextEvent(nsIThread*, bool) (aThread=0x7ffff7bf3940, aThread@entry=0x7ffff78a3600, aMayWait=false) at /home/user/dev/gecko/xpcom/threads/nsThreadUtils.cpp:474
#15 0x00007fffead2db46 in mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) (this=0x7fffe273bdc0, aDelegate=0x7ffff7825c40) at /home/user/dev/gecko/ipc/glue/MessagePump.cpp:85
#16 0x00007fffeaca2a3f in MessageLoop::RunInternal() (this=this@entry=0x7ffff7825c40) at /home/user/dev/gecko/ipc/chromium/src/base/message_loop.cc:381
#17 0x00007fffeaca298f in MessageLoop::RunHandler() (this=0x7ffff7825c40) at /home/user/dev/gecko/ipc/chromium/src/base/message_loop.cc:374
#18 MessageLoop::Run() (this=0x7ffff7825c40) at /home/user/dev/gecko/ipc/chromium/src/base/message_loop.cc:356
#19 0x00007fffedad1bf7 in nsBaseAppShell::Run() (this=0x7fffe2778900) at /home/user/dev/gecko/widget/nsBaseAppShell.cpp:150
#20 0x00007fffef29061c in nsAppStartup::Run() (this=0x7fffe2724fb0) at /home/user/dev/gecko/toolkit/components/startup/nsAppStartup.cpp:295
#21 0x00007fffef3a1385 in XREMain::XRE_mainRun() (this=this@entry=0x7fffffffc850) at /home/user/dev/gecko/toolkit/xre/nsAppRunner.cpp:5767
#22 0x00007fffef3a1ec7 in XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) (this=this@entry=0x7fffffffc850, argc=argc@entry=5, argv=argv@entry=0x7fffffffdb58, aConfig=...)
at /home/user/dev/gecko/toolkit/xre/nsAppRunner.cpp:5960
#23 0x00007fffef3a2333 in XRE_main(int, char**, mozilla::BootstrapConfig const&) (argc=5, argv=0x7fffffffdb58, aConfig=...) at /home/user/dev/gecko/toolkit/xre/nsAppRunner.cpp:6016
#24 0x000055555559fdf6 in do_main(int, char**, char**) (argc=5, argv=0x7fffffffdb58, envp=0x7fffffffdb88) at /home/user/dev/gecko/browser/app/nsBrowserApp.cpp:226
#25 main(int, char**, char**) (argc=<optimized out>, argv=<optimized out>, envp=0x7fffffffdb88) at /home/user/dev/gecko/browser/app/nsBrowserApp.cpp:430
Comment 25•2 years ago
|
||
Comment 26•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/7a267d40f4ef
https://hg.mozilla.org/mozilla-central/rev/13a9f4631369
https://hg.mozilla.org/mozilla-central/rev/b4b920f24bed
https://hg.mozilla.org/mozilla-central/rev/c98f651b7439
https://hg.mozilla.org/mozilla-central/rev/ae5aec815b28
https://hg.mozilla.org/mozilla-central/rev/b348a6911423
https://hg.mozilla.org/mozilla-central/rev/ce8f0a8fa688
https://hg.mozilla.org/mozilla-central/rev/8575cd92e1d8
https://hg.mozilla.org/mozilla-central/rev/a6a5172b9746
https://hg.mozilla.org/mozilla-central/rev/cbbdb4b4aaa9
https://hg.mozilla.org/mozilla-central/rev/ca2681b0f792
https://hg.mozilla.org/mozilla-central/rev/35dde62c945a
https://hg.mozilla.org/mozilla-central/rev/f9edacd5c749
Updated•2 years ago
|
Comment 27•2 years ago
|
||
Comment on attachment 9294944 [details]
Bug 1771867 - Move structs to NeckoCommon to reuse them in Early Hint Preloader code r=#necko
Revision D136612 was moved to bug 1733498. Setting attachment 9294944 [details] to obsolete.
Description
•