Created attachment 715642 [details] [diff] [review]
It looks like this names the compartments as
We do system principal compartments as
compartment([System Principal], http://foobar)
so perhaps we should stay in line with that and do something like
compartment([In-process TabChild], http://foobar)
? I bet njn has an opinion too. :)
TabChildGlobal use system principal, so they should have [System Principal]
and http://... doesn't make sense. TabChildGlobals aren't really in any URL.
Some page may own the element which then owns the TabChildGlobal (in case of in-process).
But I can change the ID to whatever feels the best :)
I rarely use about:memory/compartment so I'm not really familiar with conventions there.
So the current patch gives us
compartment([System Principal], inProcessTabChildGlobal?ownedby=...)
[System Principal], inProcessTabChildGlobal?ownedBy=chrome://browser/content/browser.xul 
More specific naming of compartments is always good...
What name would these compartments have had before?
How likely is the case where there isn't an "ownedBy" part?
Before the patch out-of-process tabchildglobals are just
and in-process tabchildglobals are
[System Principal|, chrome://browser/content/browser.xul
which less-nicely mixes them with other system compartments.
I mean, the top level chrome doc has chrome://browser/content/browser.xul as document uri, and the
same is used for tabchildglobals, so they all are reported to be similar things.
> [System Principal], inProcessTabChildGlobal?ownedBy=chrome://browser/content/browser.xul 
It's a bit ugly but I can't think of anything obviously better. Go for it.
This change just led to bug 842710 being filed -- another case of "if we measure it, we find problems with it". Nice work.
You mean bug 844661