android_kernel_oneplus_msm8998/arch/arm
Yang Shi 4528b128bb ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t
[ Upstream commit 143c2a89e0e5fda6c6fd08d7bc1126438c19ae90 ]

When running kprobe on -rt kernel, the below bug is caught:

|BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:931
|in_atomic(): 1, irqs_disabled(): 128, pid: 14, name: migration/0
|Preemption disabled at:[<802f2b98>] cpu_stopper_thread+0xc0/0x140
|CPU: 0 PID: 14 Comm: migration/0 Tainted: G O 4.8.3-rt2 #1
|Hardware name: Freescale LS1021A
|[<8025a43c>] (___might_sleep)
|[<80b5b324>] (rt_spin_lock)
|[<80b5c31c>] (__patch_text_real)
|[<80b5c3ac>] (patch_text_stop_machine)
|[<802f2920>] (multi_cpu_stop)

Since patch_text_stop_machine() is called in stop_machine() which
disables IRQ, sleepable lock should be not used in this atomic context,
 so replace patch_lock to raw lock.

Signed-off-by: Yang Shi <yang.shi@linaro.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-27 09:33:59 +02:00
..
boot ARM: dts: at91: Fix typo in ISC_D0 on PC9 2019-04-27 09:33:55 +02:00
common ARM: sa1111: fix pcmcia suspend/resume 2016-10-07 15:23:44 +02:00
configs Revert "ARM: imx_v6_v7_defconfig: Select ULPI support" 2018-09-15 09:40:40 +02:00
crypto crypto: sha512/arm - fix crash bug in Thumb2 build 2019-04-27 09:33:59 +02:00
firmware
include ARM: avoid Cortex-A9 livelock on tight dmb loops 2019-04-27 09:33:52 +02:00
kernel ARM: 8839/1: kprobe: make patch_lock a raw_spinlock_t 2019-04-27 09:33:59 +02:00
kvm KVM: arm/arm64: Fix MMIO emulation data handling 2019-03-23 08:44:20 +01:00
lib ARM: 8833/1: Ensure that NEON code always compiles with Clang 2019-04-27 09:33:51 +02:00
mach-alpine
mach-asm9260
mach-at91 ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-axxia
mach-bcm ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-berlin
mach-clps711x
mach-cns3xxx ARM: cns3xxx: Fix writing to wrong PCI config registers after alignment 2019-02-06 19:43:07 +01:00
mach-davinci ARM: davinci: da8xx: Create DSP device only when assigned memory 2018-04-13 19:50:09 +02:00
mach-digicolor
mach-dove
mach-ebsa110
mach-efm32
mach-ep93xx
mach-exynos ARM: exynos: Clear global variable on init error path 2018-09-26 08:35:06 +02:00
mach-footbridge
mach-gemini
mach-highbank
mach-hisi ARM: hisi: check of_iomap and fix missing of_node_put 2018-09-26 08:35:09 +02:00
mach-imx ARM: imx6q: cpuidle: fix bug that CPU might not wake up at expected time 2019-04-03 06:23:26 +02:00
mach-integrator gpio: pl061: handle failed allocations 2019-02-20 10:13:21 +01:00
mach-iop13xx
mach-iop32x ARM: iop32x/n2100: fix PCI IRQ mapping 2019-02-20 10:13:19 +01:00
mach-iop33x
mach-ixp4xx
mach-keystone
mach-ks8695
mach-lpc18xx
mach-lpc32xx
mach-mediatek
mach-meson
mach-mmp
mach-moxart
mach-mv78xx0
mach-mvebu ARM: mvebu: declare asm symbols as character arrays in pmsu.c 2018-10-10 08:52:06 +02:00
mach-mxs
mach-netx
mach-nomadik
mach-nspire
mach-omap1 ARM: OMAP1: ams-delta: Fix possible use of uninitialized field 2018-12-17 21:55:09 +01:00
mach-omap2 ARM: avoid Cortex-A9 livelock on tight dmb loops 2019-04-27 09:33:52 +02:00
mach-orion5x
mach-picoxcell
mach-prima2 ARM: prima2: always enable reset controller 2016-05-04 14:48:53 -07:00
mach-pxa ARM: pxa: avoid section mismatch warning 2019-02-20 10:13:09 +01:00
mach-qcom
mach-realview net: smc91x: fix SMC accesses 2016-09-30 10:18:37 +02:00
mach-rockchip
mach-rpc
mach-s3c24xx ARM: s3c24xx: Fix boolean expressions in osiris_dvs_notify 2019-03-23 08:44:38 +01:00
mach-s3c64xx ASoC: samsung: pass DMA channels as pointers 2016-04-12 09:08:32 -07:00
mach-s5pv210
mach-sa1100 ARM: sa1100: clear reset status prior to reboot 2016-10-07 15:23:43 +02:00
mach-shmobile ARM: shmobile: fix regulator quirk for Gen2 2016-10-07 15:23:43 +02:00
mach-socfpga ARM: SoCFPGA: Fix secondary CPU startup in thumb2 kernel 2016-05-11 11:21:14 +02:00
mach-spear ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-sti
mach-stm32
mach-sunxi
mach-tegra ARM: tegra: select USB_ULPI from EHCI rather than platform 2018-02-25 11:03:51 +01:00
mach-u300
mach-uniphier
mach-ux500 ARM: ux500: fix prcmu_is_cpu_in_wfi() calculation 2017-01-26 08:23:49 +01:00
mach-versatile
mach-vexpress
mach-vt8500
mach-w90x900
mach-zx
mach-zynq ARM: zynq: Reserve correct amount of non-DMA RAM 2017-01-15 13:41:36 +01:00
mm ARM: 8494/1: mm: Enable PXN when running non-LPAE kernel on LPAE processor 2019-04-03 06:23:20 +02:00
net
nwfpe
oprofile
plat-iop
plat-omap ARM: OMAP: Fix dmtimer init for omap1 2018-05-30 07:49:00 +02:00
plat-orion
plat-pxa ARM: pxa: ssp: unneeded to free devm_ allocated data 2019-03-23 08:44:27 +01:00
plat-samsung ARM: samsung: Limit SAMSUNG_PM_CHECK config option to non-Exynos platforms 2019-04-27 09:33:58 +02:00
plat-versatile
probes ARM: 8770/1: kprobes: Prohibit probing on optimized_callback 2018-05-26 08:48:57 +02:00
tools
vdso
vfp
xen swiotlb-xen: implement xen_swiotlb_dma_mmap callback 2017-10-05 09:41:48 +02:00
Kconfig ARM: 8510/1: rework ARM_CPU_SUSPEND dependencies 2019-04-03 06:23:23 +02:00
Kconfig-nommu ARM: 8635/1: nommu: allow enabling REMAP_VECTORS_TO_RAM 2017-10-08 10:14:17 +02:00
Kconfig.debug
Makefile