Re: [PATCH] Fix bitoperation for compilation with clang

2013-09-02 Thread Herbert Xu
On Thu, Aug 29, 2013 at 08:09:24PM +0200, dl...@gmx.de wrote:
> From: Jan-Simon Möller 
> 
> v2: Fix bug in statement as pointed out by Herbert Xu. Kudos to pipacs.
> 
> Author:  PaX Team 
> ML-Post: 
> http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120507/142707.html
> URL: http://llvm.linuxfoundation.org
> 
> Merge:   Jan-Simon Möller 
> 
> Description:
> 
> Fix for warning:
> linux/crypto/fcrypt.c:143:47: warning: signed shift result (0x59800) 
> requires 36 bits to
>   represent, but 'int' only has 32 bits [-Wshift-overflow]
> Z(0xef), Z(0x70), Z(0xcf), Z(0xc2), Z(0x2a), Z(0xb3), Z(0x61), 
> Z(0xad),
>  ^~~
> linux/crypto/fcrypt.c:113:29: note: expanded from macro 'Z'
> ^  ~~
> linux/include/uapi/linux/byteorder/little_endian.h:38:53: note: expanded from 
> macro
>   '__cpu_to_be32'
> ^
> linux/include/uapi/linux/swab.h:116:21: note: expanded from macro '__swab32'
> ___constant_swab32(x) : \
>^
> linux/include/uapi/linux/swab.h:18:12: note: expanded from macro 
> '___constant_swab32'
> (((__u32)(x) & (__u32)0xff00UL) <<  8) |\
>   ^
> 
> Solution - make sure we don't exceed the 32 bit range.
>  #define Z(x) cpu_to_be32(((x & 0x1f) << 27) | (x >> 5))
> 
> Signed-off-by: Jan-Simon Möller 

Patch applied.
-- 
Email: Herbert Xu 
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Fix bitoperation for compilation with clang

2013-09-02 Thread Herbert Xu
On Thu, Aug 29, 2013 at 08:09:24PM +0200, dl...@gmx.de wrote:
 From: Jan-Simon Möller dl...@gmx.de
 
 v2: Fix bug in statement as pointed out by Herbert Xu. Kudos to pipacs.
 
 Author:  PaX Team pageexec at freemail.hu
 ML-Post: 
 http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120507/142707.html
 URL: http://llvm.linuxfoundation.org
 
 Merge:   Jan-Simon Möller dl9pf at gmx.de
 
 Description:
 
 Fix for warning:
 linux/crypto/fcrypt.c:143:47: warning: signed shift result (0x59800) 
 requires 36 bits to
   represent, but 'int' only has 32 bits [-Wshift-overflow]
 Z(0xef), Z(0x70), Z(0xcf), Z(0xc2), Z(0x2a), Z(0xb3), Z(0x61), 
 Z(0xad),
  ^~~
 linux/crypto/fcrypt.c:113:29: note: expanded from macro 'Z'
 ^  ~~
 linux/include/uapi/linux/byteorder/little_endian.h:38:53: note: expanded from 
 macro
   '__cpu_to_be32'
 ^
 linux/include/uapi/linux/swab.h:116:21: note: expanded from macro '__swab32'
 ___constant_swab32(x) : \
^
 linux/include/uapi/linux/swab.h:18:12: note: expanded from macro 
 '___constant_swab32'
 (((__u32)(x)  (__u32)0xff00UL)   8) |\
   ^
 
 Solution - make sure we don't exceed the 32 bit range.
  #define Z(x) cpu_to_be32(((x  0x1f)  27) | (x  5))
 
 Signed-off-by: Jan-Simon Möller dl...@gmx.de

Patch applied.
-- 
Email: Herbert Xu herb...@gondor.apana.org.au
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] Fix bitoperation for compilation with clang

2013-08-29 Thread dl9pf
From: Jan-Simon Möller 

v2: Fix bug in statement as pointed out by Herbert Xu. Kudos to pipacs.

Author:  PaX Team 
ML-Post: 
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120507/142707.html
URL: http://llvm.linuxfoundation.org

Merge:   Jan-Simon Möller 

Description:

Fix for warning:
linux/crypto/fcrypt.c:143:47: warning: signed shift result (0x59800) 
requires 36 bits to
  represent, but 'int' only has 32 bits [-Wshift-overflow]
Z(0xef), Z(0x70), Z(0xcf), Z(0xc2), Z(0x2a), Z(0xb3), Z(0x61), Z(0xad),
 ^~~
linux/crypto/fcrypt.c:113:29: note: expanded from macro 'Z'
^  ~~
linux/include/uapi/linux/byteorder/little_endian.h:38:53: note: expanded from 
macro
  '__cpu_to_be32'
^
linux/include/uapi/linux/swab.h:116:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
   ^
linux/include/uapi/linux/swab.h:18:12: note: expanded from macro 
'___constant_swab32'
(((__u32)(x) & (__u32)0xff00UL) <<  8) |\
  ^

Solution - make sure we don't exceed the 32 bit range.
 #define Z(x) cpu_to_be32(((x & 0x1f) << 27) | (x >> 5))

Signed-off-by: Jan-Simon Möller 
CC: pagee...@freemail.hu
CC: llvmli...@lists.linuxfoundation.org
CC: beh...@converseincode.com
CC: herb...@gondor.apana.org.au
CC: da...@davemloft.net
CC: linux-cry...@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 crypto/fcrypt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/crypto/fcrypt.c b/crypto/fcrypt.c
index 3b2cf56..021d7fe 100644
--- a/crypto/fcrypt.c
+++ b/crypto/fcrypt.c
@@ -110,7 +110,7 @@ static const __be32 sbox0[256] = {
 };
 
 #undef Z
-#define Z(x) cpu_to_be32((x << 27) | (x >> 5))
+#define Z(x) cpu_to_be32(((x & 0x1f) << 27) | (x >> 5))
 static const __be32 sbox1[256] = {
Z(0x77), Z(0x14), Z(0xa6), Z(0xfe), Z(0xb2), Z(0x5e), Z(0x8c), Z(0x3e),
Z(0x67), Z(0x6c), Z(0xa1), Z(0x0d), Z(0xc2), Z(0xa2), Z(0xc1), Z(0x85),
-- 
1.8.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] Fix bitoperation for compilation with clang

2013-08-29 Thread dl9pf
From: Jan-Simon Möller dl...@gmx.de

v2: Fix bug in statement as pointed out by Herbert Xu. Kudos to pipacs.

Author:  PaX Team pageexec at freemail.hu
ML-Post: 
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120507/142707.html
URL: http://llvm.linuxfoundation.org

Merge:   Jan-Simon Möller dl9pf at gmx.de

Description:

Fix for warning:
linux/crypto/fcrypt.c:143:47: warning: signed shift result (0x59800) 
requires 36 bits to
  represent, but 'int' only has 32 bits [-Wshift-overflow]
Z(0xef), Z(0x70), Z(0xcf), Z(0xc2), Z(0x2a), Z(0xb3), Z(0x61), Z(0xad),
 ^~~
linux/crypto/fcrypt.c:113:29: note: expanded from macro 'Z'
^  ~~
linux/include/uapi/linux/byteorder/little_endian.h:38:53: note: expanded from 
macro
  '__cpu_to_be32'
^
linux/include/uapi/linux/swab.h:116:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
   ^
linux/include/uapi/linux/swab.h:18:12: note: expanded from macro 
'___constant_swab32'
(((__u32)(x)  (__u32)0xff00UL)   8) |\
  ^

Solution - make sure we don't exceed the 32 bit range.
 #define Z(x) cpu_to_be32(((x  0x1f)  27) | (x  5))

Signed-off-by: Jan-Simon Möller dl...@gmx.de
CC: pagee...@freemail.hu
CC: llvmli...@lists.linuxfoundation.org
CC: beh...@converseincode.com
CC: herb...@gondor.apana.org.au
CC: da...@davemloft.net
CC: linux-cry...@vger.kernel.org
CC: linux-kernel@vger.kernel.org
---
 crypto/fcrypt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/crypto/fcrypt.c b/crypto/fcrypt.c
index 3b2cf56..021d7fe 100644
--- a/crypto/fcrypt.c
+++ b/crypto/fcrypt.c
@@ -110,7 +110,7 @@ static const __be32 sbox0[256] = {
 };
 
 #undef Z
-#define Z(x) cpu_to_be32((x  27) | (x  5))
+#define Z(x) cpu_to_be32(((x  0x1f)  27) | (x  5))
 static const __be32 sbox1[256] = {
Z(0x77), Z(0x14), Z(0xa6), Z(0xfe), Z(0xb2), Z(0x5e), Z(0x8c), Z(0x3e),
Z(0x67), Z(0x6c), Z(0xa1), Z(0x0d), Z(0xc2), Z(0xa2), Z(0xc1), Z(0x85),
-- 
1.8.1.4

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/