From 369e454ee90ce57ac17c4a1fedef248cab9dfbca Mon Sep 17 00:00:00 2001 From: Felix Kuehling Date: Thu, 12 Oct 2017 15:05:52 -0400 Subject: [PATCH 2119/4131] drm/amdkfd: Fix compiler warning Change-Id: Iaa8fb79ac1accedcc49d416e568ed296c31a6a12 Signed-off-by: Felix Kuehling --- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_events.c b/drivers/gpu/drm/amd/amdkfd/kfd_events.c index 835e045..69c3728 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_events.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_events.c @@ -176,8 +176,14 @@ static int create_signal_event(struct file *devkfd, static int create_other_event(struct kfd_process *p, struct kfd_event *ev) { + /* Cast KFD_LAST_NONSIGNAL_EVENT to uint32_t. This allows an + * intentional integer overflow to -1 without a compiler + * warning. idr_alloc treats a negative value as "maximum + * signed integer". + */ int id = idr_alloc(&p->event_idr, ev, KFD_FIRST_NONSIGNAL_EVENT_ID, - KFD_LAST_NONSIGNAL_EVENT_ID + 1, GFP_KERNEL); + (uint32_t)KFD_LAST_NONSIGNAL_EVENT_ID + 1, + GFP_KERNEL); if (id < 0) return id; -- 2.7.4