From: Denis Arefev Date: Thu, 24 Aug 2023 13:02:15 +0000 (+0300) Subject: mtd: lpddr_cmds: Add literal suffix X-Git-Tag: v6.7-rc1~61^2~34 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8ffd18a6744b18ff9b58abf7261aaccd78be98cf;p=thirdparty%2Fkernel%2Flinux.git mtd: lpddr_cmds: Add literal suffix The value of an arithmetic expression 1 << lpddr->qinfo->DevSizeShift is subject to overflow due to a failure to cast operands to a larger data type before performing arithmetic Found by Linux Verification Center (linuxtesting.org) with SVACE. Signed-off-by: Denis Arefev Signed-off-by: Miquel Raynal Link: https://lore.kernel.org/linux-mtd/20230824130215.10396-1-arefev@swemel.ru --- diff --git a/drivers/mtd/lpddr/lpddr_cmds.c b/drivers/mtd/lpddr/lpddr_cmds.c index 3c3939bc2dadc..14e36ae71958f 100644 --- a/drivers/mtd/lpddr/lpddr_cmds.c +++ b/drivers/mtd/lpddr/lpddr_cmds.c @@ -61,7 +61,7 @@ struct mtd_info *lpddr_cmdset(struct map_info *map) mtd->_point = lpddr_point; mtd->_unpoint = lpddr_unpoint; } - mtd->size = 1 << lpddr->qinfo->DevSizeShift; + mtd->size = 1ULL << lpddr->qinfo->DevSizeShift; mtd->erasesize = 1 << lpddr->qinfo->UniformBlockSizeShift; mtd->writesize = 1 << lpddr->qinfo->BufSizeShift;