linux/arch
Colin Ian King 0b3a8738b7 perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32
The u32 variable pci_dword is being masked with 0x1fffffff and then left
shifted 23 places. The shift is a u32 operation,so a value of 0x200 or
more in pci_dword will overflow the u32 and only the bottow 32 bits
are assigned to addr. I don't believe this was the original intent.
Fix this by casting pci_dword to a resource_size_t to ensure no
overflow occurs.

Note that the mask and 12 bit left shift operation does not need this
because the mask SNR_IMC_MMIO_MEM0_MASK and shift is always a 32 bit
value.

Fixes: ee49532b38 ("perf/x86/intel/uncore: Add IMC uncore support for Snow Ridge")
Addresses-Coverity: ("Unintentional integer overflow")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Link: https://lore.kernel.org/r/20210706114553.28249-1-colin.king@canonical.com
2021-08-26 08:58:02 +02:00
..
alpha libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
arc ARC: fp: set FPU_STATUS.FWE to enable FPU_STATUS update on context switch 2021-08-03 18:58:33 -07:00
arm ARM: ixp4xx: fix building both pci drivers 2021-08-12 23:10:09 +02:00
arm64 arm64 fixes for -rc7 2021-08-20 12:18:49 -07:00
csky Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
h8300 libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
hexagon Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
ia64 libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
m68k libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
microblaze Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
mips TTY/Serial fixes for 5.14-rc5 2021-08-08 10:23:13 -07:00
nds32 nds32: fix up stack guard gap 2021-07-21 15:51:37 +02:00
nios2 Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
openrisc Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
parisc libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
powerpc powerpc fixes for 5.14 #6 2021-08-22 09:49:31 -07:00
riscv RISC-V Fixes for 5.14-rc7 2021-08-21 11:04:26 -07:00
s390 s390/pci: fix use after free of zpci_dev 2021-08-18 10:12:42 +02:00
sh libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
sparc Networking fixes for 5.14-rc4, including fixes from bpf, can, WiFi (mac80211) 2021-07-30 16:01:36 -07:00
um Kbuild updates for v5.14 2021-07-10 11:01:38 -07:00
x86 perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32 2021-08-26 08:58:02 +02:00
xtensa libata-5.14-2021-07-30 2021-07-30 10:56:47 -07:00
.gitignore
Kconfig Kconfig: Introduce ARCH_WANTS_NO_INSTR and CC_HAS_NO_PROFILE_FN_ATTR 2021-06-22 11:07:18 -07:00