linux-stable/arch/parisc/kernel
John David Anglin 93a8347f72 parisc: Fix patch code locking and flushing
[ Upstream commit a9fe7fa7d8 ]

This change fixes the following:

1) The flags variable is not initialized. Always use raw_spin_lock_irqsave
and raw_spin_unlock_irqrestore to serialize patching.

2) flush_kernel_vmap_range is primarily intended for DMA flushes. Since
__patch_text_multiple is often called with interrupts disabled, it is
better to directly call flush_kernel_dcache_range_asm and
flush_kernel_icache_range_asm. This avoids an extra call.

3) The final call to flush_icache_range is unnecessary.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-04-13 20:59:14 +02:00
..
syscalls compat: remove some compat entry points 2021-09-08 15:32:35 -07:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
alternative.c parisc: Refactor alternative code to accept multiple conditions 2020-04-05 22:50:40 +02:00
asm-offsets.c parisc: Implement __get/put_kernel_nofault() 2021-09-09 22:53:09 +02:00
audit.c
cache.c parisc: Flush kernel data mapping in set_pte_at() when installing pte for user page 2021-11-18 19:17:14 +01:00
compat_audit.c
drivers.c bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
entry.S parisc/entry: fix trace test in syscall exit path 2021-11-21 13:44:13 +01:00
firmware.c isystem: ship and use stdarg.h 2021-08-19 09:02:55 +09:00
ftrace.c ftrace: Have the callbacks receive a struct ftrace_regs instead of pt_regs 2020-11-13 12:14:55 -05:00
hardware.c parisc: hardware: Update references to parisc website 2020-06-01 23:02:39 +02:00
head.S mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
hpmc.S parisc: Fix IVT checksum calculation wrt HPMC 2021-02-12 16:31:42 +01:00
inventory.c parisc: Add qemu fw_cfg interface 2020-10-15 08:10:37 +02:00
irq.c Rework of the X86 irq stack handling: 2021-02-24 16:32:23 -08:00
jump_label.c
kexec.c parisc: add support for kexec_file_load() syscall 2019-09-08 15:41:46 +02:00
kexec_file.c parisc: add support for kexec_file_load() syscall 2019-09-08 15:41:46 +02:00
kgdb.c maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault 2020-06-17 10:57:41 -07:00
kprobes.c parisc: kprobes: Use generic kretprobe trampoline handler 2020-09-08 11:52:33 +02:00
Makefile parisc: fix compilation when KEXEC=n and KEXEC_FILE=y 2019-12-15 21:05:38 +01:00
module.c mm: don't include asm/pgtable.h if linux/mm.h is already included 2020-06-09 09:39:13 -07:00
pa7300lc.c
pacache.S mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
parisc_ksyms.c parisc: Drop strnlen_user() in favour of generic version 2021-09-09 12:44:30 +02:00
patch.c parisc: Fix patch code locking and flushing 2022-04-13 20:59:14 +02:00
pci-dma.c parisc: pci-dma: fix warning unused-function 2020-12-15 05:41:11 +01:00
pci.c parisc: Drop comments which are already in pci.h 2019-09-05 16:41:11 +02:00
pdc_chassis.c kernel.h: split out panic and oops helpers 2021-07-01 11:06:04 -07:00
pdc_cons.c tty: pdc_cons, free tty_driver upon failure 2021-07-27 12:17:21 +02:00
pdt.c parisc: Report bad pages as HardwareCorrupted 2020-07-28 11:19:17 +02:00
perf.c parisc/perf: open access for CAP_PERFMON privileged process 2020-04-16 12:19:08 -03:00
perf_asm.S
perf_images.h
process.c isystem: trim/fixup stdarg.h and other headers 2021-08-19 09:02:55 +09:00
processor.c parisc: Drop loops_per_jiffy from per_cpu struct 2020-11-11 14:57:30 +01:00
ptrace.c arch/parisc/kernel: remove duplicate include in ptrace 2021-03-04 09:12:29 +01:00
real2.S
relocate_kernel.S parisc: add kexec syscall support 2019-09-08 15:37:04 +02:00
setup.c parisc: Mark sched_clock unstable only if clocks are not syncronized 2021-09-09 12:44:31 +02:00
signal.c Revert "parisc: Reduce sigreturn trampoline to 3 instructions" 2021-11-25 09:48:44 +01:00
signal32.c
signal32.h Revert "parisc: Reduce sigreturn trampoline to 3 instructions" 2021-11-25 09:48:44 +01:00
smp.c parisc/kgdb: add kgdb_roundup() to make kgdb work with idle polling 2021-11-18 19:16:21 +01:00
stacktrace.c
sys_parisc.c parisc: Make user stack size configurable 2020-11-11 14:59:08 +01:00
sys_parisc32.c
syscall.S parisc: Correct completer in lws start 2021-12-29 12:28:53 +01:00
time.c parisc: Mark cr16 CPU clocksource unstable on all SMP machines 2021-12-08 09:04:55 +01:00
topology.c
traps.c parisc: Fix handling off probe non-access faults 2022-04-08 14:23:56 +02:00
unaligned.c parisc/unaligned: Fix ldw() and stw() unalignment handlers 2022-03-02 11:47:49 +01:00
unwind.c parisc/unwind: fix unwinder when CONFIG_64BIT is enabled 2021-11-18 19:16:21 +01:00
vmlinux.lds.S Revert "parisc: Fix backtrace to always include init funtion names" 2021-12-01 09:04:41 +01:00