Create a simple http channel which is only used for TRR
Categories
(Core :: Networking, task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox75 | --- | fixed |
People
(Reporter: kershaw, Assigned: kershaw)
References
Details
(Whiteboard: [necko-triaged])
Attachments
(7 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
See the design doc below.
https://docs.google.com/document/d/18yb_-rvC-Lj6uQVFGLrYvI3kNCEaDNq2gr-5VfI1TI0/edit?usp=sharing
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
Assignee | ||
Comment 2•4 years ago
|
||
Some obstacles when making SimpleHttpChannel off main thread.
SystemPrincipal
can only used on main thread. We can't sue it here.- LoadInfo expects that both loading and triggering principals not be null, so maybe we should create
SimpleHttpChannel
withoutLoadInfo
. - Need to modify
nsHttpHandler::NewChannelId
to make it thread safe. - Some functions below are expected to be called on main thread.
nsHttpTransaction::Init
NS_GetOriginAttributes
nsHttpTransaction::Init
HttpBaseChannel::MaybeWaitForUploadStreamLength
AltSvcCache::GetAltServiceMapping
HttpBaseChannel::SetNotificationCallbacks
HttpBaseChannel::ReleaseListeners
nsHttpTransaction::OnPush
nsDNSPrefetch
is main thread only.nsProtocolProxyService
is not thread safe.- Need to modify
TRR.cpp
andTRRService.cpp
to remove main thread assertion. - Need to dispatch
TRR
runnable to another thread.
Assignee | ||
Comment 3•4 years ago
|
||
Assignee | ||
Comment 4•4 years ago
|
||
Assignee | ||
Comment 5•4 years ago
|
||
Assignee | ||
Comment 6•4 years ago
|
||
Assignee | ||
Comment 7•4 years ago
|
||
Assignee | ||
Comment 8•4 years ago
|
||
(In reply to Kershaw Chang [:kershaw] from comment #0)
See the design doc below.
https://docs.google.com/document/d/18yb_-rvC-Lj6uQVFGLrYvI3kNCEaDNq2gr-5VfI1TI0/edit?usp=sharing
Honza, could you take a quick look at this doc?
I'd like to make sure that I don't miss anything important.
Thanks!
Assignee | ||
Comment 9•4 years ago
|
||
Assignee | ||
Comment 10•4 years ago
|
||
(In reply to Kershaw Chang [:kershaw] from comment #8)
(In reply to Kershaw Chang [:kershaw] from comment #0)
See the design doc below.
https://docs.google.com/document/d/18yb_-rvC-Lj6uQVFGLrYvI3kNCEaDNq2gr-5VfI1TI0/edit?usp=sharing
Honza, could you take a quick look at this doc?
I'd like to make sure that I don't miss anything important.Thanks!
Clear the ni. Feel free to file new bugs if you have any concerns or think something is missing.
Comment 11•4 years ago
|
||
Pushed by kjang@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9f788f296658 P1: Implementation of SimpleHttpChannel r=dragana https://hg.mozilla.org/integration/autoland/rev/169136e81b36 P2: Use nsHttpTransaction off main thread r=dragana https://hg.mozilla.org/integration/autoland/rev/aa2177a92447 P3: Make nsDNSPrefetch support off main thread r=dragana https://hg.mozilla.org/integration/autoland/rev/6163d720bd10 P4: Use nsInputStreamPump off main thread completely r=dragana https://hg.mozilla.org/integration/autoland/rev/8de2717c220c P5: Support calling AltSvcCache::GetAltServiceMapping off main thread r=dragana https://hg.mozilla.org/integration/autoland/rev/edf1b907d5fd P6: Support calling nsHttpConnectionMgr::SpeculativeConnect off main thread r=dragana https://hg.mozilla.org/integration/autoland/rev/b41d942711a6 P7: Dispatch proxy resolution to main thread r=dragana
Comment 12•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/9f788f296658
https://hg.mozilla.org/mozilla-central/rev/169136e81b36
https://hg.mozilla.org/mozilla-central/rev/aa2177a92447
https://hg.mozilla.org/mozilla-central/rev/6163d720bd10
https://hg.mozilla.org/mozilla-central/rev/8de2717c220c
https://hg.mozilla.org/mozilla-central/rev/edf1b907d5fd
https://hg.mozilla.org/mozilla-central/rev/b41d942711a6
Description
•