From: Dave Airlie Date: Wed, 24 Feb 2010 09:13:07 +0000 (+1000) Subject: radeon/r200: fix the state emission before kernel clear X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3f5bac8960a5c6d1f08f0dc849676139b9d6ce5c;p=mesa.git radeon/r200: fix the state emission before kernel clear this moves the emission outside the lock and adds r200 support. Signed-off-by: Dave Airlie --- diff --git a/src/mesa/drivers/dri/r200/r200_ioctl.c b/src/mesa/drivers/dri/r200/r200_ioctl.c index a1b505707ea..b72f69b7f45 100644 --- a/src/mesa/drivers/dri/r200/r200_ioctl.c +++ b/src/mesa/drivers/dri/r200/r200_ioctl.c @@ -61,6 +61,8 @@ static void r200KernelClear(GLcontext *ctx, GLuint flags) GLint cx, cy, cw, ch, ret; GLuint i; + radeonEmitState(&rmesa->radeon); + LOCK_HARDWARE( &rmesa->radeon ); /* Throttle the number of clear ioctls we do. diff --git a/src/mesa/drivers/dri/radeon/radeon_ioctl.c b/src/mesa/drivers/dri/radeon/radeon_ioctl.c index d429f15fa5b..5ac526c6deb 100644 --- a/src/mesa/drivers/dri/radeon/radeon_ioctl.c +++ b/src/mesa/drivers/dri/radeon/radeon_ioctl.c @@ -442,6 +442,8 @@ static void radeonKernelClear(GLcontext *ctx, GLuint flags) GLint ret, i; GLint cx, cy, cw, ch; + radeonEmitState(&rmesa->radeon); + LOCK_HARDWARE( &rmesa->radeon ); /* compute region after locking: */ @@ -481,7 +483,6 @@ static void radeonKernelClear(GLcontext *ctx, GLuint flags) } } - radeonEmitState(&rmesa->radeon); /* Send current state to the hardware */ rcommonFlushCmdBufLocked( &rmesa->radeon, __FUNCTION__ );