linux_dsm_epyc7002/arch/arm
Rabin Vincent 483a6c9d44 ARM: 8064/1: fix v7-M signal return
According to the ARM ARM, the behaviour is UNPREDICTABLE if the PC read
from the exception return stack is not half word aligned.  See the
pseudo code for ExceptionReturn() and PopStack().

The signal handler's address has the bit 0 set, and setup_return()
directly writes this to regs->ARM_pc.  Current hardware happens to
discard this bit, but QEMU's emulation doesn't and this makes processes
crash.  Mask out bit 0 before the exception return in order to get
predictable behaviour.

Fixes: 19c4d593f0 ("ARM: ARMv7-M: Add support for exception handling")

Cc: stable@kernel.org
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-05-25 23:44:27 +01:00
..
boot Staging driver fixes for 3.15-rc6 2014-05-21 19:00:09 +09:00
common ARM: SoC fixes for 3.15-rc 2014-05-13 11:07:02 +09:00
configs Set of fixes for the Allwinner support for 3.15 2014-05-10 20:25:07 -07:00
crypto
firmware ARM: trusted_foundations: implement prepare_idle() 2014-02-18 13:46:46 -07:00
include ARM: 8051/1: put_user: fix possible data corruption in put_user 2014-05-25 23:44:25 +01:00
kernel ARM: 8064/1: fix v7-M signal return 2014-05-25 23:44:27 +01:00
kvm arm: KVM: fix possible misalignment of PGDs and bounce page 2014-04-28 03:21:48 -07:00
lib ARM: 7990/1: asm: rename logical shift macros push pull into lspush lspull 2014-02-25 11:33:57 +00:00
mach-at91 First found of IIO fixes for the 3.15 cycle. 2014-04-22 21:29:20 -07:00
mach-bcm ARM: SoC specific changes 2014-04-05 14:19:54 -07:00
mach-berlin ARM: select HAVE_SMP for V7 multi-platform 2014-02-19 16:43:27 -06:00
mach-clps711x ARM: SoC specific changes 2014-04-05 14:19:54 -07:00
mach-cns3xxx ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-davinci ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
mach-dove ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
mach-ebsa110 ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-efm32 ARM: efm32: drop unused file <mach/timex.h> 2014-02-24 10:07:27 +01:00
mach-ep93xx ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-exynos ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-footbridge ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-gemini ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-highbank ARM: select HAVE_SMP for V7 multi-platform 2014-02-19 16:43:27 -06:00
mach-hisi ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-imx ARM: i.MX6: ipu_di_sel clocks can set parent rates 2014-04-15 11:13:22 +08:00
mach-integrator ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-iop13xx
mach-iop32x This cleanup series gets rid of <mach/timex.h> for platforms not using 2014-02-24 10:06:56 +01:00
mach-iop33x
mach-ixp4xx ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-keystone ARM: SoC: device tree changes 2014-04-05 15:29:04 -07:00
mach-kirkwood ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
mach-ks8695 ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-lpc32xx ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-mmp Merge commit 'e26a9e0' into stable/for-linus-3.15 2014-04-28 10:31:04 +01:00
mach-moxart ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-msm ARM: SoC specific changes 2014-04-05 14:19:54 -07:00
mach-mv78xx0 ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
mach-mvebu ARM: SoC specific changes 2014-04-05 14:19:54 -07:00
mach-mxs ARM: SoC: device tree changes 2014-04-05 15:29:04 -07:00
mach-netx ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-nomadik ARM: centralize common multi-platform kconfig options 2014-02-19 16:38:18 -06:00
mach-nspire ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-omap1 ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-omap2 Merge commit 'e26a9e0' into stable/for-linus-3.15 2014-04-28 10:31:04 +01:00
mach-orion5x ARM: orion5x: fix target ID for crypto SRAM window 2014-04-17 04:52:26 +00:00
mach-picoxcell Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
mach-prima2 Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
mach-pxa ARM: pxa: hx4700.h: include "irqs.h" for PXA_NR_BUILTIN_GPIO 2014-04-24 15:26:39 +02:00
mach-qcom ARM: qcom: Add SMP support for KPSSv2 2014-02-11 15:00:40 -06:00
mach-realview ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-rockchip ARM: rockchip: fix copy'n'paste error in smp error messages 2014-04-15 11:17:00 +02:00
mach-rpc ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-s3c24xx Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
mach-s3c64xx ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-s5p64x0 ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-s5pc100 ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-s5pv210 ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mach-sa1100 Merge commit 'e26a9e0' into stable/for-linus-3.15 2014-04-28 10:31:04 +01:00
mach-shmobile ARM: SoC fixes for 3.15-rc3: 2014-04-25 13:02:02 -07:00
mach-socfpga The clock framework changes for 3.15 look similar to past pull requests. 2014-04-05 18:39:18 -07:00
mach-spear ARM Versatile Express fixes for 3.15 2014-04-24 23:46:58 +02:00
mach-sti Merge branch 'cleanup/kconfig' into next/drivers 2014-03-18 16:25:47 +01:00
mach-sunxi ARM: SoC specific changes 2014-04-05 14:19:54 -07:00
mach-tegra ARM: tegra: remove TEGRA_EMC_SCALING_ENABLE 2014-04-24 15:29:12 +02:00
mach-u300 ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-ux500 ARM: SoC: device tree changes 2014-04-05 15:29:04 -07:00
mach-versatile ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
mach-vexpress ARM: vexpress/TC2: Convert OPP voltage to uV before storing 2014-04-24 17:20:50 +01:00
mach-vt8500 ARM: vt8500: enable V6K instead of plain V6 2014-02-19 16:47:16 -06:00
mach-w90x900 ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00
mach-zynq ARM: SoC: late cleanups 2014-04-05 15:46:37 -07:00
mm ARM: 8048/1: fix v7-M setup stack location 2014-05-25 23:44:24 +01:00
net net: filter: add jited flag to indicate jit compiled filters 2014-03-31 00:45:08 -04:00
nwfpe
oprofile
plat-iop ARM: 8000/1: misc: remove deprecated IRQF_DISABLED 2014-03-12 10:32:38 +00:00
plat-omap ARM: SoC: device tree changes 2014-04-05 15:29:04 -07:00
plat-orion ARM: SoC: driver changes 2014-04-05 15:37:40 -07:00
plat-pxa
plat-samsung Kconfig: rename HAS_IOPORT to HAS_IOPORT_MAP 2014-04-07 16:36:11 -07:00
plat-versatile
tools
vfp ARM: 8026/1: Fix emulation of multiply accumulate instructions 2014-04-14 23:28:24 +01:00
xen xen/grant-table: Refactor gnttab_[un]map_refs to avoid m2p_override 2014-03-18 14:40:19 +00:00
Kconfig Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm 2014-04-27 12:55:04 -07:00
Kconfig-nommu
Kconfig.debug ARM: 8024/1: Keep DEBUG_UART_{PHYS,VIRT} entries sorted 2014-04-14 23:28:23 +01:00
Makefile ARM: SoC: cleanups for 3.15 2014-04-05 13:51:19 -07:00