Subject: Re: [PATCH] drm/i915: fix command parser debug print format mismatches

From: Randy Dunlap <[email-masked]>
Date: Wed, 02 Apr 2014 08:26:23 -0700

On 04/02/2014 01:24 AM, Jani Nikula wrote:
> Drop the cast from the pointer diff to fix:
> 
> drivers/gpu/drm/i915/i915_cmd_parser.c:405:4: warning: format '%td' expects
> argument of type 'ptrdiff_t', but argument 5 has type 'long unsigned int'
> [-Wformat]
> 
> While at it, use %u for u32.
> 
> Reported-by: Randy Dunlap <[email-masked]>
> Signed-off-by: Jani Nikula <[email-masked]>
> 
> ---
> 
> Randy, try as I might, I wasn't able to coerce gcc to spit out that
> warning. Please enlighten me! (Does this fix the warn?)

Yes, it does.  Thanks.

Acked-by: Randy Dunlap <[email-masked]>

> Thanks for the report.
> ---
>  drivers/gpu/drm/i915/i915_cmd_parser.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_cmd_parser.c b/drivers/gpu/drm/i915/i915_cmd_parser.c
> index 71ac3b4eaa0d..e5c4e99a22fb 100644
> --- a/drivers/gpu/drm/i915/i915_cmd_parser.c
> +++ b/drivers/gpu/drm/i915/i915_cmd_parser.c
> @@ -811,10 +811,10 @@ int i915_parse_cmds(struct intel_ring_buffer *ring,
>  			length = ((*cmd & desc->length.mask) + LENGTH_BIAS);
>  
>  		if ((batch_end - cmd) < length) {
> -			DRM_DEBUG_DRIVER("CMD: Command length exceeds batch length: 0x%08X length=%d batchlen=%td\n",
> +			DRM_DEBUG_DRIVER("CMD: Command length exceeds batch length: 0x%08X length=%u batchlen=%td\n",
>  					 *cmd,
>  					 length,
> -					 (unsigned long)(batch_end - cmd));
> +					 batch_end - cmd);
>  			ret = -EINVAL;
>  			break;
>  		}
> 

-- 
~Randy