From 5798894b684b3a6caee08baf38ca7823de322bb4 Mon Sep 17 00:00:00 2001 From: ajesh Date: Thu, 25 Jul 2019 20:00:37 +0530 Subject: [PATCH] gpu: nvgpu: fix CERT-C violations in utils unit INT31-C requires that integer conversions do not result in lost or misinterpreted data. Fix violations of INT31-C in utils unit. Jira NVGPU-3609 Change-Id: Iacf62957b6a3a84ac99e35109f3324ace2ea9454 Signed-off-by: ajesh Reviewed-on: https://git-master.nvidia.com/r/2161334 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit Reviewed-by: Nitin Kumbhar Reviewed-by: Vaibhav Kachore Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/include/nvgpu/posix/utils.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/nvgpu/include/nvgpu/posix/utils.h b/drivers/gpu/nvgpu/include/nvgpu/posix/utils.h index b852aed11..42f0badbc 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/posix/utils.h +++ b/drivers/gpu/nvgpu/include/nvgpu/posix/utils.h @@ -195,8 +195,8 @@ static inline unsigned int nvgpu_posix_hweight16(uint16_t x) { unsigned int ret; - ret = nvgpu_posix_hweight8((uint8_t)x); - ret += nvgpu_posix_hweight8((uint8_t)((x & 0xff00U) >> 8)); + ret = nvgpu_posix_hweight8((uint8_t)(x & U8(0xff))); + ret += nvgpu_posix_hweight8((uint8_t)((x >> U8(8)) & U8(0xff))); return ret; } @@ -205,8 +205,8 @@ static inline unsigned int nvgpu_posix_hweight32(uint32_t x) { unsigned int ret; - ret = nvgpu_posix_hweight16((uint16_t)x); - ret += nvgpu_posix_hweight16((uint16_t)((x & 0xffff0000U) >> 16)); + ret = nvgpu_posix_hweight16((uint16_t)(x & U16(0xffff))); + ret += nvgpu_posix_hweight16((uint16_t)((x >> U16(16)) & U16(0xffff))); return ret; }