linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH -resend] cris: Use "int" for ssize_t to match size_t
@ 2012-12-04 10:39 Geert Uytterhoeven
  2012-12-06 14:46 ` Jesper Nilsson
  0 siblings, 1 reply; 2+ messages in thread
From: Geert Uytterhoeven @ 2012-12-04 10:39 UTC (permalink / raw)
  To: Mikael Starvik, Jesper Nilsson, Andrew Morton
  Cc: linux-cris-kernel, linux-kernel, Geert Uytterhoeven,
	Mikael Starvik, Jesper Nilsson, Hans-Peter Nilsson

On cris-linux-gcc, __SIZE_TYPE__ expands to "unsigned int", as
gcc-4.6.3-nolibc/cris-linux/lib/gcc/cris-linux/4.6.3/plugin/include/config/cris/linux.h
has

    #define SIZE_TYPE "unsigned int"

Hence __kernel_size_t is also "unsigned int".  But __kernel_ssize_t is
"long", which has a different base type, causing compiler warnings like:

    fs/quota/quota_tree.c:372:4: warning: format '%zd' expects argument of type 'signed size_t', but argument 4 has type 'ssize_t' [-Wformat]

To fix this, __kernel_ssize_t should be changed to "int". Hence cris can
just use the generic 32-bit versions from include/asm-generic/posix_types.h
for all size-related types.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Cc: Hans-Peter Nilsson <hans-peter.nilsson@axis.com>
Cc: linux-cris-kernel@axis.com
---
 arch/cris/include/asm/posix_types.h |    5 -----
 1 files changed, 0 insertions(+), 5 deletions(-)

diff --git a/arch/cris/include/asm/posix_types.h b/arch/cris/include/asm/posix_types.h
index ce4e517..0f22e6a 100644
--- a/arch/cris/include/asm/posix_types.h
+++ b/arch/cris/include/asm/posix_types.h
@@ -22,11 +22,6 @@ typedef unsigned short	__kernel_uid_t;
 typedef unsigned short	__kernel_gid_t;
 #define __kernel_uid_t __kernel_uid_t
 
-typedef __SIZE_TYPE__	__kernel_size_t;
-typedef long		__kernel_ssize_t;
-typedef int		__kernel_ptrdiff_t;
-#define __kernel_size_t __kernel_size_t
-
 typedef unsigned short	__kernel_old_dev_t;
 #define __kernel_old_dev_t __kernel_old_dev_t
 
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH -resend] cris: Use "int" for ssize_t to match size_t
  2012-12-04 10:39 [PATCH -resend] cris: Use "int" for ssize_t to match size_t Geert Uytterhoeven
@ 2012-12-06 14:46 ` Jesper Nilsson
  0 siblings, 0 replies; 2+ messages in thread
From: Jesper Nilsson @ 2012-12-06 14:46 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Mikael Starvik, Andrew Morton, linux-cris-kernel, linux-kernel,
	Hans-Peter Nilsson

On Tue, Dec 04, 2012 at 11:39:56AM +0100, Geert Uytterhoeven wrote:
> On cris-linux-gcc, __SIZE_TYPE__ expands to "unsigned int", as
> gcc-4.6.3-nolibc/cris-linux/lib/gcc/cris-linux/4.6.3/plugin/include/config/cris/linux.h
> has
> 
>     #define SIZE_TYPE "unsigned int"
> 
> Hence __kernel_size_t is also "unsigned int".  But __kernel_ssize_t is
> "long", which has a different base type, causing compiler warnings like:
> 
>     fs/quota/quota_tree.c:372:4: warning: format '%zd' expects argument of type 'signed size_t', but argument 4 has type 'ssize_t' [-Wformat]
> 
> To fix this, __kernel_ssize_t should be changed to "int". Hence cris can
> just use the generic 32-bit versions from include/asm-generic/posix_types.h
> for all size-related types.

Yup, I agree, thanks!

> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Cc: Mikael Starvik <starvik@axis.com>

Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>

> Cc: Hans-Peter Nilsson <hans-peter.nilsson@axis.com>
> Cc: linux-cris-kernel@axis.com
> ---
>  arch/cris/include/asm/posix_types.h |    5 -----
>  1 files changed, 0 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/cris/include/asm/posix_types.h b/arch/cris/include/asm/posix_types.h
> index ce4e517..0f22e6a 100644
> --- a/arch/cris/include/asm/posix_types.h
> +++ b/arch/cris/include/asm/posix_types.h
> @@ -22,11 +22,6 @@ typedef unsigned short	__kernel_uid_t;
>  typedef unsigned short	__kernel_gid_t;
>  #define __kernel_uid_t __kernel_uid_t
>  
> -typedef __SIZE_TYPE__	__kernel_size_t;
> -typedef long		__kernel_ssize_t;
> -typedef int		__kernel_ptrdiff_t;
> -#define __kernel_size_t __kernel_size_t
> -
>  typedef unsigned short	__kernel_old_dev_t;
>  #define __kernel_old_dev_t __kernel_old_dev_t
>  
> -- 
> 1.7.0.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/

/^JN - Jesper Nilsson
-- 
               Jesper Nilsson -- jesper.nilsson@axis.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-12-06 14:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-04 10:39 [PATCH -resend] cris: Use "int" for ssize_t to match size_t Geert Uytterhoeven
2012-12-06 14:46 ` Jesper Nilsson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).