mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
pdx: cast PAGE_SIZE value ahead of shifting
Coverity complains that:
In expression 0x1000 << bottom_shift, left shifting by more than 31 bits
has undefined behavior. The shift amount, bottom_shift, is as much as 63.
Cast PAGE_SIZE to paddr_t so it has the right width.
Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Coverity ID: 1662707
Fixes: bac2000063 ('x86-64: reduce range spanned by 1:1 mapping and frame table indexes')
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
This commit is contained in:
1 parent
cf8fdef99f
commit
4dd3230290
1 file changed
+1
-1
+1
-1
@@ -274,7 +274,7 @@ bool __init pfn_pdx_compression_setup(paddr_t base)
|
||||
|
||||
pfn_pdx_hole_shift = hole_shift;
|
||||
pfn_pdx_bottom_mask = (1UL << bottom_shift) - 1;
|
||||
ma_va_bottom_mask = (PAGE_SIZE << bottom_shift) - 1;
|
||||
ma_va_bottom_mask = ((paddr_t)PAGE_SIZE << bottom_shift) - 1;
|
||||
pfn_hole_mask = ((1UL << hole_shift) - 1) << bottom_shift;
|
||||
pfn_top_mask = ~(pfn_pdx_bottom_mask | pfn_hole_mask);
|
||||
ma_top_mask = pfn_top_mask << PAGE_SHIFT;
|
||||
|
||||