[Bug 57937] New: i915 SNA choppy graphics

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Dec 5 23:20:52 PST 2012


https://bugs.freedesktop.org/show_bug.cgi?id=57937

          Priority: medium
            Bug ID: 57937
          Assignee: chris at chris-wilson.co.uk
           Summary: i915 SNA choppy graphics
        QA Contact: intel-gfx-bugs at lists.freedesktop.org
          Severity: minor
    Classification: Unclassified
                OS: Linux (All)
          Reporter: wes_zilla at yahoo.com
          Hardware: x86-64 (AMD64)
            Status: NEW
           Version: 7.7 (2011)
         Component: Driver/intel
           Product: xorg

Created attachment 71071
  --> https://bugs.freedesktop.org/attachment.cgi?id=71071&action=edit
Patch that fixes the choppyness.

Description
===========

In version 2.20.10 and later, I noticed that some graphics operations were not
as smooth as they were in 2.20.9.  It isn't all that severe, but it was enough
to annoy me, and eventually make me track down the source.

System environment
==================

* chipset: i915
* system arch: 64-bit
* xf86-video-intel: 2.20.10 has the issue; above patch fixes it.
* xserver: 1.13.0
* mesa: 9.0
* libdrm: 2.4.40
* kernel: 3.5.6
* distribution: Arch linux
* Machine: Lenovo X220T
* Display connector: HDMI


How to reproduce it
===================

I use compiz as a stand-alone window manager, and when using the "expo"
feature to zoom out and see all desktops, the graphics are noticeably choppy.
Other operations (the "scale" plugin, and even sliding to another desktop) are
similarly choppy, but the expo feature makes me notice it the most.

How to fix(?) it
================

The source is commit 45b351412b.  If you revert that commit, things are nice
and smooth again.  I applied the following patch to the master branch of git
(as of 12/6/2012; commit is 0040eb84c9187):

--- a/src/sna/kgem.c
+++ b/src/sna/kgem.c
@@ -1437,7 +1437,7 @@ static void kgem_bo_clear_scanout(struct kgem *kgem,
struct kgem_bo *bo)
     bo->reusable = true;

     if (kgem->has_llc &&
-        !gem_set_cacheing(kgem->fd, bo->handle, SNOOPED))
+        gem_set_cacheing(kgem->fd, bo->handle, SNOOPED))
         bo->reusable = false;
 }

And the problem was resolved.  I know *nothing* about the driver, and have no
idea why this helps, but it does.  I used the following configure flags:

./configure --prefix=/usr --enable-dri \
    CFLAGS="-march=native -O3 -pipe --param=ssp-buffer-size=4" \
    LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"

But I note that the same behavior is there with -O2.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20121206/f62f7a2e/attachment.html>


More information about the intel-gfx-bugs mailing list