Clang reports that a comparison in amdgpu_userq_wait_ioctl()
is always false.

The field num_syncobj_timeline_handles is defined as __u16.
A __u16 value can only go up to 65535.

But AMDGPU_USERQ_MAX_HANDLES was defined as 65536.
So the check comparing the field with this limit could
never be true.

Change the limit to U16_MAX (65535) to match the field type.

Fixes the below:
amdgpu_userq_fence.c:642:46: warning: result of comparison of constant 65536 
with expression of type '__u16' (aka 'unsigned short') is always false 
[-Wtautological-constant-out-of-range-compare]
            wait_info->num_syncobj_timeline_handles > AMDGPU_USERQ_MAX_HANDLES 
||

Cc: Alex Deucher <[email protected]>
Cc: Christian König <[email protected]>
Signed-off-by: Srinivasan Shanmugam <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
index 136071172111..e4bca62bcf14 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
@@ -35,7 +35,7 @@
 static const struct dma_fence_ops amdgpu_userq_fence_ops;
 static struct kmem_cache *amdgpu_userq_fence_slab;
 
-#define AMDGPU_USERQ_MAX_HANDLES       (1U << 16)
+#define AMDGPU_USERQ_MAX_HANDLES       U16_MAX
 
 int amdgpu_userq_fence_slab_init(void)
 {
-- 
2.34.1

Reply via email to