Create NS_NewURIOnAnyThread
Categories
(Core :: Networking, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: valentin, Assigned: valentin)
References
Details
(Whiteboard: [necko-triaged])
Attachments
(5 files)
This should avoid calling into any protocol handlers, since those can be JS implemented and not thread-safe.
Assignee | ||
Comment 1•6 years ago
|
||
Assignee | ||
Comment 2•6 years ago
|
||
Depends on D22134
Assignee | ||
Comment 3•6 years ago
|
||
Depends on D22135
Assignee | ||
Comment 4•6 years ago
|
||
Depends on D22136
Assignee | ||
Comment 5•6 years ago
|
||
The protocols that are left:
- moz-gio - depends on prefs
- moz-icon - calls IOService.newURI
- view-source - calls NS_NewURI for inner part of the URI - we make it call NS_NewURIOnAnyThread
- resource - extends SubstitutingProtocolHandler (substitution flags + jar)
- moz-extension - extends SubstitutingProtocolHandler (substitution flags + jar)
- jar - nsJARURI::SetSpecWithBase calls ioServ->NewURI
- about - calls NS_GetAboutModule (can be JS implemented)
Apart from these there's nsExternalProtocolHandler::NewURI which simply instantiates a new nsSimpleURI, but we can't fall back to it if the above protocols aren't handled.
Updated•6 years ago
|
Updated•6 years ago
|
Comment 7•6 years ago
|
||
Backed out 4 changesets (bug 1532253) for Windows bustage at Unified_cpp_netwerk_base2.i_o on a CLOSED TREE.
Backout link: https://hg.mozilla.org/integration/mozilla-inbound/rev/949fbfb190a2627fbbeb842ac90e2ad7ed96c038
Push with failures: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&resultStatus=testfailed%2Cbusted%2Cexception&revision=498d0bcc8ce8b5cc8c5f7b9af8ebda9136718e12&selectedJob=233093291
Log snippet:
13:06:05 INFO - mkdir -p '.deps/'
13:06:05 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/netwerk/cache'
13:06:05 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/netwerk/cache'
13:06:05 INFO - netwerk/cache/Unified_cpp_netwerk_cache0.i_o
13:06:05 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/netwerk/cache'
13:06:06 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/security/sandbox'
13:06:06 INFO - z:/build/build/src/clang/bin/clang.exe --driver-mode=cl -m32 -Fosandbox_rand.i_o -c -DNDEBUG=1 -DTRIMMED=1 -DUNICODE -D_UNICODE -DNS_NO_XPCOM -D_CRT_RAND_S -DCHROMIUM_SANDBOX_BUILD -DSANDBOX_EXPORTS -Iz:/build/build/src/security/sandbox -Iz:/build/build/src/obj-firefox/security/sandbox -Iz:/build/build/src/security/sandbox/chromium-shim -Iz:/build/build/src/security/sandbox/chromium -Iz:/build/build/src/nsprpub -Iz:/build/build/src/obj-firefox/dist/include -Iz:/build/build/src/obj-firefox/dist/include/nspr -Iz:/build/build/src/obj-firefox/dist/include/nss -MD -FI z:/build/build/src/obj-firefox/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -guard:cf -Qunused-arguments -fcrash-diagnostics-dir=z:/build/public/build -TP -nologo -w15038 -wd5026 -wd5027 -Zc:sizedDealloc- -wd4091 -wd4577 -D_HAS_EXCEPTIONS=0 -guard:cf -W3 -Gy -Zc:inline -arch:SSE2 -Gw -wd4251 -wd4244 -wd4267 -wd4800 -wd4595 -wd4065 -Wno-inline-new-delete -Wno-invalid-offsetof -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -we4553 -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -Xclang -load -Xclang z:/build/build/src/obj-firefox/build/clang-plugin/clang-plugin.dll -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -WX -wd4275 -wd4717 -wd4996 -wd4302 -wd4311 -wd4312 -fprofile-instr-generate -Xclang -MP -Xclang -dependency-file -Xclang .deps/sandbox_rand.i_o.pp -Xclang -MT -Xclang sandbox_rand.i_o z:/build/build/src/security/sandbox/chromium/sandbox/win/src/sandbox_rand.cc
13:06:06 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/security/sandbox'
13:06:06 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/security/sandbox'
13:06:06 INFO - security/sandbox/sandbox_utils.i_o
13:06:06 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/security/sandbox'
13:06:07 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/netwerk/base'
13:06:07 INFO - z:/build/build/src/clang/bin/clang.exe --driver-mode=cl -m32 -FoUnified_cpp_netwerk_base2.i_o -c -Iz:/build/build/src/obj-firefox/dist/stl_wrappers -DNDEBUG=1 -DTRIMMED=1 -DWIN32_LEAN_AND_MEAN -D_WIN32 -DWIN32 -D_CRT_RAND_S -DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS -DOS_WIN=1 -D_UNICODE -DCHROMIUM_BUILD -DU_STATIC_IMPLEMENTATION -DUNICODE -D_WINDOWS -D_SECURE_ATL -DCOMPILER_MSVC -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -Iz:/build/build/src/netwerk/base -Iz:/build/build/src/obj-firefox/netwerk/base -Iz:/build/build/src/obj-firefox/ipc/ipdl/_ipdlheaders -Iz:/build/build/src/ipc/chromium/src -Iz:/build/build/src/ipc/glue -Iz:/build/build/src/docshell/base -Iz:/build/build/src/dom/base -Iz:/build/build/src/netwerk/protocol/http -Iz:/build/build/src/netwerk/socket -Iz:/build/build/src/netwerk/url-classifier -Iz:/build/build/src/obj-firefox/dist/include -Iz:/build/build/src/obj-firefox/dist/include/nspr -Iz:/build/build/src/obj-firefox/dist/include/nss -MD -FI z:/build/build/src/obj-firefox/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -guard:cf -Qunused-arguments -fcrash-diagnostics-dir=z:/build/public/build -TP -nologo -w15038 -wd5026 -wd5027 -Zc:sizedDealloc- -wd4091 -wd4577 -D_HAS_EXCEPTIONS=0 -guard:cf -W3 -Gy -Zc:inline -arch:SSE2 -Gw -wd4251 -wd4244 -wd4267 -wd4800 -wd4595 -wd4065 -Wno-inline-new-delete -Wno-invalid-offsetof -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -we4553 -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -Xclang -load -Xclang z:/build/build/src/obj-firefox/build/clang-plugin/clang-plugin.dll -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -WX -fprofile-instr-generate -Xclang -finstrument-functions-after-inlining -Xclang -MP -Xclang -dependency-file -Xclang .deps/Unified_cpp_netwerk_base2.i_o.pp -Xclang -MT -Xclang Unified_cpp_netwerk_base2.i_o z:/build/build/src/obj-firefox/netwerk/base/Unified_cpp_netwerk_base2.cpp
13:06:07 INFO - In file included from z:/build/build/src/obj-firefox/netwerk/base/Unified_cpp_netwerk_base2.cpp:128:
13:06:07 INFO - z:/build/build/src/netwerk/base/nsNetUtil.cpp(1719,20): error: use of undeclared identifier 'typeof'; did you mean 'typeid'?
13:06:07 INFO - TlsAutoIncrement<typeof(gTlsURLRecursionCount)> inc(gTlsURLRecursionCount);
13:06:07 INFO - ^
13:06:07 INFO - z:/build/build/src/netwerk/base/nsNetUtil.cpp(1720,7): error: use of undeclared identifier 'inc'
13:06:07 INFO - if (inc.value() >= MAX_RECURSION_COUNT) {
13:06:07 INFO - ^
13:06:07 INFO - 2 errors generated.
13:06:07 INFO - z:/build/build/src/config/rules.mk:805: recipe for target 'Unified_cpp_netwerk_base2.i_o' failed
13:06:07 INFO - mozmake.EXE[5]: *** [Unified_cpp_netwerk_base2.i_o] Error 1
13:06:07 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/netwerk/base'
13:06:07 INFO - mozmake.EXE[5]: *** Waiting for unfinished jobs....
13:06:07 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/netwerk/cache2'
13:06:07 INFO - mkdir -p '.deps/'
13:06:07 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/netwerk/cache2'
13:06:07 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/netwerk/cache2'
13:06:07 INFO - netwerk/cache2/AppCacheStorage.i_o
Assignee | ||
Comment 8•6 years ago
|
||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Comment 10•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/dbe9eae80e63
https://hg.mozilla.org/mozilla-central/rev/6a37aed60cfb
https://hg.mozilla.org/mozilla-central/rev/26d06f8f1ca8
https://hg.mozilla.org/mozilla-central/rev/618267ebb6a4
https://hg.mozilla.org/mozilla-central/rev/3fef04ae16fd
Updated•2 years ago
|
Description
•