mirror-linux/arch/um/include/asm
Masami Hiramatsu (Google) a494d3c8d5 ring-buffer: Flush and stop persistent ring buffer on panic
On real hardware, panic and machine reboot may not flush hardware cache
to memory. This means the persistent ring buffer, which relies on a
coherent state of memory, may not have its events written to the buffer
and they may be lost. Moreover, there may be inconsistency with the
counters which are used for validation of the integrity of the
persistent ring buffer which may cause all data to be discarded.

To avoid this issue, stop recording of the ring buffer on panic and
flush the cache of the ring buffer's memory.

Fixes: e645535a95 ("tracing: Add option to use memmapped memory for trace boot instance")
Cc: stable@vger.kernel.org
Cc: Will Deacon <will@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Ian Rogers <irogers@google.com>
Link: https://patch.msgid.link/177751969602.2136606.12031934362587643488.stgit@mhiramat.tok.corp.google.com
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2026-05-21 08:20:58 -04:00
..
fpu um: Include linux/types.h in asm/fpu/api.h 2025-05-07 16:45:40 +08:00
Kbuild ring-buffer: Flush and stop persistent ring buffer on panic 2026-05-21 08:20:58 -04:00
archrandom.h random: handle archrandom with multiple longs 2022-07-25 13:26:14 +02:00
asm-prototypes.h um: Add cmpxchg8b_emu and checksum functions to asm-prototypes.h 2025-05-05 10:22:07 +02:00
bpf_perf_event.h um: don't generate asm/bpf_perf_event.h 2024-07-10 14:23:30 +02:00
cache.h
cacheflush.h um: implement flush_cache_vmap/flush_cache_vunmap 2021-06-17 22:04:40 +02:00
common.lds.S UML: add support for KASAN under x86_64 2022-07-17 23:35:22 +02:00
cpufeature.h um: Replace __ASSEMBLY__ with __ASSEMBLER__ in the usermode headers 2025-07-22 17:12:45 +02:00
current.h um: Add initial SMP support 2025-10-27 16:41:15 +01:00
delay.h um: fix ndelay/udelay defines 2021-12-21 21:13:43 +01:00
dma.h
futex.h um: add a UML specific futex implementation 2021-06-17 22:01:45 +02:00
hardirq.h um: Add initial SMP support 2025-10-27 16:41:15 +01:00
io.h um: add PCI over virtio emulation driver 2021-06-17 21:45:43 +02:00
irq.h um: Track userspace children dying in SECCOMP mode 2025-06-02 15:17:19 +02:00
irqflags.h um: Turn signals_* into thread-local variables 2025-10-27 16:41:15 +01:00
kasan.h um: Disable KASAN_INLINE when STATIC_LINK is selected 2025-12-01 11:54:50 +01:00
kvm_para.h
mmu.h um: Add initial SMP support 2025-10-27 16:41:15 +01:00
mmu_context.h um: Stop tracking virtual CPUs via mm_cpumask() 2025-09-10 14:23:53 +02:00
msi.h um: add PCI over virtio emulation driver 2021-06-17 21:45:43 +02:00
page.h treewide: provide a generic clear_user_page() variant 2026-01-20 19:24:39 -08:00
pci.h PCI/MSI: Get rid of PCI_MSI_IRQ_DOMAIN 2022-11-17 15:15:19 +01:00
pgalloc.h mm: pgtable: convert some architectures to use tlb_remove_ptdesc() 2025-04-01 15:17:13 -07:00
pgtable-2level.h um: remove custom definition of mk_pte() 2025-05-11 17:48:03 -07:00
pgtable-4level.h um: remove custom definition of mk_pte() 2025-05-11 17:48:03 -07:00
pgtable.h Mostly cleanups and small things, notably: 2026-04-20 16:36:46 -07:00
processor-generic.h um: Remove unused ipi_pipe field from cpuinfo_um 2025-09-10 14:23:58 +02:00
ptrace-generic.h um: Replace __ASSEMBLY__ with __ASSEMBLER__ in the usermode headers 2025-07-22 17:12:45 +02:00
sections.h
setup.h
smp.h um: Add initial SMP support 2025-10-27 16:41:15 +01:00
stacktrace.h
syscall-generic.h syscall.h: introduce syscall_set_nr() 2025-05-11 17:48:15 -07:00
thread_info.h um: Replace __ASSEMBLY__ with __ASSEMBLER__ in the usermode headers 2025-07-22 17:12:45 +02:00
timex.h um: use fallback for random_get_entropy() instead of zero 2022-05-13 23:59:23 +02:00
tlb.h um: implement flush_cache_vmap/flush_cache_vunmap 2021-06-17 22:04:40 +02:00
tlbflush.h um: Abandon the _PAGE_NEWPROT bit 2024-10-23 09:52:49 +02:00
uaccess.h um: Remove __access_ok_vsyscall() 2025-11-06 13:02:34 +01:00
unwind.h
vmalloc.h
vmlinux.lds.h