gecko-dev/js
Kris Maglione 30d4691c07 Bug 1404741: Don't call mozJSComponentLoader::CompilationScope during URLPreloader critical section. r=mccr8
The URLPreloader's initialization code accesses the Omnijar cache off-main
thread. It can do so safely only as long as the main thread is blocked, or
running code which is guaranteed never to touch Omnijar, while its critical
section runs.

While that was guaranteed for previous versions of the code, some invariants
changed when we began using the component loader's shared global for initial
compilation. Once the global is created, we can safely use it to initialize
compilation. But creating the global invokes a large amount of Gecko code,
some of which touches Omnijar in the process.

MozReview-Commit-ID: 48WoIZtGPTo

--HG--
extra : rebase_source : 9bd5d884e32cfa59c022edb00078aac050acb20b
2017-10-06 15:09:11 -07:00
..
ductwork/debugger Bug 1333493 - add BUG_COMPONENT to js/* files. r=bbouvier 2017-03-24 09:50:49 -04:00
examples No bug. Update to new way of detecting emacs 2017-03-26 15:43:23 -07:00
ipc Bug 1403136 - Clean up JSSetterOp code now that slotful setters are gone. r=evilpie 2017-09-26 22:26:40 +02:00
public Bug 1405330 - Clean up and optimize Promise debugger hooks. r=till 2017-10-03 22:17:36 +02:00
rust Bug 1396613 - Update rust glue with new objectMoved hook signature r=fitzgen 2017-09-19 12:31:31 +01:00
src Bug 1406340 - Remove ArgumentsRectifierReg and just load argc from the stack. r=bbouvier 2017-10-07 19:18:26 +02:00
xpconnect Bug 1404741: Don't call mozJSComponentLoader::CompilationScope during URLPreloader critical section. r=mccr8 2017-10-06 15:09:11 -07:00
ffi.configure Bug 1363811 - Replace all uses of delayed_getattr(a, 'b') with a.b. r=cmanchester+432261 2017-05-19 07:03:40 +09:00
moz.build Bug 1333493 - add BUG_COMPONENT to js/* files. r=bbouvier 2017-03-24 09:50:49 -04:00
moz.configure Bug 1277338 - Part 7: Export mozglue when JS_STANDALONE && !jemalloc; r=glandium,sfink 2017-08-31 15:59:13 -07:00