Re: [PATCH] usercopy: Add parentheses around assignment in test_copy_struct_from_user

From: Christian Brauner
Date: Thu Oct 03 2019 - 15:13:23 EST


On Thu, Oct 03, 2019 at 10:11:21AM -0700, Nathan Chancellor wrote:
> Clang warns:
>
> lib/test_user_copy.c:96:10: warning: using the result of an assignment
> as a condition without parentheses [-Wparentheses]
> if (ret |= test(umem_src == NULL, "kmalloc failed"))
> ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> lib/test_user_copy.c:96:10: note: place parentheses around the
> assignment to silence this warning
> if (ret |= test(umem_src == NULL, "kmalloc failed"))
> ^
> ( )
> lib/test_user_copy.c:96:10: note: use '!=' to turn this compound
> assignment into an inequality comparison
> if (ret |= test(umem_src == NULL, "kmalloc failed"))
> ^~
> !=
>
> Add the parentheses as it suggests because this is intentional.
>
> Fixes: f5a1a536fa14 ("lib: introduce copy_struct_from_user() helper")
> Link: https://github.com/ClangBuiltLinux/linux/issues/731
> Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>

Applied to:
https://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux.git/log/?h=copy_struct_from_user

Thanks!
Christian