lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240729183203.7cd9f0dc@rorschach.local.home>
Date: Mon, 29 Jul 2024 18:32:03 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: LKML <linux-kernel@...r.kernel.org>, Masami Hiramatsu
 <mhiramat@...nel.org>, Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
 Dan Carpenter <dan.carpenter@...aro.org>, Thorsten Blum
 <thorsten.blum@...lux.com>
Subject: Re: [GIT PULL] ring-buffer: Updates for 6.11


Hi Linus,

I just noticed that this wasn't pulled. Was there an issue with it?

-- Steve


On Tue, 16 Jul 2024 15:51:18 -0400
Steven Rostedt <rostedt@...dmis.org> wrote:

> Linus,
> 
> tracing/ring-buffer: Have persistent buffer across reboots
> 
> This allows for the tracing instance ring buffer to stay persistent across
> reboots. The way this is done is by adding to the kernel command line:
> 
>   trace_instance=boot_map@...85400000:12M
> 
> This will reserve 12 megabytes at the address 0x285400000, and then map
> the tracing instance "boot_map" ring buffer to that memory. This will
> appear as a normal instance in the tracefs system:
> 
>   /sys/kernel/tracing/instances/boot_map
> 
> A user could enable tracing in that instance, and on reboot or kernel
> crash, if the memory is not wiped by the firmware, it will recreate the
> trace in that instance. For example, if one was debugging a shutdown of a
> kernel reboot:
> 
>  # cd /sys/kernel/tracing
>  # echo function > instances/boot_map/current_tracer
>  # reboot
> [..]
>  # cd /sys/kernel/tracing
>  # tail instances/boot_map/trace
>        swapper/0-1       [000] d..1.   164.549800: restore_boot_irq_mode <-native_machine_shutdown
>        swapper/0-1       [000] d..1.   164.549801: native_restore_boot_irq_mode <-native_machine_shutdown
>        swapper/0-1       [000] d..1.   164.549802: disconnect_bsp_APIC <-native_machine_shutdown
>        swapper/0-1       [000] d..1.   164.549811: hpet_disable <-native_machine_shutdown
>        swapper/0-1       [000] d..1.   164.549812: iommu_shutdown_noop <-native_machine_restart
>        swapper/0-1       [000] d..1.   164.549813: native_machine_emergency_restart <-__do_sys_reboot
>        swapper/0-1       [000] d..1.   164.549813: tboot_shutdown <-native_machine_emergency_restart
>        swapper/0-1       [000] d..1.   164.549820: acpi_reboot <-native_machine_emergency_restart
>        swapper/0-1       [000] d..1.   164.549821: acpi_reset <-acpi_reboot
>        swapper/0-1       [000] d..1.   164.549822: acpi_os_write_port <-acpi_reboot
> 
> On reboot, the buffer is examined to make sure it is valid. The validation
> check even steps through every event to make sure the meta data of the
> event is correct. If any test fails, it will simply reset the buffer, and
> the buffer will be empty on boot.
> 
> 
> Please pull the latest ring-buffer-v6.11 tree, which can be found at:
> 
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> ring-buffer-v6.11
> 
> Tag SHA1: d3d32acdae295a7eb0600aa878ff33f4fe52460d
> Head SHA1: b96c312551b241bc17226c5347c6d6b38a1efd3e
> 
> 
> Dan Carpenter (1):
>       tracing: Fix NULL vs IS_ERR() check in enable_instances()
> 
> Steven Rostedt (Google) (13):
>       ring-buffer: Allow mapped field to be set without mapping
>       ring-buffer: Add ring_buffer_alloc_range()
>       ring-buffer: Add ring_buffer_meta data
>       tracing: Implement creating an instance based on a given memory region
>       ring-buffer: Add output of ring buffer meta page
>       ring-buffer: Add test if range of boot buffer is valid
>       ring-buffer: Validate boot range memory events
>       tracing: Add option to use memmapped memory for trace boot instance
>       ring-buffer: Save text and data locations in mapped meta data
>       tracing/ring-buffer: Add last_boot_info file to boot instance
>       tracing: Handle old buffer mappings for event strings and functions
>       tracing: Update function tracing output for previous boot buffer
>       tracing: Add last boot delta offset for stack traces
> 
> Thorsten Blum (1):
>       ring-buffer: Use vma_pages() helper function
> 
> ----
>  Documentation/admin-guide/kernel-parameters.txt |   9 +
>  include/linux/ring_buffer.h                     |  20 +
>  kernel/trace/ring_buffer.c                      | 886 +++++++++++++++++++++---
>  kernel/trace/trace.c                            | 244 ++++++-
>  kernel/trace/trace.h                            |  10 +-
>  kernel/trace/trace_output.c                     |  12 +-
>  6 files changed, 1061 insertions(+), 120 deletions(-)
> ---------------------------


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ