rendered paste body
Function "st_readpixels" not defined.
Make breakpoint pending on future shared library load? (y or [n])
Breakpoint 1 (st_readpixels) pending.
Starting program: /home/guest/source/mesa-demos/build/linux-debug/demos/readpix
[Thread debugging using libthread_db enabled]
Breakpoint 1, st_readpixels (ctx=0x8096750, x=5, y=20, width=194, height=188,
format=6408, type=5121, pack=0x80a5554, dest=0xb6941008)
at state_tracker/st_cb_readpixels.c:327
327 {
Continuing.
Breakpoint 1, st_readpixels (ctx=0x8096750, x=5, y=20, width=194, height=188,
format=6408, type=5121, pack=0x80a5554, dest=0xb6941008)
at state_tracker/st_cb_readpixels.c:327
327 {
328 struct st_context *st = st_context(ctx);
st_context (ctx=0x8096750, x=5, y=20, width=194, height=188, format=6408,
type=5121, pack=0x80a5554, dest=0xb6941008)
at state_tracker/st_context.h:200
200 return ctx->st;
st_readpixels (ctx=0x8096750, x=5, y=20, width=194, height=188, format=6408,
type=5121, pack=0x80a5554, dest=0xb6941008)
at state_tracker/st_cb_readpixels.c:329
329 struct pipe_context *pipe = st->pipe;
331 const GLbitfield transferOps = ctx->_ImageTransferState;
336 struct gl_pixelstore_attrib clippedPacking = *pack;
339 assert(ctx->ReadBuffer->Width > 0);
342 assert((transferOps & IMAGE_CONVOLUTION_BIT) == 0);
344 st_validate_state(st);
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
141 check_program_state( st );
check_program_state (st=0x80d5b98) at state_tracker/st_atom.c:112
112 GLcontext *ctx = st->ctx;
114 if (ctx->VertexProgram._Current != &st->vp->Base)
117 if (ctx->FragmentProgram._Current != &st->fp->Base)
120 if (ctx->GeometryProgram._Current != &st->gp->Base)
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:143
143 st_manager_validate_framebuffers(st);
st_manager_validate_framebuffers (st=0x80d5b98)
at state_tracker/st_manager.c:808
808 {
809 struct st_framebuffer *stdraw = st_ws_framebuffer(st->ctx->DrawBuffer);
st_ws_framebuffer (st=0x80d5b98) at state_tracker/st_manager.c:65
65 return (struct st_framebuffer *) ((fb && !fb->Name) ? fb : NULL);
st_manager_validate_framebuffers (st=0x80d5b98)
at state_tracker/st_manager.c:810
810 struct st_framebuffer *stread = st_ws_framebuffer(st->ctx->ReadBuffer);
st_ws_framebuffer (st=0x80d5b98) at state_tracker/st_manager.c:65
65 return (struct st_framebuffer *) ((fb && !fb->Name) ? fb : NULL);
st_manager_validate_framebuffers (st=0x80d5b98)
at state_tracker/st_manager.c:812
812 if (stdraw)
813 st_framebuffer_validate(stdraw, st);
st_framebuffer_validate (stfb=0x80f8f80, st=0x80d5b98)
at state_tracker/st_manager.c:144
144 {
145 struct pipe_screen *screen = st->pipe->screen;
151 if (!p_atomic_read(&stfb->revalidate))
211 }
st_manager_validate_framebuffers (st=0x80d5b98)
at state_tracker/st_manager.c:814
814 if (stread && stread != stdraw)
816 }
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
156 memset(&examined, 0, sizeof(examined));
157 prev = *state;
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
171 if (check_state(state, &atom->dirty)) {
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:176
176 accumulate_state(&examined, &atom->dirty);
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
95 a->st |= b->st;
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:183
183 assert(!check_state(&examined, &generated));
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_validate_state (st=0x80d5b98) at state_tracker/st_atom.c:196
196 memset(state, 0, sizeof(*state));
159 for (i = 0; i < Elements(atoms); i++) {
160 const struct st_tracked_state *atom = atoms[i];
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
166 !atom->update) {
165 if (!(atom->dirty.mesa || atom->dirty.st) ||
171 if (check_state(state, &atom->dirty)) {
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
166 !atom->update) {
accumulate_state (st=0x80d5b98) at state_tracker/st_atom.c:94
94 a->mesa |= b->mesa;
160 const struct st_tracked_state *atom = atoms[i];
check_state (st=0x80d5b98) at state_tracker/st_atom.c:131
131 struct st_state_flags *state = &st->dirty;
check_state (st=0x80d5b98) at state_tracker/st_atom.c:87
87 return ((a->mesa & b->mesa) ||
st_readpixels (ctx=0x8096750, x=5, y=20, width=194, height=188, format=6408,
type=5121, pack=0x80a5574, dest=0xb6941008)
at state_tracker/st_cb_readpixels.c:347
347 if (!_mesa_clip_readpixels(ctx, &x, &y, &width, &height, &clippedPacking)) {
_mesa_clip_readpixels (ctx=0x8096750, srcX=0xbffff0d4, srcY=0xbffff0d8,
width=0xbffff0dc, height=0xbffff0e0, pack=0xbffff090) at main/image.c:5789
5789 {
5790 const GLframebuffer *buffer = ctx->ReadBuffer;
5792 if (pack->RowLength == 0) {
5797 if (*srcX < 0) {
5803 if (*srcX + *width > (GLsizei) buffer->Width)
5806 if (*width <= 0)
5810 if (*srcY < 0) {
5816 if (*srcY + *height > (GLsizei) buffer->Height)
5817 *height -= (*srcY + *height - buffer->Height);
5823 }
st_readpixels (ctx=0x8096750, x=5, y=20, width=194, height=188, format=6408,
type=5121, pack=<value optimized out>, dest=0xb6941008)
at state_tracker/st_cb_readpixels.c:352
352 st_flush_bitmap_cache(st);
st_flush_bitmap_cache (st=0x80d5b98) at state_tracker/st_cb_bitmap.c:604
604 {
605 if (!st->bitmap.cache->empty) {
608 if (st->ctx->DrawBuffer) {
609 struct pipe_context *pipe = st->pipe;
612 assert(cache->xmin <= cache->xmax);
623 if (cache->trans) {
626 pipe_transfer_unmap(pipe, cache->trans);
pipe_transfer_unmap (st=0x80d5b98)
at ../../src/gallium/auxiliary/util/u_inlines.h:373
373 context->transfer_unmap( context, transfer );
nvfx_transfer_unmap (pipe=0x806ada8, ptx=0x8129940) at nvfx_transfer.c:174
174 {
175 if(ptx->resource->target != PIPE_BUFFER)
178 struct nvfx_miptree *mt = (struct nvfx_miptree *)tx->base.staging_resource;
180 if(!--tx->map_count)
nvfx_transfer_unmap (pipe=0xb702f829, ptx=0x8129940) at nvfx_transfer.c:182
182 nouveau_screen_bo_unmap(pipe->screen, mt->base.bo);
nouveau_screen_bo_unmap (pscreen=0x8068698, bo=0x8139578)
at nouveau_screen.c:138
138 {
139 nouveau_bo_unmap(bo);
nouveau_bo_unmap (bo=0x8139578) at nouveau_bo.c:456
456 if (bo->map && !nvbo->sysmem) {
465 bo->map = NULL;
466 }
nouveau_screen_bo_unmap (pscreen=0x8068698, bo=0x8139578)
at nouveau_screen.c:140
140 }
nvfx_transfer_unmap (pipe=0xb702f829, ptx=0x8129940) at nvfx_transfer.c:183
183 ptx->data = 0;
186 }
st_flush_bitmap_cache (st=0x80d5b98) at state_tracker/st_cb_bitmap.c:627
627 cache->buffer = NULL;
629 pipe->transfer_destroy(pipe, cache->trans);
nvfx_transfer_destroy (pipe=0x806ada8, ptx=0x8129940) at nvfx_transfer.c:131
131 {
132 if(ptx->resource->target == PIPE_BUFFER)
145 struct nouveau_channel* chan = nvfx_context(pipe)->screen->base.channel;
146 util_staging_transfer_destroy(pipe, ptx);
util_staging_transfer_destroy (pipe=0x806ada8, ptx=0x8129940)
at util/u_staging.c:98
98 {
101 if (tx->staging_resource != tx->base.resource)
103 if(tx->base.usage & PIPE_TRANSFER_WRITE) {
108 for(zi = 0; zi < tx->base.box.depth; ++zi)
109 pipe->resource_copy_region(pipe, tx->base.resource, tx->base.sr, tx->base.box.x, tx->base.box.y, tx->base.box.z + zi, tx->staging_resource, srcsr, 0, 0, 0, tx->base.box.width, tx->base.box.height);
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:245
245 {
247 struct nv04_2d_context *ctx = nvfx_screen(pipe->screen)->eng2d;
254 if(!w || !h)
257 if(copy_threshold < 0)
260 dst_to_gpu = dstr->usage != PIPE_USAGE_DYNAMIC && dstr->usage != PIPE_USAGE_STAGING;
263 nvfx_region_init_for_subresource(&dst, dstr, subdst, dstx, dsty, dstz, TRUE);
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:125
125 {
126 if(pt->target != PIPE_BUFFER)
128 struct nvfx_surface* ns = (struct nvfx_surface*)util_surfaces_peek(&((struct nvfx_miptree*)pt)->surfaces, pt, sub.face, sub.level, z);
136 rgn->bo = ((struct nvfx_resource*)pt)->bo;
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
nvfx_subresource_offset (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:132
132 if(pt->target == PIPE_BUFFER)
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:137
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
nvfx_subresource_offset (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:138
138 unsigned offset = mt->level_offset[level];
139 if (pt->target == PIPE_TEXTURE_CUBE)
141 else if (pt->target == PIPE_TEXTURE_3D && mt->linear_pitch)
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:137
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
nvfx_subresource_pitch (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:150
150 if(pt->target == PIPE_BUFFER)
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:138
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
nvfx_subresource_pitch (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:156
156 if(mt->linear_pitch)
159 return util_format_get_stride(pt->format, u_minify(pt->width0, level));
u_minify (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_math.h:596
596 return MAX2(1, value >> levels);
nvfx_subresource_pitch (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:159
159 return util_format_get_stride(pt->format, u_minify(pt->width0, level));
util_format_get_stride (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_resource.h:159
159 return util_format_get_stride(pt->format, u_minify(pt->width0, level));
util_format_get_nblocksx (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true) at nvfx_resource.h:159
159 return util_format_get_stride(pt->format, u_minify(pt->width0, level));
util_format_get_blockwidth (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:504
504 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blockwidth (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:506
506 assert(desc);
511 return desc->block.width;
util_format_get_stride (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksize (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksizebits (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
util_format_get_stride (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_nblocksx (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:532
532 return (x + blockwidth - 1) / blockwidth;
util_format_get_stride (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksize (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksizebits (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:485
485 return desc->block.bits;
util_format_get_blocksize (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0,
z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:496
496 assert(bits % 8 == 0);
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:138
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
139 rgn->x = x;
140 rgn->y = y;
141 rgn->z = 0;
143 nvfx_region_set_format(rgn, pt->format);
nvfx_region_set_format (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_surface.c:143
143 nvfx_region_set_format(rgn, pt->format);
util_format_get_blocksizebits (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
485 return desc->block.bits;
nvfx_region_set_format (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_surface.c:50
50 switch(bits)
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:143
143 nvfx_region_set_format(rgn, pt->format);
nvfx_region_set_format (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0,
for_write=true) at nvfx_surface.c:53
53 rgn->bpps = 0;
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0,
y=0, z=0, for_write=true) at nvfx_surface.c:144
144 if(!(pt->flags & NVFX_RESOURCE_FLAG_LINEAR))
145 nvfx_region_fixup_swizzled(rgn, z, u_minify(pt->width0, sub.level), u_minify(pt->height0, sub.level), u_minify(pt->depth0, sub.level));
u_minify (rgn=0xbffe6ed8, pt=0x812a108, sub=..., x=0, y=0, z=0, for_write=true)
at ../../../../src/gallium/auxiliary/util/u_math.h:596
596 return MAX2(1, value >> levels);
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=<value optimized out>,
sub=..., x=0, y=0, z=0, for_write=true) at nvfx_surface.c:145
145 nvfx_region_fixup_swizzled(rgn, z, u_minify(pt->width0, sub.level), u_minify(pt->height0, sub.level), u_minify(pt->depth0, sub.level));
nvfx_region_fixup_swizzled (rgn=0xbffe6ed8, pt=<value optimized out>, sub=...,
x=0, y=0, z=0, for_write=true) at nvfx_surface.c:80
80 if((depth <= 1) && (height <= 1 || width <= 2))
nvfx_region_fixup_swizzled (rgn=0xbffe6ed8, pt=<value optimized out>, sub=...,
x=0, y=0, z=0, for_write=true) at nvfx_surface.c:89
89 rgn->pitch = 0;
90 rgn->z = zslice;
91 rgn->w = width;
92 rgn->h = height;
93 rgn->d = depth;
nvfx_region_init_for_subresource (rgn=0xbffe6ed8, pt=0x200, sub=..., x=0, y=0,
z=0, for_write=true) at nvfx_surface.c:146
146 }
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:264
264 nvfx_region_init_for_subresource(&src, srcr, subsrc, srcx, srcy, srcz, FALSE);
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:125
125 {
126 if(pt->target != PIPE_BUFFER)
128 struct nvfx_surface* ns = (struct nvfx_surface*)util_surfaces_peek(&((struct nvfx_miptree*)pt)->surfaces, pt, sub.face, sub.level, z);
136 rgn->bo = ((struct nvfx_resource*)pt)->bo;
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
nvfx_subresource_offset (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_resource.h:132
132 if(pt->target == PIPE_BUFFER)
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:137
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
nvfx_subresource_offset (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_resource.h:138
138 unsigned offset = mt->level_offset[level];
139 if (pt->target == PIPE_TEXTURE_CUBE)
141 else if (pt->target == PIPE_TEXTURE_3D && mt->linear_pitch)
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:137
137 rgn->offset = nvfx_subresource_offset(pt, sub.face, sub.level, z);
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
nvfx_subresource_pitch (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_resource.h:150
150 if(pt->target == PIPE_BUFFER)
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:138
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
nvfx_subresource_pitch (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_resource.h:156
156 if(mt->linear_pitch)
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:138
138 rgn->pitch = nvfx_subresource_pitch(pt, sub.level);
139 rgn->x = x;
140 rgn->y = y;
141 rgn->z = 0;
143 nvfx_region_set_format(rgn, pt->format);
nvfx_region_set_format (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_surface.c:143
143 nvfx_region_set_format(rgn, pt->format);
util_format_get_blocksizebits (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
485 return desc->block.bits;
nvfx_region_set_format (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_surface.c:50
50 switch(bits)
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:143
143 nvfx_region_set_format(rgn, pt->format);
nvfx_region_set_format (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0, y=0, z=0,
for_write=false) at nvfx_surface.c:53
53 rgn->bpps = 0;
nvfx_region_init_for_subresource (rgn=0xbffe6eb0, pt=0x812a4c8, sub=..., x=0,
y=0, z=0, for_write=false) at nvfx_surface.c:144
144 if(!(pt->flags & NVFX_RESOURCE_FLAG_LINEAR))
146 }
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:265
265 w = util_format_get_stride(dstr->format, w) >> dst.bpps;
util_format_get_stride (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:265
265 w = util_format_get_stride(dstr->format, w) >> dst.bpps;
util_format_get_nblocksx (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:265
265 w = util_format_get_stride(dstr->format, w) >> dst.bpps;
util_format_get_blockwidth (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:504
504 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blockwidth (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:506
506 assert(desc);
511 return desc->block.width;
util_format_get_stride (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksize (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksizebits (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
util_format_get_stride (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_nblocksx (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:532
532 return (x + blockwidth - 1) / blockwidth;
util_format_get_stride (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksize (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:555
555 return util_format_get_nblocksx(format, width) * util_format_get_blocksize(format);
util_format_get_blocksizebits (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:485
485 return desc->block.bits;
util_format_get_blocksize (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:496
496 assert(bits % 8 == 0);
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:266
266 h = util_format_get_nblocksy(dstr->format, h);
util_format_get_nblocksy (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:266
266 h = util_format_get_nblocksy(dstr->format, h);
util_format_get_blockheight (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:517
517 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blockheight (pipe=0x806ada8, dstr=0x812a108, subdst=...,
dstx=0, dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0,
srcz=0, w=512, h=32)
at ../../../../src/gallium/auxiliary/util/u_format.h:519
519 assert(desc);
524 return desc->block.height;
util_format_get_nblocksy (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at ../../../../src/gallium/auxiliary/util/u_format.h:540
540 return (y + blockheight - 1) / blockheight;
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:268
268 small = (w * h <= copy_threshold);
269 if((!dst_to_gpu || !src_on_gpu) && small)
274 dstr->target == PIPE_BUFFER ? -1 : nv04_scaled_image_format(dstr->format),
nv04_scaled_image_format (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:172
172 switch(util_format_get_blocksize(format)) {
util_format_get_blocksize (format=PIPE_FORMAT_I8_UNORM)
at ../../../../src/gallium/auxiliary/util/u_format.h:493
493 {
494 uint bits = util_format_get_blocksizebits(format);
util_format_get_blocksizebits (format=PIPE_FORMAT_I8_UNORM)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (format=<value optimized out>)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
485 return desc->block.bits;
util_format_get_blocksize (format=<value optimized out>)
at ../../../../src/gallium/auxiliary/util/u_format.h:496
496 assert(bits % 8 == 0);
499 }
nv04_scaled_image_format (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:181
181 if(format == PIPE_FORMAT_B8G8R8X8_UNORM)
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:273
273 dstr->target == PIPE_BUFFER ? -1 : nvfx_surface_format(dstr->format),
nvfx_surface_format (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:153
153 switch(util_format_get_blocksize(format)) {
util_format_get_blocksize (format=PIPE_FORMAT_I8_UNORM)
at ../../../../src/gallium/auxiliary/util/u_format.h:493
493 {
494 uint bits = util_format_get_blocksizebits(format);
util_format_get_blocksizebits (format=PIPE_FORMAT_I8_UNORM)
at ../../../../src/gallium/auxiliary/util/u_format.h:478
478 const struct util_format_description *desc = util_format_description(format);
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17171
17171 {
17172 if (format >= PIPE_FORMAT_COUNT) {
17176 switch (format) {
17210 return &util_format_a8_unorm_description;
util_format_description (format=PIPE_FORMAT_I8_UNORM)
at util/u_format_table.c:17212
17212 return &util_format_i8_unorm_description;
util_format_get_blocksizebits (format=<value optimized out>)
at ../../../../src/gallium/auxiliary/util/u_format.h:480
480 assert(desc);
485 return desc->block.bits;
util_format_get_blocksize (format=<value optimized out>)
at ../../../../src/gallium/auxiliary/util/u_format.h:496
496 assert(bits % 8 == 0);
499 }
nvfx_surface_format (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:490
490 }
nvfx_resource_copy_region (pipe=0x806ada8, dstr=0x812a108, subdst=..., dstx=0,
dsty=0, dstz=0, srcr=0x812a4c8, subsrc=..., srcx=0, srcy=0, srcz=0, w=512,
h=32) at nvfx_surface.c:272
272 ret = nv04_region_copy_2d(ctx, &dst, &src, w, h,
nv04_region_copy_2d (ctx=0x8068c30, dst=0xbffe6ed8, src=0xbffe6eb0, w=512,
h=32, cs2d_format=1, sifm_format=8, dst_to_gpu=1, src_on_gpu=1)
at nv04_2d.c:1005
1005 {
1006 assert(src->bpps == dst->bpps);
1020 if(!dst->pitch == !src->pitch
1041 if((!dst_to_gpu && !src_on_gpu)
1042 || (!dst->pitch && dst->d > 1)
1041 if((!dst_to_gpu && !src_on_gpu)
nv04_region_copy_2d (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:1042
1042 || (!dst->pitch && dst->d > 1)
nv04_region_copy_2d (ctx=0x8068c30, dst=0xbffe6ed8, src=0xbffe6eb0, w=512,
h=32, cs2d_format=1, sifm_format=8, dst_to_gpu=1, src_on_gpu=1)
at nv04_2d.c:1050
1050 else if(!src->pitch)
1060 if (!dst->pitch)
1062 if(cs2d_format < 0 || sifm_format < 0 || !dst_to_gpu)
1071 assert(!nv04_region_align(dst, w, h, 6));
nv04_region_align (ctx=0x8068c30, dst=0xbffe6ed8, src=0xbffe6eb0, w=512, h=32,
cs2d_format=1, sifm_format=8, dst_to_gpu=1, src_on_gpu=1) at nv04_2d.c:456
456 if(rgn->offset & ((1 << shift) - 1))
nv04_region_copy_2d (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:1071
1071 assert(!nv04_region_align(dst, w, h, 6));
1073 nv04_region_copy_swizzle(ctx, dst, src, w, h, cs2d_format, sifm_format);
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:732
732 struct nouveau_channel *chan = ctx->swzsurf->channel;
734 struct nouveau_grobj *sifm = ctx->sifm;
739 unsigned sx = dst->x >> max_shift;
745 if(dst->w < cw)
747 if(dst->h < ch)
749 chunk_size = cw * ch << dst->bpps;
760 nv04_region_assert(dst, w, h);
nv04_region_assert (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:246
246 unsigned end = rgn->offset + nv04_region_end(rgn, w, h);
nv04_region_end (rgn=0xbffe6ed8, w=512, h=32) at nv04_2d.c:217
217 {
218 if(rgn->pitch)
221 return (nv04_swizzle_bits(rgn->x + w - 1, rgn->y + h - 1, rgn->z, rgn->w, rgn->h, rgn->d) + 1) << rgn->bpps;
nv04_swizzle_bits (rgn=0xbffe6ed8, w=512, h=32) at nv04_2d.c:163
163 if(d <= 1)
nv04_region_end (rgn=0xbffe6ed8, w=512, h=135238752) at nv04_2d.c:221
221 return (nv04_swizzle_bits(rgn->x + w - 1, rgn->y + h - 1, rgn->z, rgn->w, rgn->h, rgn->d) + 1) << rgn->bpps;
nv04_swizzle_bits (rgn=0xbffe6ed8, w=512, h=135238752) at nv04_2d.c:221
221 return (nv04_swizzle_bits(rgn->x + w - 1, rgn->y + h - 1, rgn->z, rgn->w, rgn->h, rgn->d) + 1) << rgn->bpps;
nv04_swizzle_bits_2d (rgn=0xbffe6ed8, w=512, h=135238752) at nv04_2d.c:149
149 if(h <= 1)
153 unsigned s = MIN2(w, h);
154 unsigned m = s - 1;
155 return (((x | y) & ~m) * s) | nv04_swizzle_bits_square(x & m, y & m);
nv04_swizzle_bits_square (rgn=0xbffe6ed8, w=31, h=135238752) at nv04_2d.c:142
142 return v | u;
nv04_swizzle_bits_2d (rgn=0xbffe6ed8, w=31, h=135238752) at nv04_2d.c:155
155 return (((x | y) & ~m) * s) | nv04_swizzle_bits_square(x & m, y & m);
nv04_region_end (rgn=0xbffe6ed8, w=512, h=32) at nv04_2d.c:221
221 return (nv04_swizzle_bits(rgn->x + w - 1, rgn->y + h - 1, rgn->z, rgn->w, rgn->h, rgn->d) + 1) << rgn->bpps;
222 }
nv04_region_assert (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:248
248 assert(rgn->offset <= (int)rgn->bo->size);
249 assert(end <= rgn->bo->size);
251 if(!rgn->pitch) {
252 assert(util_is_pot(rgn->w));
253 assert(util_is_pot(rgn->h));
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:761
761 nv04_region_assert(src, w, h);
nv04_region_assert (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:246
246 unsigned end = rgn->offset + nv04_region_end(rgn, w, h);
nv04_region_end (rgn=0xbffe6eb0, w=512, h=32) at nv04_2d.c:217
217 {
218 if(rgn->pitch)
219 return rgn->pitch * (rgn->y + h - 1) + ((rgn->x + w) << rgn->bpps);
222 }
nv04_region_assert (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x20, w=-1214251008,
h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:248
248 assert(rgn->offset <= (int)rgn->bo->size);
249 assert(end <= rgn->bo->size);
251 if(!rgn->pitch) {
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:739
739 unsigned sx = dst->x >> max_shift;
740 unsigned sy = dst->y >> max_shift;
741 unsigned ex = (dst->x + w - 1) >> max_shift;
742 unsigned ey = (dst->y + h - 1) >> max_shift;
743 unsigned chunks = (ex - sx + 1) * (ey - sy + 1);
763 MARK_RING (chan, 8 + chunks * 17, 2 + chunks * 2);
MARK_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:55
55 return nouveau_pushbuf_marker_emit(chan, dwords, relocs);
nouveau_pushbuf_marker_emit (chan=0x806cee8, wait_dwords=25, wait_relocs=4)
at nouveau_pushbuf.c:288
288 if (AVAIL_RING(chan) < wait_dwords)
AVAIL_RING (chan=0x806cee8, wait_dwords=25, wait_relocs=4)
at nouveau_pushbuf.h:88
88 return chan->end - chan->cur;
nouveau_pushbuf_marker_emit (chan=0x806cee8, wait_dwords=25, wait_relocs=4)
at nouveau_pushbuf.c:288
288 if (AVAIL_RING(chan) < wait_dwords)
286 struct nouveau_pushbuf_priv *nvpb = &nouveau_channel(chan)->pb;
294 nvpb->marker = chan->cur;
295 nvpb->marker_offset = nvpb->current_offset;
296 nvpb->marker_push = nvpb->nr_push;
297 nvpb->marker_relocs = nvpb->nr_relocs;
299 }
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:765
765 BEGIN_RING(chan, swzsurf, NV04_SWIZZLED_SURFACE_DMA_IMAGE, 1);
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:102
102 if (gr->bound == NOUVEAU_GROBJ_UNBOUND)
104 chan->subc[gr->subc].sequence = chan->subc_sequence++;
106 WAIT_RING(chan, size + 1);
WAIT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:94
94 if (chan->cur + size > chan->end)
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:107
107 OUT_RING(chan, (gr->subc << 13) | (size << 18) | mthd);
OUT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:67
67 *(chan->cur++) = (data);
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:766
766 OUT_RELOCo(chan, dst->bo,
OUT_RELOCo (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:172
172 return OUT_RELOC(chan, bo, 0, flags | NOUVEAU_BO_OR,
OUT_RELOC (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:146
146 return nouveau_pushbuf_emit_reloc(chan, chan->cur++, bo,
nouveau_pushbuf_emit_reloc (chan=0x806cee8, ptr=0xb693b694, bo=0x80ea680,
data=0, data2=0, flags=265, vor=3203334657, tor=3203334658)
at nouveau_pushbuf.c:335
335 ret = nouveau_reloc_emit(chan, nvpb->buffer[nvpb->current],
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1684,
reloc_ptr=0xb693b694, bo=0x80ea680, data=0, data2=0, flags=265,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:60
60 struct nouveau_pushbuf_priv *nvpb = &nouveau_channel(chan)->pb;
71 if (nvbo->user && (flags & NOUVEAU_BO_WR)) {
79 if (!(nvbo->flags & (NOUVEAU_BO_GART | NOUVEAU_BO_VRAM)))
82 rpbbo = nouveau_bo_emit_buffer(chan, reloc_bo);
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x8068828) at nouveau_bo.c:501
501 if (nvbo->pending)
541 }
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1684,
reloc_ptr=0xb693b694, bo=0x80ea680, data=0, data2=0, flags=265,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:83
83 if (!rpbbo)
85 nouveau_bo(reloc_bo)->pending_refcnt++;
87 pbbo = nouveau_bo_emit_buffer(chan, bo);
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x80ea680) at nouveau_bo.c:501
501 if (nvbo->pending)
498 struct nouveau_bo *ref = NULL;
504 if (!nvbo->handle) {
524 if (nvpb->nr_buffers >= NOUVEAU_GEM_MAX_BUFFERS)
526 pbbo = nvpb->buffers + nvpb->nr_buffers++;
527 nvbo->pending = pbbo;
528 nvbo->pending_channel = chan;
529 nvbo->pending_refcnt = 0;
531 nouveau_bo_ref(bo, &ref);
nouveau_bo_ref (ref=0x80ea680, pbo=0xbffe6c8c) at nouveau_bo.c:345
345 if (!pbo)
348 if (ref)
349 nouveau_bo(ref)->refcount++;
351 if (*pbo)
354 *pbo = ref;
356 }
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x80ea680) at nouveau_bo.c:532
532 pbbo->user_priv = (uint64_t)(unsigned long)ref;
533 pbbo->handle = nvbo->handle;
534 pbbo->valid_domains = NOUVEAU_GEM_DOMAIN_VRAM | NOUVEAU_GEM_DOMAIN_GART;
535 pbbo->read_domains = 0;
536 pbbo->write_domains = 0;
537 pbbo->presumed.domain = nvbo->domain;
538 pbbo->presumed.offset = nvbo->offset;
539 pbbo->presumed.valid = 1;
540 return pbbo;
541 }
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1684,
reloc_ptr=0xb693b694, bo=0x80ea680, data=0, data2=0, flags=265,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:88
88 if (!pbbo) {
92 nouveau_bo(bo)->pending_refcnt++;
94 if (flags & NOUVEAU_BO_VRAM)
96 if (flags & NOUVEAU_BO_GART)
99 if (!(pbbo->valid_domains & domains)) {
103 pbbo->valid_domains &= domains;
105 assert(flags & NOUVEAU_BO_RDWR);
106 if (flags & NOUVEAU_BO_RD) {
109 if (flags & NOUVEAU_BO_WR) {
110 pbbo->write_domains |= domains;
111 nvbo->write_marker = 1;
114 r = nvpb->relocs + nvpb->nr_relocs++;
115 r->reloc_bo_index = rpbbo - nvpb->buffers;
116 r->reloc_bo_offset = reloc_offset;
117 r->bo_index = pbbo - nvpb->buffers;
118 r->flags = 0;
119 if (flags & NOUVEAU_BO_LOW)
121 if (flags & NOUVEAU_BO_HIGH)
123 if (flags & NOUVEAU_BO_OR)
124 r->flags |= NOUVEAU_GEM_RELOC_OR;
125 r->data = data;
126 r->vor = vor;
127 r->tor = tor;
129 if (reloc_ptr) {
130 if (flags & NOUVEAU_BO_DUMMY)
133 *reloc_ptr = nouveau_reloc_calc(pbbo, r);
nouveau_reloc_calc (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1684,
reloc_ptr=0xb693b694, bo=0x80ea680, data=0, data2=0, flags=265,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:36
36 if (r->flags & NOUVEAU_GEM_RELOC_LOW)
39 if (r->flags & NOUVEAU_GEM_RELOC_HIGH)
44 if (r->flags & NOUVEAU_GEM_RELOC_OR) {
45 if (pbbo->presumed.domain & NOUVEAU_GEM_DOMAIN_VRAM)
46 push |= r->vor;
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1684,
reloc_ptr=0xb693b694, bo=0x80ea680, data=3203334657, data2=0, flags=265,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:133
133 *reloc_ptr = nouveau_reloc_calc(pbbo, r);
137 }
nouveau_pushbuf_emit_reloc (chan=0x806cee8, ptr=0xb693b694, bo=0x80ea680,
data=0, data2=0, flags=265, vor=3203334657, tor=3203334658)
at nouveau_pushbuf.c:342
342 }
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:769
769 BEGIN_RING(chan, swzsurf, NV04_SWIZZLED_SURFACE_FORMAT, 1);
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:102
102 if (gr->bound == NOUVEAU_GROBJ_UNBOUND)
104 chan->subc[gr->subc].sequence = chan->subc_sequence++;
106 WAIT_RING(chan, size + 1);
WAIT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:94
94 if (chan->cur + size > chan->end)
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:107
107 OUT_RING(chan, (gr->subc << 13) | (size << 18) | mthd);
OUT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:67
67 *(chan->cur++) = (data);
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:771
771 log2i(cw) << NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_U_SHIFT |
log2i (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:85
85 if (i & 0xffff0000) {
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:771
771 log2i(cw) << NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_U_SHIFT |
log2i (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:89
89 if (i & 0x0000ff00) {
90 i >>= 8;
93 if (i & 0x000000f0) {
97 if (i & 0x0000000c) {
101 if (i & 0x00000002) {
102 r += 1;
772 log2i(ch) << NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_V_SHIFT);
log2i (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:89
89 if (i & 0x0000ff00) {
log2i (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at nv04_2d.c:93
93 if (i & 0x000000f0) {
94 i >>= 4;
95 r += 4;
97 if (i & 0x0000000c) {
101 if (i & 0x00000002) {
102 r += 1;
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:770
770 OUT_RING (chan, cs2d_format |
OUT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:67
67 *(chan->cur++) = (data);
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:774
774 BEGIN_RING(chan, sifm, NV03_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE, 1);
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:102
102 if (gr->bound == NOUVEAU_GROBJ_UNBOUND)
104 chan->subc[gr->subc].sequence = chan->subc_sequence++;
106 WAIT_RING(chan, size + 1);
WAIT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:94
94 if (chan->cur + size > chan->end)
BEGIN_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:107
107 OUT_RING(chan, (gr->subc << 13) | (size << 18) | mthd);
OUT_RING (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:67
67 *(chan->cur++) = (data);
nv04_region_copy_swizzle (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578,
w=-1214251008, h=0, cs2d_format=0, sifm_format=1, dst_to_gpu=155,
src_on_gpu=-1214467312) at nv04_2d.c:775
775 OUT_RELOCo(chan, src->bo,
OUT_RELOCo (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:172
172 return OUT_RELOC(chan, bo, 0, flags | NOUVEAU_BO_OR,
OUT_RELOC (ctx=0xa4f92301, dst=0xbffe6ed8, src=0x8139578, w=-1214251008, h=0,
cs2d_format=0, sifm_format=1, dst_to_gpu=155, src_on_gpu=-1214467312)
at /usr/X11R7/include/nouveau/nouveau_pushbuf.h:146
146 return nouveau_pushbuf_emit_reloc(chan, chan->cur++, bo,
nouveau_pushbuf_emit_reloc (chan=0x806cee8, ptr=0xb693b6a4, bo=0x8139578,
data=0, data2=0, flags=263, vor=3203334657, tor=3203334658)
at nouveau_pushbuf.c:335
335 ret = nouveau_reloc_emit(chan, nvpb->buffer[nvpb->current],
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1700,
reloc_ptr=0xb693b6a4, bo=0x8139578, data=0, data2=0, flags=263,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:60
60 struct nouveau_pushbuf_priv *nvpb = &nouveau_channel(chan)->pb;
71 if (nvbo->user && (flags & NOUVEAU_BO_WR)) {
79 if (!(nvbo->flags & (NOUVEAU_BO_GART | NOUVEAU_BO_VRAM)))
80 nvbo->flags |= (flags & (NOUVEAU_BO_GART | NOUVEAU_BO_VRAM));
82 rpbbo = nouveau_bo_emit_buffer(chan, reloc_bo);
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x8068828) at nouveau_bo.c:501
501 if (nvbo->pending)
541 }
nouveau_reloc_emit (chan=0x806cee8, reloc_bo=0x8068828, reloc_offset=1700,
reloc_ptr=0xb693b6a4, bo=0x8139578, data=0, data2=0, flags=263,
vor=3203334657, tor=3203334658) at nouveau_reloc.c:83
83 if (!rpbbo)
85 nouveau_bo(reloc_bo)->pending_refcnt++;
87 pbbo = nouveau_bo_emit_buffer(chan, bo);
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x8139578) at nouveau_bo.c:501
501 if (nvbo->pending)
498 struct nouveau_bo *ref = NULL;
504 if (!nvbo->handle) {
505 ret = nouveau_bo_kalloc(nvbo, chan);
nouveau_bo_kalloc (nvbo=0x8139578, chan=0x806cee8) at nouveau_bo.c:114
114 struct nouveau_device_priv *nvdev = nouveau_device(nvbo->base.device);
119 if (nvbo->handle)
122 req.channel_hint = chan ? chan->id : 0;
123 req.align = nvbo->align;
126 info->size = nvbo->size;
127 info->domain = 0;
129 if (nvbo->flags & NOUVEAU_BO_VRAM)
130 info->domain |= NOUVEAU_GEM_DOMAIN_VRAM;
131 if (nvbo->flags & NOUVEAU_BO_GART)
132 info->domain |= NOUVEAU_GEM_DOMAIN_GART;
138 if (nvbo->flags & NOUVEAU_BO_MAP)
139 info->domain |= NOUVEAU_GEM_DOMAIN_MAPPABLE;
141 info->tile_mode = nvbo->base.tile_mode;
142 info->tile_flags = nvbo->base.tile_flags;
144 ret = drmCommandWriteRead(nvdev->fd, DRM_NOUVEAU_GEM_NEW,
drmCommandWriteRead (fd=7, drmCommandIndex=64, data=0xbffe6c30, size=48)
at xf86drm.c:2447
2447 if (drmIoctl(fd, request, data))
drmIoctl (fd=7, request=3224396928, arg=0xbffe6c30) at xf86drm.c:184
184 ret = ioctl(fd, request, arg);
185 } while (ret == -1 && (errno == EINTR || errno == EAGAIN));
187 }
drmCommandWriteRead (fd=7, drmCommandIndex=64, data=0xbffe6c30, size=48)
at xf86drm.c:2450
2450 }
nouveau_bo_kalloc (nvbo=0x8139578, chan=<value optimized out>)
at nouveau_bo.c:146
146 if (ret)
149 nouveau_bo_info(nvbo, &req.info);
nouveau_bo_info (nvbo=0x8139578, chan=<value optimized out>) at nouveau_bo.c:49
49 nvbo->handle = nvbo->base.handle = arg->handle;
50 nvbo->domain = arg->domain;
51 nvbo->size = arg->size;
52 nvbo->offset = arg->offset;
53 nvbo->map_handle = arg->map_handle;
54 nvbo->base.tile_mode = arg->tile_mode;
55 nvbo->base.tile_flags = arg->tile_flags;
nouveau_bo_kalloc (nvbo=0x8139578, chan=<value optimized out>)
at nouveau_bo.c:151
151 }
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x8139578) at nouveau_bo.c:506
506 if (ret)
509 if (nvbo->sysmem) {
512 nvbo->sysmem = NULL;
513 ret = nouveau_bo_map(bo, NOUVEAU_BO_WR);
nouveau_bo_map (bo=0x8139578, flags=8) at nouveau_bo.c:448
448 return nouveau_bo_map_range(bo, 0, bo->size, flags);
nouveau_bo_map_range (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:403
403 if (!nvbo || bo->map)
406 if (!nouveau_bo_allocated(nvbo)) {
nouveau_bo_allocated (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:62
62 if (nvbo->sysmem || nvbo->handle)
423 ret = nouveau_bo_kmap(nvbo);
nouveau_bo_kmap (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:156
156 struct nouveau_device_priv *nvdev = nouveau_device(nvbo->base.device);
158 if (nvbo->map)
nouveau_bo_map_range (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:423
423 ret = nouveau_bo_kmap(nvbo);
nouveau_bo_kmap (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:161
161 if (!nvbo->map_handle)
164 nvbo->map = mmap(0, nvbo->size, PROT_READ | PROT_WRITE,
166 if (nvbo->map == MAP_FAILED) {
nouveau_bo_map_range (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:427
427 if (!(flags & NOUVEAU_BO_NOSYNC)) {
428 ret = nouveau_bo_wait(bo, (flags & NOUVEAU_BO_WR),
nouveau_bo_wait (bo=0x8139578, cpu_write=8, no_wait=0, no_block=0)
at nouveau_bo.c:361
361 struct nouveau_device_priv *nvdev = nouveau_device(bo->device);
366 if (!nvbo->global_handle && !nvbo->write_marker && !cpu_write)
369 if (nvbo->pending &&
375 req.handle = nvbo->handle;
378 req.flags |= NOUVEAU_GEM_CPU_PREP_WRITE;
379 if (no_wait)
381 if (no_block)
385 ret = drmCommandWrite(nvdev->fd, DRM_NOUVEAU_GEM_CPU_PREP,
drmCommandWrite (fd=7, drmCommandIndex=66, data=0xbffe6bd8, size=8)
at xf86drm.c:2418
2418 if (drmIoctl(fd, request, data)) {
drmIoctl (fd=7, request=1074291842, arg=0xbffe6bd8) at xf86drm.c:184
184 ret = ioctl(fd, request, arg);
185 } while (ret == -1 && (errno == EINTR || errno == EAGAIN));
187 }
drmCommandWrite (fd=7, drmCommandIndex=66, data=0xbffe6bd8, size=8)
at xf86drm.c:2422
2422 }
nouveau_bo_wait (bo=0x8139578, cpu_write=<value optimized out>, no_wait=0,
no_block=0) at nouveau_bo.c:387
387 } while (ret == -EAGAIN);
388 if (ret)
392 nvbo->write_marker = 0;
394 }
nouveau_bo_map_range (bo=0x8139578, delta=0, size=16384, flags=8)
at nouveau_bo.c:430
430 if (ret)
434 bo->map = (char *)nvbo->map + delta;
438 }
nouveau_bo_map (bo=0x8139578, flags=8) at nouveau_bo.c:449
449 }
nouveau_bo_emit_buffer (chan=0x806cee8, bo=0x8139578) at nouveau_bo.c:514
514 if (ret)
516 nvbo->sysmem = sysmem_tmp;
518 memcpy(bo->map, nvbo->sysmem, nvbo->base.size);
519 nouveau_bo_ufree(nvbo);
nouveau_bo_ufree (chan=0x806cee8, bo=0x8139578) at nouveau_bo.c:85
85 if (nvbo->sysmem) {