https://github.com/torvalds/linux
Revision 78ce241099bb363b19dbd0245442e66c8de8f567 authored by Borislav Petkov on 17 May 2018, 08:46:26 UTC, committed by Thomas Gleixner on 19 May 2018, 13:19:30 UTC
... into a global, two-dimensional array and service subsequent reads from
that cache to avoid rdmsr_on_cpu() calls during CPU hotplug (IPIs with IRQs
disabled).

In addition, this fixes a KASAN slab-out-of-bounds read due to wrong usage
of the bank->blocks pointer.

Fixes: 27bd59502702 ("x86/mce/AMD: Get address from already initialized block")
Reported-by: Johannes Hirte <johannes.hirte@datenkhaos.de>
Tested-by: Johannes Hirte <johannes.hirte@datenkhaos.de>
Signed-off-by: Borislav Petkov <bp@suse.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Yazen Ghannam <yazen.ghannam@amd.com>
Link: http://lkml.kernel.org/r/20180414004230.GA2033@probook
1 parent 73fcb1a
History
Tip revision: 78ce241099bb363b19dbd0245442e66c8de8f567 authored by Borislav Petkov on 17 May 2018, 08:46:26 UTC
x86/MCE/AMD: Cache SMCA MISC block addresses
Tip revision: 78ce241
File Mode Size
ib.h -rw-r--r-- 3.3 KB
ib_addr.h -rw-r--r-- 9.3 KB
ib_cache.h -rw-r--r-- 5.6 KB
ib_cm.h -rw-r--r-- 18.9 KB
ib_fmr_pool.h -rw-r--r-- 3.4 KB
ib_hdrs.h -rw-r--r-- 8.6 KB
ib_mad.h -rw-r--r-- 28.1 KB
ib_marshall.h -rw-r--r-- 2.0 KB
ib_pack.h -rw-r--r-- 9.0 KB
ib_pma.h -rw-r--r-- 5.4 KB
ib_sa.h -rw-r--r-- 22.3 KB
ib_smi.h -rw-r--r-- 5.5 KB
ib_umem.h -rw-r--r-- 3.5 KB
ib_umem_odp.h -rw-r--r-- 5.3 KB
ib_verbs.h -rw-r--r-- 113.1 KB
iw_cm.h -rw-r--r-- 8.6 KB
iw_portmap.h -rw-r--r-- 7.5 KB
mr_pool.h -rw-r--r-- 954 bytes
opa_addr.h -rw-r--r-- 4.4 KB
opa_port_info.h -rw-r--r-- 14.8 KB
opa_smi.h -rw-r--r-- 4.3 KB
opa_vnic.h -rw-r--r-- 4.0 KB
rdma_cm.h -rw-r--r-- 14.7 KB
rdma_cm_ib.h -rw-r--r-- 2.1 KB
rdma_netlink.h -rw-r--r-- 3.3 KB
rdma_vt.h -rw-r--r-- 15.9 KB
rdmavt_cq.h -rw-r--r-- 3.4 KB
rdmavt_mr.h -rw-r--r-- 6.0 KB
rdmavt_qp.h -rw-r--r-- 21.2 KB
restrack.h -rw-r--r-- 4.0 KB
rw.h -rw-r--r-- 2.8 KB
uverbs_ioctl.h -rw-r--r-- 17.9 KB
uverbs_named_ioctl.h -rw-r--r-- 3.7 KB
uverbs_std_types.h -rw-r--r-- 3.4 KB
uverbs_types.h -rw-r--r-- 7.1 KB

back to top