[Webkit-unassigned] [Bug 113786] Throttle compositing layer flushes during page loading

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Apr 5 12:11:08 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=113786





--- Comment #12 from Antti Koivisto <koivisto at iki.fi>  2013-04-05 12:09:20 PST ---
(In reply to comment #11)
> Is that bytes for just the main resource, or any resources?

Any resource.

> 
> > Source/WebCore/ChangeLog:25
> > +            If four heartbeats pass without progress then we consider the load stalled.
> 
> This doesn't agree with static const unsigned maximumHeartbeatsWithNoProgress= 3;

It kinda does. The variable name is bad though.

> Every frame has a RLC. Will this do throttling in every frame, or just the main frame? How does the ProgressTracker stuff interact with different frames?

Just the main frame for now. ProgressTracker is per page.

> > Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:3074
> > +    if ((!hadUncommittedChanged || couldThrottleLayerFlush != canThrottleLayerFlush()) && m_client)
> 
> couldThrottleLayerFlush != canThrottleLayerFlush() is really confusing. Why is this necessary, since the notifyFlushRequired() can detect changes that should not be throttled?

notifyFlushRequired() would not get called if there were existing changes and canThrottleLayerFlush() went from true to false. However the hadUncommittedChanges optimization does not seems that important in any case and could perhaps just be removed.

> This isn't a layerFlushThrottlingTimer, it's just a layerFlushTimer.

I did rename it to other direction. It is only used for throttling so it seemed better to include that information. I can change it back.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list