Bug 41913

Summary: [865] intel/intel_bufmgr_gem.c:1361: do_bo_emit_reloc: Assertion `offset <= bo->size - 4' failed.
Product: Mesa Reporter: Wesley Tanaka <wtanaka>
Component: Drivers/DRI/i830Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: medium CC: ben, chris, daniel, jbarnes
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
URL: https://bugs.kde.org/show_bug.cgi?id=292706
Whiteboard:
i915 platform: i915 features:

Description Wesley Tanaka 2011-10-17 22:54:13 UTC
This has been reported here:

http://forum.nevercorner.net/viewtopic.php?id=2409

here:
https://bugs.gentoo.org/show_bug.cgi?id=386707

and by me here:
http://jira.boxee.tv/browse/BOXEE-11517

My hardware is:


00:02.0 VGA compatible controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02)
Comment 1 Christopher Yeleighton 2012-01-29 03:54:32 UTC
Ping from Bug KDE 292706
Comment 2 Daniel Vetter 2012-01-29 04:19:51 UTC
Can we have the full backtrace here for this bug, please? Plus versions of libdrm xf86-video-intel and mese. And maybe slightly more details as to how this happens.
Comment 3 Eric Anholt 2012-03-02 17:51:05 UTC
3 links to bug reports elsewhere instead of putting the info in the bug report, and none of them even have a backtrace.  Sigh.

Anyway, this got fixed thanks to another bug report:

commit 024ece7523f1735d2fca0067c0a3bdcf53fde8f9
Author: Kurt Roeckx <kurt@roeckx.be>
Date:   Fri Mar 2 15:34:45 2012 -0800

    i915: Compute maximum number of verts using the actual batchbuffer size.
    
    We were looking at the size of batch.map for how big the batchbuffer
    was, but on 865 we just use a single-page batchbuffer due to hardware
    limits.
    
    v2: Removed check for sizeof map < bo->size, since that's always false.
        [change by anholt]
    NOTE: This is a candidate for release branches.
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41495

33b07893e92dcee495908c549be872887096c894
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Nov 9 22:21:16 2011 +0000

    i830: Compute initial number of vertices from remaining batch space
    
    In order to prevent an overflow of the batch buffer when emitting
    triangles, we need to limit the initial primitive to fit within the
    current batch. To do we need to measure the remaining space and thence
    compute the maximum number of vertices that fit into that space.
    
    Reported-by: Kurt Roeckx <kurt@roeckx.be>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41495
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: Eric Anholt <eric@anholt.net>
    NOTE: This is a candidate for release branches.

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.