http://bugzilla.novell.com/show_bug.cgi?id=545499
User aj@novell.com added comment
http://bugzilla.novell.com/show_bug.cgi?id=545499#c12
Andreas Jaeger changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDINFO |NEW
Info Provider|aj@novell.com |
--- Comment #12 from Andreas Jaeger 2009-10-09 07:02:41 MDT ---
The culprit is:
Author: Chris Wilson 2009-09-20 02:02:39
Committer: Chris Wilson 2009-09-20 02:15:41
Parent: 33f98e4056706f4c30bb4327677ac49e82058231 (Don't destroy bufmgr at
CloseScreen time)
Branches: master, remotes/origin/master
Follows: 2.8.99.901
Precedes: 2.8.99.902
Avoid fallbacks for a1 src/mask
Carl Worth did the hard work in identifying that the regression in
cairo between X.org 1.6 and 1.7 was caused by cairo sending an a1
mask to the server in 1.7 whereas in 1.6 cairo used local fallbacks
(as the source was using RepeatPad, which triggers cairo's
'buggy_pad_reflect' fallback for X.org 1.6). This was causing the driver
to do a fallback to handle the a1 mask instead, which due to the GPU
pipeline stall is much more expensive than the equivalent fallback in
cairo.
Reference:
cairo's performance downgrades 4X with server master than server-1.6.
https://bugs.freedesktop.org/show_bug.cgi?id=23184
The fix is a relatively simple extension of the current
uxa_picture_from_pixman_image() to use CompositePicture() instead of
CopyArea() when we need to convert to a new format.
Signed-off-by: Chris Wilson
For reference:
$ git bisect log
# bad: [2841a4cd8c6c64fdf4b2203ab73b57b38a50f651] Increment version to 2.9.0
# good: [e6105d978a0217219cb2d60a672ae200c70bc68d] Increment version number to
2.8.1 for release.
git bisect start '2.9.0' '2.8.1'
# good: [5d50a949b3c5d0ad2bc4cf48ab25da1f707a4f6f] Increment version number to
2.8.0 for release.
git bisect good 5d50a949b3c5d0ad2bc4cf48ab25da1f707a4f6f
# good: [e51126c57132492c664f86981c55b166dbb54c79] Add cursor registers to
debug dump output.
git bisect good e51126c57132492c664f86981c55b166dbb54c79
# good: [c2abfa8e54acab61250dba1e435760e3b1499c8c] Avoid fallbacks for
compositing gradient patterns
git bisect good c2abfa8e54acab61250dba1e435760e3b1499c8c
# bad: [bd817e2d733dfdb1140874b06595ccd1ef39159b] Split i915/i830
composite_emit_primitive into two functions.
git bisect bad bd817e2d733dfdb1140874b06595ccd1ef39159b
# bad: [57fc09cef28bad2e3e8455b93ef2927118f8a3a3] Avoid fallbacks for a1
src/mask
git bisect bad 57fc09cef28bad2e3e8455b93ef2927118f8a3a3
# good: [ee9ad853574e3ee1a210db6207b84ecd466e08ee] Make sure DRM output
properties are freed after we're done with them.
git bisect good ee9ad853574e3ee1a210db6207b84ecd466e08ee
# good: [33f98e4056706f4c30bb4327677ac49e82058231] Don't destroy bufmgr at
CloseScreen time
git bisect good 33f98e4056706f4c30bb4327677ac49e82058231
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.