linux/arch/arm
Russell King c32cd419d6 ARM: signal: copy registers using __copy_from_user()
__get_user_error() is used as a fast accessor to make copying structure
members in the signal handling path as efficient as possible.  However,
with software PAN and the recent Spectre variant 1, the efficiency is
reduced as these are no longer fast accessors.

In the case of software PAN, it has to switch the domain register around
each access, and with Spectre variant 1, it would have to repeat the
access_ok() check for each access.

It becomes much more efficient to use __copy_from_user() instead, so
let's use this for the ARM integer registers.

Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
2018-07-26 17:00:28 +01:00
..
boot ARM: SoC fixes for 4.16 2018-03-28 13:52:13 -10:00
common Merge branches 'fixes', 'misc', 'sa1111' and 'sa1100-for-next' into for-next 2018-01-21 15:38:10 +00:00
configs ARM: omap2: set CONFIG_LIRC=y in defconfig 2018-02-26 21:38:58 +01:00
crypto crypto: hash - annotate algorithms taking optional key 2018-01-12 23:03:35 +11:00
firmware
include ARM: spectre-v1: add array_index_mask_nospec() implementation 2018-05-31 23:27:21 +01:00
kernel ARM: signal: copy registers using __copy_from_user() 2018-07-26 17:00:28 +01:00
kvm ARM: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling 2018-05-31 11:09:03 +01:00
lib Merge branches 'fixes', 'misc', 'sa1111' and 'sa1100-for-next' into for-next 2018-01-21 15:38:10 +00:00
mach-actions
mach-alpine
mach-artpec
mach-asm9260
mach-aspeed
mach-at91
mach-axxia
mach-bcm soc: brcmstb: biuctrl: Move to early_initcall 2017-12-20 17:37:44 -08:00
mach-berlin
mach-clps711x ARM: clps711x: mark clps711x_compat as const 2018-02-22 17:42:42 +01:00
mach-cns3xxx
mach-davinci A patch fixing GPIO look-up for MMC/SD card detect and write-protect 2018-03-12 15:30:43 +01:00
mach-digicolor
mach-dove
mach-ebsa110
mach-efm32
mach-ep93xx
mach-exynos ARM: EXYNOS: Add SPDX license identifiers 2018-01-03 18:36:22 +01:00
mach-footbridge
mach-gemini
mach-highbank
mach-hisi
mach-imx ARM: imx: remove unused imx3 pm definitions 2017-12-26 16:30:20 +08:00
mach-integrator
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx
mach-keystone
mach-ks8695
mach-lpc18xx
mach-lpc32xx
mach-mediatek ARM: mediatek: use more generic prompts for SoCs with ARMv7 2017-12-20 15:48:18 +01:00
mach-meson Amlogic 32-bit DT changes for v4.16 2017-12-21 16:37:34 +01:00
mach-mmp
mach-moxart
mach-mv78xx0
mach-mvebu ARM: mvebu: Fix broken PL310_ERRATA_753970 selects 2018-02-13 16:39:51 +01:00
mach-mxs
mach-netx
mach-nomadik
mach-nspire
mach-omap1 ARM: OMAP1: clock: Fix debugfs_create_*() usage 2018-02-14 08:35:14 -08:00
mach-omap2 ARM: OMAP2+: Fix sar_base inititalization for HS omaps 2018-02-14 08:35:14 -08:00
mach-orion5x ARM: orion5x: Revert commit 4904dbda41. 2018-02-26 13:41:47 -05:00
mach-oxnas
mach-picoxcell
mach-prima2
mach-pxa ARM: SoC platform updates for 4.16 2018-02-01 16:17:40 -08:00
mach-qcom
mach-realview
mach-rockchip
mach-rpc
mach-s3c24xx ARM: S3C24XX: Add SPDX license identifiers 2018-01-03 18:36:43 +01:00
mach-s3c64xx ARM: S3C64XX: Add SPDX license identifiers 2018-01-03 18:42:53 +01:00
mach-s5pv210 ARM: S5PV210: Add SPDX license identifiers 2018-01-03 18:43:04 +01:00
mach-sa1100 ARM: sa1100/neponset: add GPIO drivers for control and modem registers 2018-01-01 00:50:05 +00:00
mach-shmobile
mach-socfpga
mach-spear
mach-sti
mach-stm32
mach-sunxi
mach-tango
mach-tegra
mach-u300
mach-uniphier
mach-ux500 ARM: ux500: Fix PMU IRQ regression 2018-03-07 16:42:38 +01:00
mach-versatile
mach-vexpress
mach-vt8500 arm: vt8500: kconfig: Remove blank help text 2018-02-02 23:53:10 +09:00
mach-w90x900
mach-zx
mach-zynq
mm ARM: spectre-v2: warn about incorrect context switching functions 2018-05-31 11:09:03 +01:00
net bpf, arm: remove obsolete exception handling from div/mod 2018-01-26 16:42:07 -08:00
nwfpe
oprofile
plat-iop
plat-omap ARM: OMAP: Fix SRAM W+X mapping 2018-03-21 08:16:29 -07:00
plat-orion ARM: orion: fix orion_ge00_switch_board_info initialization 2018-02-22 17:48:39 +01:00
plat-pxa
plat-samsung ARM: SAMSUNG: Add SPDX license identifiers 2018-01-03 18:43:13 +01:00
plat-versatile
probes
tools
vdso
vfp ARM: 8746/1: vfp: Go back to clearing vfp_current_hw_state[] 2018-03-24 14:27:48 +00:00
xen
Kconfig Currently, hardened usercopy performs dynamic bounds checking on slab 2018-02-03 16:25:42 -08:00
Kconfig-nommu
Kconfig.debug ARM: 8747/1: make CONFIG_DEBUG_WX depend on MMU 2018-03-24 14:27:48 +00:00
Makefile