linux-brain/arch/powerpc/platforms/pseries
Mahesh Salgaonkar 5cb808572c powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX.
[ Upstream commit 74e96bf44f ]

The global mce data buffer that used to copy rtas error log is of 2048
(RTAS_ERROR_LOG_MAX) bytes in size. Before the copy we read
extended_log_length from rtas error log header, then use max of
extended_log_length and RTAS_ERROR_LOG_MAX as a size of data to be copied.
Ideally the platform (phyp) will never send extended error log with
size > 2048. But if that happens, then we have a risk of buffer overrun
and corruption. Fix this by using min_t instead.

Fixes: d368514c30 ("powerpc: Fix corruption when grabbing FWNMI data")
Reported-by: Michal Suchanek <msuchanek@suse.com>
Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-09-15 09:43:00 +02:00
..
Kconfig powerpc/pseries: Drop always true CONFIG_PSERIES_MSI 2015-10-15 20:31:56 +11:00
Makefile powerpc/pseries: Drop always true CONFIG_PSERIES_MSI 2015-10-15 20:31:56 +11:00
cmm.c powerpc/pseries: Fix error return value in cmm_mem_going_offline() 2016-07-05 23:58:52 +10:00
dlpar.c powerpc/pseries: Fix of_node_put() underflow during DLPAR remove 2017-05-25 15:44:43 +02:00
dtl.c powerpc: Replace __get_cpu_var uses 2014-11-03 12:12:32 +11:00
eeh_pseries.c powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
event_sources.c powerpc: Remove all usages of NO_IRQ 2016-09-20 20:57:12 +10:00
firmware.c powerpc: Move FW feature probing out of pseries probe() 2016-07-21 18:56:13 +10:00
hotplug-cpu.c powerpc/pseries: Remove MPIC from pseries cpu hotplug 2016-06-14 13:58:27 +10:00
hotplug-memory.c powerpc/hotplug-mem: Fix missing endian conversion of aa_index 2017-06-14 15:06:03 +02:00
hvCall.S powerpc, jump_label: Include linux/jump_label.h to get HAVE_JUMP_LABEL define 2015-04-09 09:40:29 +02:00
hvCall_inst.c powerpc: Replace __get_cpu_var uses 2014-11-03 12:12:32 +11:00
hvconsole.c powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
hvcserver.c powerpc/pseries/hvcserver: don't memset pi_buff if it is null 2015-10-09 08:03:03 +11:00
io_event_irq.c powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
iommu.c dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
kexec.c powerpc/pseries: Remove MPIC from pseries kexec 2016-06-14 13:58:27 +10:00
lpar.c powerpc/pseries: Fix passing of pp0 in updatepp() and updateboltedpp() 2017-07-27 15:07:59 -07:00
lparcfg.c powerpc/mm/radix: Isolate hash table function from pseries guest code 2016-05-11 21:53:46 +10:00
mobility.c powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration 2018-06-06 16:44:36 +02:00
msi.c powerpc: Remove all usages of NO_IRQ 2016-09-20 20:57:12 +10:00
nvram.c powerpc/pseries: Remove unused pstore headers in nvram.c 2016-06-14 16:05:35 +10:00
of_helpers.c powerpc/pseries: Correct string length in pseries_of_derive_parent() 2015-10-28 12:08:18 +09:00
of_helpers.h powerpc/pseries: extract of_helpers module 2015-10-05 21:11:24 +11:00
offline_states.h powerpc/smp: soft-replugged CPUs must go back to start_secondary 2011-04-01 15:37:09 +11:00
pci.c powerpc/pseries: use pci_host_bridge.release_fn() to kfree(phb) 2016-08-22 11:09:33 +10:00
pci_dlpar.c powerpc/pseries: use pci_host_bridge.release_fn() to kfree(phb) 2016-08-22 11:09:33 +10:00
power.c powerpc/sparse: Include headers containing prototypes 2016-06-16 22:40:19 +10:00
pseries.h powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration 2018-06-06 16:44:36 +02:00
pseries_energy.c powerpc/sparse: make some things static 2016-06-16 22:23:11 +10:00
ras.c powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX. 2018-09-15 09:43:00 +02:00
reconfig.c powerpc/pseries: Fix of_node_put() underflow during reconfig remove 2017-08-06 18:59:40 -07:00
rng.c powerpc: Use hardware RNG for arch_get_random_seed_* not arch_get_random_* 2015-07-23 19:52:03 +10:00
scanlog.c powerpc/sparse: Make a bunch of things static 2016-09-13 17:35:47 +10:00
setup.c powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit 2018-06-06 16:44:37 +02:00
smp.c powerpc/pseries: Remove MPIC from pseries smp 2016-06-14 13:58:26 +10:00
suspend.c powerpc/pseries: Switch pseries drivers to use machine_xxx_initcall() 2014-07-28 14:11:26 +10:00