linux/arch/arm
Fredrik Strupe d2f7eca60b ARM: 9071/1: uprobes: Don't hook on thumb instructions
Since uprobes is not supported for thumb, check that the thumb bit is
not set when matching the uprobes instruction hooks.

The Arm UDF instructions used for uprobes triggering
(UPROBE_SWBP_ARM_INSN and UPROBE_SS_ARM_INSN) coincidentally share the
same encoding as a pair of unallocated 32-bit thumb instructions (not
UDF) when the condition code is 0b1111 (0xf). This in effect makes it
possible to trigger the uprobes functionality from thumb, and at that
using two unallocated instructions which are not permanently undefined.

Signed-off-by: Fredrik Strupe <fredrik@strupe.net>
Cc: stable@vger.kernel.org
Fixes: c7edc9e326 ("ARM: add uprobes support")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
2021-04-18 19:14:45 +01:00
..
boot Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2021-02-23 14:56:23 -08:00
common ARM: 9049/1: locomo: make locomo bus's remove callback return void 2021-02-01 19:44:30 +00:00
configs Modules updates for v5.12 2021-02-23 10:15:33 -08:00
crypto crypto: arm/blake2b - add NEON-accelerated BLAKE2b 2021-01-03 08:41:39 +11:00
include ARM updates for 5.12-rc1: 2021-02-22 14:27:07 -08:00
kernel io_uring-worker.v3-2021-02-25 2021-02-27 08:29:02 -08:00
lib
mach-actions
mach-alpine
mach-artpec
mach-asm9260
mach-aspeed
mach-at91 ARM: at91: use proper asm syntax in pm_suspend 2021-02-08 15:54:05 +01:00
mach-axxia
mach-bcm ARM: bcm: Select BRCMSTB_L2_IRQ for bcm2835 2021-01-25 21:59:06 +01:00
mach-berlin
mach-clps711x
mach-cns3xxx
mach-davinci arm: remove CONFIG_ARCH_HAS_HOLES_MEMORYMODEL 2020-12-15 12:13:42 -08:00
mach-digicolor
mach-dove
mach-ep93xx
mach-exynos soc: samsung: exynos-chipid: convert to driver and merge exynos-asv 2021-01-03 17:08:45 +01:00
mach-footbridge ARM: footbridge: fix PCI interrupt mapping 2021-03-25 10:26:21 +00:00
mach-gemini
mach-highbank arm: remove CONFIG_ARCH_HAS_HOLES_MEMORYMODEL 2020-12-15 12:13:42 -08:00
mach-hisi
mach-imx This is all driver updates, the majority of which is a bunch of new Qualcomm 2021-02-22 09:45:23 -08:00
mach-integrator
mach-iop32x
mach-ixp4xx clocksource/drivers/ixp4xx: Select TIMER_OF when needed 2021-01-18 16:20:15 +01:00
mach-keystone ARM: SoC drivers for v5.11 2020-12-16 16:38:41 -08:00
mach-lpc18xx
mach-lpc32xx
mach-mediatek
mach-meson
mach-milbeaut
mach-mmp
mach-moxart
mach-mstar ARM: mstar: SMP support 2020-12-09 17:45:40 +01:00
mach-mv78xx0
mach-mvebu
mach-mxs ARM: mxs: Add serial number support for i.MX23, i.MX28 SoCs 2020-11-30 17:31:29 +08:00
mach-nomadik
mach-npcm
mach-nspire
mach-omap1 Merge branch 'cpuidle-fix' into fixes 2021-01-15 12:48:43 +02:00
mach-omap2 ARM: SoC changes for v5.12 2021-02-20 18:20:06 -08:00
mach-orion5x
mach-oxnas
mach-pxa power supply and reset changes for the v5.12 series 2021-02-22 09:49:59 -08:00
mach-qcom
mach-rda
mach-realtek
mach-realview
mach-rockchip
mach-rpc
mach-s3c ARM: s3c: irq-s3c24xx: staticize local functions 2021-02-08 18:10:21 +01:00
mach-s5pv210 arm: remove CONFIG_ARCH_HAS_HOLES_MEMORYMODEL 2020-12-15 12:13:42 -08:00
mach-sa1100 ARM: 9049/1: locomo: make locomo bus's remove callback return void 2021-02-01 19:44:30 +00:00
mach-shmobile ARM: shmobile: Stop using __raw_*() I/O accessors 2020-11-23 09:54:59 +01:00
mach-socfpga
mach-spear clk: spear: Move prototype to accessible header 2021-02-11 11:56:06 -08:00
mach-sti
mach-stm32
mach-sunxi irqchip/sun6i-r: Use a stacked irqchip driver 2021-01-21 20:21:49 +00:00
mach-tegra ARM: tegra: Don't enable unused PLLs on resume from suspend 2021-01-19 18:20:42 +01:00
mach-uniphier
mach-ux500
mach-versatile
mach-vexpress
mach-vt8500
mach-zynq
mm ARM: 9069/1: NOMMU: Fix conversion for_each_membock() to for_each_mem_range() 2021-03-25 10:25:20 +00:00
net bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
nwfpe
plat-omap
plat-orion
plat-pxa
plat-versatile
probes ARM: 9071/1: uprobes: Don't hook on thumb instructions 2021-04-18 19:14:45 +01:00
tools Kbuild updates for v5.12 2021-02-25 10:17:31 -08:00
vdso ARM: 9051/1: vdso: remove unneded extra-y addition 2021-02-01 19:48:06 +00:00
vfp ARM: 9044/1: vfp: use undef hook for VFP support detection 2020-12-21 11:19:19 +00:00
xen Xen/gnttab: handle p2m update errors on a per-slot basis 2021-03-03 08:32:10 +01:00
Kbuild
Kconfig ARM: 9063/1: mm: reduce maximum number of CPUs if DEBUG_KMAP_LOCAL is enabled 2021-03-25 10:25:19 +00:00
Kconfig-nommu
Kconfig.assembler
Kconfig.debug ARM updates for 5.12-rc1: 2021-02-22 14:27:07 -08:00
Makefile Remove oprofile and dcookies support 2021-02-21 10:40:34 -08:00