ring-buffer: Making persistent ring buffers robust
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v21 Latest9 patches 10 repliesIn review
- v2010 patches 12 repliesSuperseded
Patches in v21 No applies recorded yet
Reviews trailers per patch
2 of 9 patches have a Reviewed-by or Acked-by.
| Patch | Masami Hiramatsu (Google) |
|---|---|
| 1/9 | |
| 2/9 | |
| 3/9 | |
| 4/9 | |
| 5/9 | |
| 6/9 | |
| 7/9 | R-b |
| 8/9 | |
| 9/9 | R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v21 0/9] ring-buffer: Making persistent ring buffers robust
This is to make the persistent ring buffer more robust when sub-buffers are detected to be corrupted. Instead of invalidating the entire buffer, just invalidate the individual sub-buffers.
I started with Masami's patches and modified some from Sashiko reviews. I added a few patches to display the dropped events when the persistent ring buffers validation checks found sub-buffers were dropped due to being corrupted data.
Changes since v20: https://lore.kernel.org/all/[email protected]/
- squashed the fix for max_loops in rb_iter_peek()
- Still process reader page if head page fails validation (Sashiko)
- Removed left over printk() (Masami Hiramatsu)
Masami Hiramatsu (Google) (6):
ring-buffer: Skip invalid sub-buffers when validating persistent ring buffer
ring-buffer: Skip invalid sub-buffers when rewinding persistent ring buffer
ring-buffer: Add persistent ring buffer invalid-page inject test
ring-buffer: Show commit numbers in buffer_meta file
ring-buffer: Cleanup persistent ring buffer validation
ring-buffer: Cleanup buffer_data_page related code
Steven Rostedt (3):
ring-buffer: Have dropped subbuffers be persistent across reboots
ring-buffer: Show persistent buffer dropped events in trace file
ring-buffer: Show persistent buffer dropped events in trace_pipe file
----
include/linux/ring_buffer.h | 1 + kernel/trace/Kconfig | 34 +++ kernel/trace/ring_buffer.c | 543 +++++++++++++++++++++++++++++--------------- kernel/trace/trace.c | 4 + 4 files changed, 402 insertions(+), 180 deletions(-)