habanalabs: use u64 when comparing variables' sum to u32_max

This patch fixes two smatch warnings about two if statements that are
always true because of the types of the variables used - u32 when
comparing the sum to u32_max.

The patch changes the types to be u64 so the accumalted sum can be checked
if it is larger than u32_max

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Oded Gabbay 2019-02-24 11:55:26 +02:00 committed by Greg Kroah-Hartman
parent b5958faa34
commit e99f1683bb
2 changed files with 5 additions and 3 deletions

View File

@ -3474,7 +3474,8 @@ u32 goya_get_dma_desc_list_size(struct hl_device *hdev,
struct sg_table *sgt) struct sg_table *sgt)
{ {
struct scatterlist *sg, *sg_next_iter; struct scatterlist *sg, *sg_next_iter;
u32 count, len, dma_desc_cnt, len_next; u32 count, dma_desc_cnt;
u64 len, len_next;
dma_addr_t addr, addr_next; dma_addr_t addr, addr_next;
dma_desc_cnt = 0; dma_desc_cnt = 0;
@ -3915,7 +3916,8 @@ static int goya_patch_dma_packet(struct hl_device *hdev,
{ {
struct hl_userptr *userptr; struct hl_userptr *userptr;
struct scatterlist *sg, *sg_next_iter; struct scatterlist *sg, *sg_next_iter;
u32 count, len, dma_desc_cnt, len_next; u32 count, dma_desc_cnt;
u64 len, len_next;
dma_addr_t dma_addr, dma_addr_next; dma_addr_t dma_addr, dma_addr_next;
enum goya_dma_direction user_dir; enum goya_dma_direction user_dir;
u64 device_memory_addr, addr; u64 device_memory_addr, addr;

View File

@ -122,7 +122,7 @@
#define VA_DDR_SPACE_SIZE (VA_DDR_SPACE_END - \ #define VA_DDR_SPACE_SIZE (VA_DDR_SPACE_END - \
VA_DDR_SPACE_START) /* 128GB */ VA_DDR_SPACE_START) /* 128GB */
#define DMA_MAX_TRANSFER_SIZE 0xFFFFFFFF #define DMA_MAX_TRANSFER_SIZE U32_MAX
#define HW_CAP_PLL 0x00000001 #define HW_CAP_PLL 0x00000001
#define HW_CAP_DDR_0 0x00000002 #define HW_CAP_DDR_0 0x00000002