Bug 45672 - sna_pixmap_move_to_gpu: Assertion `pixmap->devPrivate.ptr != ((void *)0)' failed.
Summary: sna_pixmap_move_to_gpu: Assertion `pixmap->devPrivate.ptr != ((void *)0)' fai...
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Chris Wilson
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-06 01:14 UTC by Da Fox
Modified: 2012-02-06 08:02 UTC (History)
4 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Backtrace of crash with --enable-debug=full (unpacked: 96MB) (1.62 MB, application/x-7z-compressed)
2012-02-06 01:14 UTC, Da Fox
no flags Details

Description Da Fox 2012-02-06 01:14:47 UTC
Created attachment 56646 [details]
Backtrace of crash with --enable-debug=full (unpacked: 96MB)

When sending a chat message to a contact in amsn (http://www.amsn-project.net/) an assertion is triggered:
X: /var/tmp/portage/x11-drivers/xf86-video-intel-9999/work/xf86-video-intel-9999/src/sna/sna_accel.c:2146: sna_pixmap_move_to_gpu: Assertion `pixmap->devPrivate.ptr != ((void *)0)' failed.

using xf86-video-intel with sna, at commit a8ed1a02ada1f8d2f910dfefb150d26c840bf9ea .

My hardware is Dell XPS 15 (L502x) with:
00:02.0 VGA compatible controller: Intel Corporation Device 0116 (rev 09)
[    13.803] (II) intel(0): Integrated Graphics Chipset: Intel(R) Sandybridge
Mobile (GT2)
Comment 1 Chris Wilson 2012-02-06 01:53:14 UTC
commit f009386de87acccadb1803567e4c494e5e80a2a9
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Mon Feb 6 09:50:03 2012 +0000

    sna: If we have a CPU bo, do not assert we have shadow pixels
    
    When transferring damage to the GPU, on SNB it is not necessarily true
    that we have a shadow pixmap, we may instead have drawn onto an unmapped
    CPU bo and now simply need to copy from that bo onto the GPU. Move the
    assertion onto the path where it truly matters.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45672
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

However, the really interesting stuff is in the lead up to this point and trying to decypher why we chose to render onto the CPU bo rather than create the GPU bo earlier.
Comment 2 Chris Wilson 2012-02-06 08:02:11 UTC
Figured out the mystery why we ended up down that path...

commit f30be6f74392f5687ffe8bc9dd2c6dc024ae06c8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Mon Feb 6 15:59:21 2012 +0000

    sna/gen2+: Exclude solids from being classed as requiring an upload
    
    We treat any pixmap that is not attached to either a CPU or GPU bo as
    requiring the pixel data to be uploaded to the GPU before we can
    composite. Normally this is true, except for the solid cache.
    
    References: https://bugs.freedesktop.org/show_bug.cgi?id=45672
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.