Update data type of '1' to '1ull' in below assignment
size = 1ull << sizebit;

to fix incorrect assignment issue.
e.g: when sizebit was 31, 0x80000000 got sign extended to
0xffffffff_80000000

Signed-off-by: Priyanka Jain <priyanka.j...@nxp.com>
Reported-by: Dean Saridakis <dean.sarida...@baesystems.com>
---
 arch/powerpc/cpu/mpc8xxx/fsl_pamu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c 
b/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
index 2c378b7615..5229949951 100644
--- a/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
+++ b/arch/powerpc/cpu/mpc8xxx/fsl_pamu.c
@@ -390,7 +390,7 @@ int config_pamu(struct pamu_addr_tbl *tbl, int num_entries, 
uint32_t liodn)
                return -1;
 
        sizebit = __ilog2_roundup_64(size);
-       size = 1 << sizebit;
+       size = 1ull << sizebit;
        debug("min start_addr is %llx\n", min_addr);
        debug("max end_addr is %llx\n", max_addr);
        debug("size found is  %llx\n", size);
-- 
2.17.1

Reply via email to