On Wed, Apr 19, 2017 at 8:14 PM, Matthias Kaehlcke <mka@xxxxxxxxxxxx> wrote: > El Tue, Apr 04, 2017 at 11:07:20AM -0700 Matthias Kaehlcke ha dit: > >> From: Mark Charlebois <charlebm@xxxxxxxxx> >> >> cmd in COMPATIBLE_IOCTL is always a u32, so cast it so there isn't a >> warning about an overflow in XFORM. >> >> From: Mark Charlebois <charlebm@xxxxxxxxx> >> Signed-off-by: Mark Charlebois <charlebm@xxxxxxxxx> >> Signed-off-by: Behan Webster <behanw@xxxxxxxxxxxxxxxxxx> >> Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> >> Acked-by: Arnd Bergmann <arnd@xxxxxxxx> >> --- >> Resending https://patchwork.kernel.org/patch/4961631/ The patch looks correct to me, Acked-by: Arnd Bergmann <arnd@xxxxxxxx> >> fs/compat_ioctl.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c >> index 11d087b2b28e..6116d5275a3e 100644 >> --- a/fs/compat_ioctl.c >> +++ b/fs/compat_ioctl.c >> @@ -833,7 +833,7 @@ static int compat_ioctl_preallocate(struct file *file, >> */ >> #define XFORM(i) (((i) ^ ((i) << 27) ^ ((i) << 17)) & 0xffffffff) >> >> -#define COMPATIBLE_IOCTL(cmd) XFORM(cmd), >> +#define COMPATIBLE_IOCTL(cmd) XFORM((u32)cmd), >> /* ioctl should not be warned about even if it's not implemented. >> Valid reasons to use this: >> - It is implemented with ->compat_ioctl on some device, but programs > > Ping, any feedback on this change? One minor comment on the patch: when you address a warning in a patch, it helps to put the compiler warning output into the changelog. Aside from that, I see that you are upstreaming a number of clang related patches. I actually have a longer series of clang patches that I took from llvmlinux and hacked up to the point where I could build ARM randconfig kernels without any warnings or errors. If you are interested, I can separate the clang patches from my normal randconfig build tree and upload the git tree for you to look at and cherry-pick further patches. Arnd