summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2019-06-06 17:17:36 -0400
committerMichael S. Tsirkin <mst@redhat.com>2019-06-06 17:32:13 -0400
commit0b4a7092ffe568a55bf8f3cefdf79ff666586d91 (patch)
tree47fbd372259265d0d17999e50735b2dfc6d559c9
parent7f466032dc9e5a61217f22ea34b2df932786bbfc (diff)
vhost: fix clang build warning
Clang warns: drivers/vhost/vhost.c:2085:5: warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined] #if VHOST_ARCH_CAN_ACCEL_UACCESS ^ drivers/vhost/vhost.h:98:38: note: expanded from macro 'VHOST_ARCH_CAN_ACCEL_UACCESS' #define VHOST_ARCH_CAN_ACCEL_UACCESS defined(CONFIG_MMU_NOTIFIER) && \ ^ It's being pedantic for the sake of portability, but the fix is easy enough. Rework the definition of VHOST_ARCH_CAN_ACCEL_UACCESS to expand to a constant. Fixes: 7f466032dc9e ("vhost: access vq metadata through kernel virtual address") Link: https://github.com/ClangBuiltLinux/linux/issues/508 Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Nathan Chancellor <natechancellor@gmail.com> Tested-by: Nathan Chancellor <natechancellor@gmail.com>
-rw-r--r--drivers/vhost/vhost.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/vhost/vhost.h b/drivers/vhost/vhost.h
index c5d950cf7627..819296332913 100644
--- a/drivers/vhost/vhost.h
+++ b/drivers/vhost/vhost.h
@@ -95,8 +95,11 @@ struct vhost_uaddr {
95 bool write; 95 bool write;
96}; 96};
97 97
98#define VHOST_ARCH_CAN_ACCEL_UACCESS defined(CONFIG_MMU_NOTIFIER) && \ 98#if defined(CONFIG_MMU_NOTIFIER) && ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE == 0
99 ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE == 0 99#define VHOST_ARCH_CAN_ACCEL_UACCESS 1
100#else
101#define VHOST_ARCH_CAN_ACCEL_UACCESS 0
102#endif
100 103
101/* The virtqueue structure describes a queue attached to a device. */ 104/* The virtqueue structure describes a queue attached to a device. */
102struct vhost_virtqueue { 105struct vhost_virtqueue {