Closed
Bug 1317893
Opened 9 years ago
Closed 9 years ago
Add CompositorVsyncScheduler to WebRenderBridgeParent
Categories
(Core :: Graphics: WebRender, defect)
Core
Graphics: WebRender
Tracking
()
RESOLVED
FIXED
mozilla53
| Tracking | Status | |
|---|---|---|
| firefox53 | --- | fixed |
People
(Reporter: sotaro, Assigned: sotaro)
References
Details
Attachments
(1 file, 10 obsolete files)
|
15.02 KB,
patch
|
sotaro
:
review+
|
Details | Diff | Splinter Review |
To update video frames rendering correctly, we need vsync scheduler based composition.
| Assignee | ||
Updated•9 years ago
|
Assignee: nobody → sotaro.ikeda.g
Version: 38 Branch → Trunk
| Assignee | ||
Comment 1•9 years ago
|
||
| Assignee | ||
Updated•9 years ago
|
Attachment #8811149 -
Flags: feedback?(mchang)
Attachment #8811149 -
Flags: feedback?(bugmail)
Comment 2•9 years ago
|
||
Comment on attachment 8811149 [details] [diff] [review]
patch - Add CompositorVsyncScheduler to WebRenderBridgeParent
Review of attachment 8811149 [details] [diff] [review]:
-----------------------------------------------------------------
This looks ok to me. I'd prefer if a WebRenderBridgeParent didn't have to hold a ref to its "parent" - hopefully we can remove that and just have a ref to the CompositorOGL which can do some of this. But this is fine for now.
Attachment #8811149 -
Flags: feedback?(bugmail) → feedback+
| Assignee | ||
Comment 3•9 years ago
|
||
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #2)
> Comment on attachment 8811149 [details] [diff] [review]
> patch - Add CompositorVsyncScheduler to WebRenderBridgeParent
> hopefully we can remove that and just have a
> ref to the CompositorOGL which can do some of this. But this is fine for now.
Yes, we could remove the ref by Bug 1317935.
| Assignee | ||
Comment 4•9 years ago
|
||
Attachment #8811149 -
Attachment is obsolete: true
Attachment #8811149 -
Flags: feedback?(mchang)
| Assignee | ||
Comment 5•9 years ago
|
||
Attachment #8811582 -
Attachment is obsolete: true
| Assignee | ||
Comment 6•9 years ago
|
||
Attachment #8811583 -
Attachment is obsolete: true
| Assignee | ||
Updated•9 years ago
|
Attachment #8811706 -
Flags: review?(bugmail)
Updated•9 years ago
|
Attachment #8811706 -
Flags: feedback+
Comment 8•9 years ago
|
||
Comment on attachment 8811706 [details] [diff] [review]
patch - Add CompositorVsyncScheduler to WebRenderBridgeParent
Review of attachment 8811706 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/layers/ipc/CompositorBridgeParent.h
@@ +83,5 @@
> uint64_t mLayersId;
> };
>
> +
> +class CompositorVsyncSchedulerOwner
Do you mind moving this into its own header, gfx/layers/CompositorVsyncScheduleOwner.h? I don't like having to include all of CompositorBridgeParent.h just to get this one small thing. And we have too many files that are too big already.
::: gfx/layers/wr/WebRenderBridgeParent.cpp
@@ +148,2 @@
> wr_dp_end(mWRWindowState, mWRState);
> + ScheduleComposition();
Morris is touching some of this code in bug 1316903, so make sure you coordinate with him when landing.
Attachment #8811706 -
Flags: review?(bugmail) → review+
| Assignee | ||
Comment 9•9 years ago
|
||
Apply the comment.
Attachment #8811706 -
Attachment is obsolete: true
Attachment #8812090 -
Flags: review+
| Assignee | ||
Comment 10•9 years ago
|
||
attachment 8812090 [details] [diff] [review] used the commands.
> hg cp gfx/layers/ipc/CompositorBridgeParent.h gfx/layers/ipc/CompositorVsyncScheduler.h
> hg cp gfx/layers/ipc/CompositorBridgeParent.cpp gfx/layers/ipc/CompositorVsyncScheduler.cpp
| Assignee | ||
Comment 11•9 years ago
|
||
Rebased.
Attachment #8812090 -
Attachment is obsolete: true
Attachment #8812095 -
Flags: review+
Comment 12•9 years ago
|
||
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/projects/graphics/rev/b1542ac3fc70
Add CompositorVsyncScheduler to WebRenderBridgeParent r=kats
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
| Assignee | ||
Updated•9 years ago
|
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
| Assignee | ||
Comment 13•9 years ago
|
||
Attachment #8812103 -
Flags: review+
| Assignee | ||
Comment 14•9 years ago
|
||
Comment 15•9 years ago
|
||
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/92a5323c313c
Split CompositorVsyncScheduler to own file r=kats
Comment 16•9 years ago
|
||
The CompositorVsyncScheduler changes will hit an assert when I build with WR at mac.
Assert:
https://hg.mozilla.org/projects/graphics/annotate/b1542ac3fc70/gfx/layers/ipc/CompositorVsyncScheduler.cpp#l85
So, I revert your changes.
https://hg.mozilla.org/projects/graphics/rev/c85e2d8dc8df
Flags: needinfo?(sotaro.ikeda.g)
Comment 17•9 years ago
|
||
(In reply to Pulsebot from comment #15)
> Pushed by sikeda@mozilla.com:
> https://hg.mozilla.org/integration/mozilla-inbound/rev/92a5323c313c
> Split CompositorVsyncScheduler to own file r=kats
I wanted to move CompositorVsyncScheduleOwner, not CompositorVsyncScheduler. But this is good too, it belongs in a separate file. It would have been nice to split this commit into two - one that just extracts CompositorVsyncScheduler, and another that adds the Owner. And since you landed on inbound, don't try to reland it on graphics, we'll get this on the next merge from m-c.
Comment 18•9 years ago
|
||
| bugherder | ||
Status: REOPENED → RESOLVED
Closed: 9 years ago → 9 years ago
status-firefox53:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
Comment 19•9 years ago
|
||
Sotaro, please do the follow-up work in another bug. I'm going to do a merge from m-c over to graphics which picks up this change.
| Assignee | ||
Updated•9 years ago
|
Status: RESOLVED → REOPENED
Flags: needinfo?(sotaro.ikeda.g)
Resolution: FIXED → ---
| Assignee | ||
Comment 20•9 years ago
|
||
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #17)
> (In reply to Pulsebot from comment #15)
> > Pushed by sikeda@mozilla.com:
> > https://hg.mozilla.org/integration/mozilla-inbound/rev/92a5323c313c
> > Split CompositorVsyncScheduler to own file r=kats
>
> I wanted to move CompositorVsyncScheduleOwner, not CompositorVsyncScheduler.
> But this is good too, it belongs in a separate file. It would have been nice
> to split this commit into two - one that just extracts
> CompositorVsyncScheduler, and another that adds the Owner. And since you
> landed on inbound, don't try to reland it on graphics, we'll get this on the
> next merge from m-c.
Thanks, but 1318780 is created to split CompositorVsyncScheduleOwner.
Comment 21•9 years ago
|
||
Can we leave this bug closed, since a patch landed on m-c here? We can file another bug for the Webrender code changes.
| Assignee | ||
Updated•9 years ago
|
Attachment #8812103 -
Attachment is obsolete: true
| Assignee | ||
Comment 22•9 years ago
|
||
(In reply to Jerry Shih[:jerry] (UTC+8) from comment #16)
> The CompositorVsyncScheduler changes will hit an assert when I build with WR
> at mac.
>
> Assert:
> https://hg.mozilla.org/projects/graphics/annotate/b1542ac3fc70/gfx/layers/
> ipc/CompositorVsyncScheduler.cpp#l85
>
> So, I revert your changes.
> https://hg.mozilla.org/projects/graphics/rev/c85e2d8dc8df
Sorry, I will address the problem.
| Assignee | ||
Comment 23•9 years ago
|
||
Rebased.
Attachment #8812095 -
Attachment is obsolete: true
Attachment #8812644 -
Flags: review+
| Assignee | ||
Comment 24•9 years ago
|
||
Attachment #8812644 -
Attachment is obsolete: true
Attachment #8812647 -
Flags: review+
Comment 25•9 years ago
|
||
Comment on attachment 8812647 [details] [diff] [review]
patch - Add CompositorVsyncScheduler to WebRenderBridgeParent
Review of attachment 8812647 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/layers/ipc/CompositorVsyncScheduler.cpp
@@ +83,5 @@
> , mSetNeedsCompositeMonitor("SetNeedsCompositeMonitor")
> , mSetNeedsCompositeTask(nullptr)
> {
> + MOZ_ASSERT(NS_IsMainThread() || XRE_GetProcessType() == GeckoProcessType_GPU ||
> + CompositorThreadHolder::IsInCompositorThread());
Is there any point to having this assert any more then? It allows basically anything.
| Assignee | ||
Comment 26•9 years ago
|
||
(In reply to Kartikaya Gupta away[Nov24,Dec5) (email:kats@mozilla.com) from comment #25)
> Is there any point to having this assert any more then? It allows basically
> anything.
There is no point to keep the assert. I am going to remove the assert.
| Assignee | ||
Comment 27•9 years ago
|
||
Addressed the comment.
Attachment #8812647 -
Attachment is obsolete: true
Attachment #8812991 -
Flags: review+
Comment 28•9 years ago
|
||
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/projects/graphics/rev/998a69cbaf54
Add CompositorVsyncScheduler to WebRenderBridgeParent r=kats
Status: REOPENED → RESOLVED
Closed: 9 years ago → 9 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•