[Intel-gfx] Failure to map memory?

Pierre Willenbrock pierre at pirsoft.de
Wed Aug 12 23:36:47 CEST 2009


Hi list,

i see a strange problem with at least two applications: Both get stuck
in a  memcpy, using 100% cpu, making no progress. This is reproducible
by using mesa/progs/tests/mipmap_limits and hitting "m" three times.
Full backtrace below.

This is on an i965, 32bit kernel with pat, PAE and 4GB RAM, in case that
matters. All relevant components are at/near their upstream masters:
kernel:7b2aa037e878c939676675969983284a02958ae3
drm:   d74c67fb13d8c3e8c2e5968d827285d147a5dfc0(current master)
mesa:  7b2aa037e878c939676675969983284a02958ae3(current master)

I suspect the kernel fails to map the backing pages for the buffer
objects, and retries over and over again. I cannot figure out how to
debug this, oprofile does only get samples accounting for a few percent
of the load, i don't know good places to set breakpoints using kgdb and
drm.debug=1 proves not helpful.

Any help appreciated.

Regards,
  Pierre


Full backtrace of stuck mipmap_limts:
#0  0xb7c75816 in memcpy () from /lib/libc.so.6
No symbol table info available.
#1  0xb6589400 in ?? ()
No symbol table info available.
#2  0xb7667077 in _mesa_copy_rect (
    dst=0xb6389400 <Address 0xb6389400 out of bounds>,
    cpp=<value optimized out>, dst_pitch=2048, dst_x=0, dst_y=0, width=512,
    height=128, src=0xb6389400 <Address 0xb6389400 out of bounds>,
    src_pitch=2048, src_x=0, src_y=0) at /usr/include/bits/string3.h:52
        i = 3059258368
#3  0xb7665762 in intel_miptree_image_copy (intel=0x806ed10, dst=0x872e940,
    face=0, level=2, src=0x8730fc8) at intel_mipmap_tree.c:533
        src_ptr = (GLubyte *) 0xb6489000 <Address 0xb6489000 out of bounds>
        dst_ptr = (GLubyte *) 0x0
        width = 128
        height = 128
        depth = 1
        dst_offset = 1049600
        src_offset = 1049600
        dst_depth_offset = (const GLuint *) 0xb7857d04
        src_depth_offset = (const GLuint *) 0xb7857d04
        i = 1
        success = <value optimized out>
#4  0xb76884b4 in intel_finalize_mipmap_tree (intel=0x806ed10, unit=0)
    at intel_tex_validate.c:91
        intelImage = <value optimized out>
        intelObj = (struct intel_texture_object *) 0x83aa980
        comp_byte = 0
        cpp = 4
        face = 0
        i = 2
        nr_faces = 1
        firstImage = <value optimized out>
        __PRETTY_FUNCTION__ = "intel_finalize_mipmap_tree"
#5  0xb76a4cac in brw_validate_textures (brw=0x806ed10) at brw_tex.c:88
        i = 1
#6  0xb7696487 in brw_draw_prims (ctx=0x806ed10, arrays=0x80a6c8c,
    prim=0x80a5680, nr_prims=1, ib=0x0, index_bounds_valid=1 '\001',
    min_index=0, max_index=3) at brw_draw.c:325
        retval = <value optimized out>
#7  0xb7760ff2 in vbo_exec_vtx_flush (exec=0x80a5560, unmap=1 '\001')
    at vbo/vbo_exec_draw.c:376
        ctx = (GLcontext *) 0x806ed10
#8  0xb775d8d1 in vbo_exec_FlushVertices_internal (ctx=0x806ed10,
unmap=0 '\0')
    at vbo/vbo_exec_api.c:778
        exec = (struct vbo_exec_context *) 0x80a5560
#9  0xb775d980 in vbo_exec_FlushVertices (ctx=0x806ed10, flags=1)
    at vbo/vbo_exec_api.c:800
No locals.
#10 0xb76d3899 in _mesa_Flush () at main/context.c:1558
No locals.
(The rest misses locals/debugging info)



More information about the Intel-gfx mailing list