Closed Bug 1150552 Opened 5 years ago Closed 5 years ago

layers.acceleration.draw-fps does not render correctly.

Categories

(Core :: Graphics: Layers, defect, critical)

40 Branch
x86_64
Windows 8.1
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox40 --- affected
firefox42 --- fixed

People

(Reporter: jujjyl, Assigned: BenWa)

References

Details

(Whiteboard: gfx-noted)

Attachments

(3 files)

Enabling the pref layers.acceleration.draw-fps on Windows 8.1 does not render properly on Windows 8.1, but part of the fps counter is cut off. See the attached screenshot for an example.
I believe this is a Graphics bug.
Component: Developer Tools: Performance Tools (Profiler/Timeline) → Graphics
Product: Firefox → Core
:mchang, maybe you can help here?
Flags: needinfo?(mchang)
(In reply to Jukka Jylänki from comment #0)
> Created attachment 8587452 [details]
> layers-acceleration-drawfps.png
> 
> Enabling the pref layers.acceleration.draw-fps on Windows 8.1 does not
> render properly on Windows 8.1, but part of the fps counter is cut off. See
> the attached screenshot for an example.

Does this happen all the time or only during webgl content? For example, just browsing reddit or something, does it still occur.
Flags: needinfo?(mchang)
Whiteboard: gfx-noted
It does occur on all pages, e.g. reddit.com as well. If I resize the window or maximize the window, it looks like it does one correct full refresh, but anything it prints after that is again cut to half.
Blocks: 1052346
Bisected this to have broken by this regression window: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=035a951fc24a&tochange=f1f48ccb2d4e .

While bisecting, I notice that there are even two different bugs related to the fps counter:

1) the fps counter display is cut in half. That is shown in the screenshot in comment 0. This does not always happen, but when the browser window is maximized on Windows, it happens always. When the browser is in windowed mode, the fps counter seems to be rendered in full sometimes, and other times it is cut in half as well.

2) The fps counter does not continously update/rerender itself, but is stale and shows the same number. Resizing the browser window causes it to do one updated render.
This is really important for people developing full-framerate content, particularly with WebGL.
Severity: normal → critical
Component: Graphics → Graphics: Layers
Benoit, can you take a look?
Assignee: nobody → bgirard
I wont get to it right away (unless we think it's a rush) but I'll take a look soon.
Flags: needinfo?(bgirard)
Attached patch patchSplinter Review
This patch cheats a little bit but I think that's ok. It will invalidate for the *next* frame but since the FPS is active every frame then each frame keeps invalidating the next and so on. Note that this provides invalidation for the next frame but it doesn't request it so it doesn't affect how we schedule the frames, it just makes sure that we present the FPS counter on the next partial present.

If we wanted to do this properly we would have to check if we had any debug overlay active in the BeginFrame call. I could be convinced to write that patch but IMO this is better.
Attachment #8645040 - Flags: review?(matt.woodrow)
Comment on attachment 8645040 [details] [diff] [review]
patch

Review of attachment 8645040 [details] [diff] [review]:
-----------------------------------------------------------------

Maybe just comment about how this is invalidating for next time?
Attachment #8645040 - Flags: review?(matt.woodrow) → review+
Bug 1150552 - Fix partial present bug with FPS counter. r=mattwoodrow
Attachment #8645070 - Flags: review?(matt.woodrow)
Comment on attachment 8645070 [details]
MozReview Request: Bug 1150552 - Fix partial present bug with FPS counter. r=mattwoodrow

Bug 1150552 - Fix partial present bug with FPS counter. r=mattwoodrow
Attachment #8645070 - Flags: review?(matt.woodrow)
url:        https://hg.mozilla.org/integration/mozilla-inbound/rev/803ba9e9abc703889ce73f0d4f16a2b411de2586
changeset:  803ba9e9abc703889ce73f0d4f16a2b411de2586
user:       Benoit Girard <b56girard@gmail.com>
date:       Fri Aug 07 14:11:18 2015 -0400
description:
Bug 1150552 - Fix partial present bug with FPS counter. r=mattwoodrow
https://hg.mozilla.org/mozilla-central/rev/803ba9e9abc7
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Depends on: 1216287
Duplicate of this bug: 1184893
You need to log in before you can comment on or make changes to this bug.