Closed
Bug 1045864
Opened 11 years ago
Closed 11 years ago
8% Linux CART regression on Inbound (fx34) Jul 25 from rev bd4287c14070
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: jmaher, Assigned: mattwoodrow)
References
Details
(Keywords: perf, regression, Whiteboard: [talos_regression])
Attachments
(1 file, 1 obsolete file)
|
12.49 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
we have linux32 and linux64 regressions for cart from bug 1039020:
https://hg.mozilla.org/integration/mozilla-inbound/rev/bd4287c14070
Here is a graph:
linux32: http://mzl.la/1rLHuew
linux64: http://mzl.la/1nHlfVc
I did some retriggers to verify this isn't related to noise or solar flares:
https://tbpl.mozilla.org/?tree=Mozilla-Inbound&fromchange=94fea719a746&tochange=a0a40196da87&jobname=Ubuntu%20HW%2012.04%20x64%20mozilla-inbound%20talos%20svgr
| Reporter | ||
Comment 1•11 years ago
|
||
Matt, can you take a look into this as you were the author of the patch?
Flags: needinfo?(matt.woodrow)
| Assignee | ||
Comment 2•11 years ago
|
||
I think this is because the extra layers trigger component alpha, and then we have to flatten with BasicLayers. The flattening isn't free, and the resulting layer tree might well be worse than we had initially.
I guess we should disable this code for BasicLayers, and maybe the equivalent for canvas backgrounds.
That would cover component alpha layers created by text scrolling over a fixed background, I wonder how many other cases we care about? I wonder if we can just do that and get rid of the flattening code.
Can you think of any obviously important cases where we'd really want subpixel-AA text and wouldn't get it that way roc?
Flags: needinfo?(matt.woodrow) → needinfo?(roc)
(In reply to Matt Woodrow (:mattwoodrow) from comment #2)
> I think this is because the extra layers trigger component alpha, and then
> we have to flatten with BasicLayers. The flattening isn't free, and the
> resulting layer tree might well be worse than we had initially.
>
> I guess we should disable this code for BasicLayers,
OK.
> and maybe the equivalent for canvas backgrounds.
Not so sure. It's quite common to have text over opaque background over fixed background. I think we should leave that alone.
Flags: needinfo?(roc)
| Assignee | ||
Comment 4•11 years ago
|
||
Assignee: nobody → matt.woodrow
Attachment #8466881 -
Flags: review?(roc)
Comment on attachment 8466881 [details] [diff] [review]
Disable for BasicLayers
Review of attachment 8466881 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/generic/nsImageFrame.cpp
@@ +1351,5 @@
> + nsDisplayImage* displayImage = static_cast<nsDisplayImage*>(item);
> + container = displayImage->GetContainer(aManager, aBuilder);
> + if (!container) {
> + return LAYER_NONE;
> + }
I do not understand this change.
Attachment #8466881 -
Flags: review?(roc) → review-
| Assignee | ||
Comment 6•11 years ago
|
||
Sorry, accidentally qref'd some unrelated code into the previous patch.
Attachment #8467387 -
Flags: review?(roc)
Attachment #8467387 -
Flags: review?(roc) → review+
| Assignee | ||
Comment 7•11 years ago
|
||
| Assignee | ||
Updated•11 years ago
|
Attachment #8466881 -
Attachment is obsolete: true
Comment 8•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
| Reporter | ||
Comment 9•11 years ago
|
||
thanks for fixing this!
| Reporter | ||
Comment 10•11 years ago
|
||
I have confirmed this is fixed for linxu32 and linux64, thanks!
On a related note, I am seeing alerts that showed up later on osx 10.6 and 10.8 which appear to be the same changeset (it is sort of fuzzy). Is there any chance the original patch could affect osx and the fix not work for osx?
Flags: needinfo?(matt.woodrow)
| Assignee | ||
Comment 11•11 years ago
|
||
That seems unlikely, the linux issue was very specific to not having layers acceleration enabled.
Flags: needinfo?(matt.woodrow)
You need to log in
before you can comment on or make changes to this bug.
Description
•