[Mesa-dev] [PATCH] i830: Fix stack corruption

Ian Romanick idr at freedesktop.org
Fri Jul 20 16:31:53 PDT 2012


On 07/20/2012 04:18 PM, Matt Turner wrote:
> On Fri, Jul 20, 2012 at 3:45 PM, Chad Versace
> <chad.versace at linux.intel.com> wrote:
>> Found by compiler warning:
>>      i830_texstate.c:131:28: warning: argument to 'sizeof' in 'memset' call
>>            is the same expression as the destination; did you mean to
>>            dereference it?  [-Wsizeof-pointer-memaccess]
>>         memset(state, 0, sizeof(state));
>>                ~~~~~            ^~~~~
>>
>> On 64-bit systems, memset here would write an extra 4 bytes.
>>
>> Signed-off-by: Chad Versace <chad.versace at linux.intel.com>
>> ---
>>   src/mesa/drivers/dri/i915/i830_texstate.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/mesa/drivers/dri/i915/i830_texstate.c b/src/mesa/drivers/dri/i915/i830_texstate.c
>> index 5f32b92..b7d2d33 100644
>> --- a/src/mesa/drivers/dri/i915/i830_texstate.c
>> +++ b/src/mesa/drivers/dri/i915/i830_texstate.c
>> @@ -128,7 +128,7 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3)
>>      GLubyte border[4];
>>      GLuint dst_x, dst_y;
>>
>> -   memset(state, 0, sizeof(state));
>> +   memset(state, 0, sizeof(*state));
>>
>>      /*We need to refcount these. */
>>
>> --
>
> Reviewed-by: Matt Turner <mattst88 at gmail.com>
>
> I don't guess there are any 64-bit systems with i915s in them though, are there?

Yes.  There are lots of 64-bit i915 and some 64-bit i830 (i865G, 
specifically).  Remember the Pentium 4 "Prescott"? :)  There was even 
one crazy i865G motherboard that could take a Core2.


More information about the mesa-dev mailing list