Bug 49827

Summary: [chromium] Renderer is resizing IOSurfaces when accelerated compositing is disabled.
Product: WebKit Reporter: Jonathan Backer <backer>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: backer, commit-queue, kbr, simon.fraser, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch
none
Patch
none
Patch none

Description Jonathan Backer 2010-11-19 13:57:38 PST
Resizing too often.
Comment 1 Jonathan Backer 2010-11-19 13:58:35 PST
Created attachment 74423 [details]
Patch
Comment 2 Jonathan Backer 2010-11-19 14:00:58 PST
When accelerated compositing is triggered, m_layerRenderer is created. If we fall back to software rendering, m_layerRenderer is still set. At this point, we are resizing unnecessarily.
Comment 3 Jonathan Backer 2010-11-19 14:04:46 PST
Comment on attachment 74423 [details]
Patch

If it looks OK, can you please commit because I don't have committer status.
Comment 4 Alexey Proskuryakov 2010-11-19 20:59:58 PST
Even though this is platform-specific code, it still needs a regression test, or an explanation of why there is none. Is this a measurable performance improvement?
Comment 5 Simon Fraser (smfr) 2010-11-19 21:39:08 PST
This bug has the worst title ever. What is resizing too often, and why?
Comment 6 Jonathan Backer 2010-11-22 05:55:34 PST
Updated the title to be more descriptive. Accelerated compositing on the Mac OS X version of Chromium (the only port currently using this code path) is to IOSurfaces, which do not need to be resized when accelerated compositing is disabled. As these surfaces are not visible when accelerated compositing is disabled, it does not cause any display artifacts. Fixing this bug will improve performance, but that improvement will probably be slight.
 
This change is intended as a code clean-up in preparation for using this code path on Linux (http://codereview.chromium.org/5105006/) and Windows (http://codereview.chromium.org/4815001/). On the Linux side, this change does cause a noticeable performance improvement (less lag when switching from software rendering to accelerated compositing after doing a bunch of resizes). An improvement was not noticed on the Windows side.
Comment 7 Kenneth Russell 2010-11-22 14:33:46 PST
Comment on attachment 74423 [details]
Patch

Please update the ChangeLog with the new synopsis.
Comment 8 Jonathan Backer 2010-11-23 05:58:38 PST
Created attachment 74654 [details]
Patch
Comment 9 WebKit Review Bot 2010-11-23 06:01:15 PST
Attachment 74654 [details] did not pass style-queue:

Failed to run "['WebKitTools/Scripts/check-webkit-style', '--diff-files', u'WebKit/chromium/ChangeLog', u'WebKit/chromium/src/WebViewImpl.cpp']" exit_code: 1
WebKit/chromium/ChangeLog:8:  Line contains tab character.  [whitespace/tab] [5]
WebKit/chromium/ChangeLog:9:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 2 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 10 Jonathan Backer 2010-11-23 06:04:55 PST
Created attachment 74655 [details]
Patch
Comment 11 Kenneth Russell 2010-11-23 10:45:51 PST
Comment on attachment 74655 [details]
Patch

Looks good to me.
Comment 12 WebKit Commit Bot 2010-11-23 11:35:15 PST
The commit-queue encountered the following flaky tests while processing attachment 74655 [details]:

transitions/transition-timing-function.html
fast/profiler/throw-exception-from-eval.html

Please file bugs against the tests.  These tests were authored by kmccullough@apple.com, oliver@apple.com, pol@apple.com, and timothy@apple.com.  The commit-queue is continuing to process your patch.
Comment 13 WebKit Commit Bot 2010-11-23 13:06:09 PST
The commit-queue encountered the following flaky tests while processing attachment 74655 [details]:

http/tests/security/xssAuditor/full-block-link-onclick.html

Please file bugs against the tests.  These tests were authored by dbates@webkit.org.  The commit-queue is continuing to process your patch.
Comment 14 WebKit Commit Bot 2010-11-23 13:07:22 PST
Comment on attachment 74655 [details]
Patch

Clearing flags on attachment: 74655

Committed r72623: <http://trac.webkit.org/changeset/72623>
Comment 15 WebKit Commit Bot 2010-11-23 13:07:28 PST
All reviewed patches have been landed.  Closing bug.