From: Nathan Chancellor Date: Mon, 2 Oct 2023 17:53:13 +0000 (-0700) Subject: vfio/cdx: Add parentheses between bitwise AND expression and logical NOT X-Git-Tag: v6.7-rc1~130^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f9af5ad0f5b599fadf6fc7c9c2153d7919c7691e;p=thirdparty%2Fkernel%2Flinux.git vfio/cdx: Add parentheses between bitwise AND expression and logical NOT When building with clang, there is a warning (or error with CONFIG_WERROR=y) due to a bitwise AND and logical NOT in vfio_cdx_bm_ctrl(): drivers/vfio/cdx/main.c:77:6: error: logical not is only applied to the left hand side of this bitwise operator [-Werror,-Wlogical-not-parentheses] 77 | if (!vdev->flags & BME_SUPPORT) | ^ ~ drivers/vfio/cdx/main.c:77:6: note: add parentheses after the '!' to evaluate the bitwise operator first 77 | if (!vdev->flags & BME_SUPPORT) | ^ | ( ) drivers/vfio/cdx/main.c:77:6: note: add parentheses around left hand side expression to silence this warning 77 | if (!vdev->flags & BME_SUPPORT) | ^ | ( ) 1 error generated. Add the parentheses as suggested in the first note, which is clearly what was intended here. Closes: https://github.com/ClangBuiltLinux/linux/issues/1939 Fixes: 8a97ab9b8b31 ("vfio-cdx: add bus mastering device feature support") Signed-off-by: Nathan Chancellor Reviewed-by: Philippe Mathieu-Daudé Acked-by: Nikhil Agarwal Reviewed-by: Nick Desaulniers Link: https://lore.kernel.org/r/20231002-vfio-cdx-logical-not-parentheses-v1-1-a8846c7adfb6@kernel.org Signed-off-by: Alex Williamson --- diff --git a/drivers/vfio/cdx/main.c b/drivers/vfio/cdx/main.c index a437630be3546..a63744302b5ea 100644 --- a/drivers/vfio/cdx/main.c +++ b/drivers/vfio/cdx/main.c @@ -74,7 +74,7 @@ static int vfio_cdx_bm_ctrl(struct vfio_device *core_vdev, u32 flags, struct vfio_device_feature_bus_master ops; int ret; - if (!vdev->flags & BME_SUPPORT) + if (!(vdev->flags & BME_SUPPORT)) return -ENOTTY; ret = vfio_check_feature(flags, argsz, VFIO_DEVICE_FEATURE_SET,