From: Dave Airlie Date: Thu, 12 Feb 2009 15:27:21 +0000 (+1000) Subject: r200: fixup some CS emission sizes X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ade3660942452985afa1bb67bbeab8fed734089d;p=mesa.git r200: fixup some CS emission sizes --- diff --git a/src/mesa/drivers/dri/r200/r200_cmdbuf.c b/src/mesa/drivers/dri/r200/r200_cmdbuf.c index 6317decf641..55507be2515 100644 --- a/src/mesa/drivers/dri/r200/r200_cmdbuf.c +++ b/src/mesa/drivers/dri/r200/r200_cmdbuf.c @@ -259,7 +259,7 @@ void r200EmitAOS(r200ContextPtr rmesa, GLuint nr, GLuint offset) fprintf(stderr, "%s: nr=%d, ofs=0x%08x\n", __FUNCTION__, nr, offset); - BEGIN_BATCH(sz+2); + BEGIN_BATCH(sz+2+ (nr*2)); OUT_BATCH_PACKET3(R200_CP_CMD_3D_LOAD_VBPNTR, sz - 1); OUT_BATCH(nr); diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 431bf8235c3..d567bb77df9 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -555,6 +555,7 @@ void r200DestroyContext( __DRIcontextPrivate *driContextPriv ) r200ReleaseArrays( rmesa->radeon.glCtx, ~0 ); if (rmesa->radeon.dma.current) { + radeonReleaseDmaRegion( &rmesa->radeon ); rcommonFlushCmdBuf( &rmesa->radeon, __FUNCTION__ ); } diff --git a/src/mesa/drivers/dri/r200/r200_state_init.c b/src/mesa/drivers/dri/r200/r200_state_init.c index 3cd2dc77512..1a13c9ec13d 100644 --- a/src/mesa/drivers/dri/r200/r200_state_init.c +++ b/src/mesa/drivers/dri/r200/r200_state_init.c @@ -417,7 +417,7 @@ static void ctx_emit(GLcontext *ctx, struct radeon_state_atom *atom) GLframebuffer *fb = r200->radeon.dri.drawable->driverPrivate; /* output the first 7 bytes of context */ - BEGIN_BATCH_NO_AUTOSTATE(dwords); + BEGIN_BATCH_NO_AUTOSTATE(dwords+2+2); OUT_BATCH_TABLE(atom->cmd, 5); rrb = r200->radeon.state.depth.rrb;