From: Kees Cook <kees@kernel.org>
To: Bill Wendling <morbo@google.com>
Cc: Kees Cook <kees@kernel.org>, Steven Rostedt <rostedt@goodmis.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
nikitash.mariiaw@gmail.com, Greg KH <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: [PATCH v3 00/11] seq_buf: Add seq_buf_strlen()
Date: Wed, 30 Sep 2026 16:52:28 -0700 [thread overview]
Message-ID: <20260930235231.out.387-kees@kernel.org> (raw)
Hi,
While working on seq_buf conversions[1], we found there was a need for
seq_buf_strlen() (since calling strlen(seq_buf_str()) would be a waste
of time: seq_buf already knows the length), seq_buf_init_append() (to
start a seq_buf from an existing string buffer), and seq_buf_terminate()
(as there are many callers using seq_buf_str() just for its termination
side-effect). And while implementing that, we found a bunch of other
related things that needed fixing. This is that ever-growing series,
with tests for each fix.
v1: https://lore.kernel.org/all/20260917002312.i.923-kees@kernel.org/
v2: https://lore.kernel.org/all/20260919002658.stay.929-kees@kernel.org/
v3:
- add trailers from v2
- add seq_buf_terminate()
- drop redundant bpf termination
Thanks!
-Kees
[1] https://lore.kernel.org/all/20260917011359.1585961-1-morbo@google.com/
Bill Wendling (1):
seq_buf: Add seq_buf_init_append()
Kees Cook (10):
seq_buf: Do not print an empty line from an overflowed
seq_buf_do_printk()
seq_buf: Do not pop from an overflowed seq_buf
seq_buf: Copy what fits when seq_buf_puts() and seq_buf_putmem()
overflow
seq_buf: Clear what a writer did not claim when a seq_buf overflows
seq_buf: Add seq_buf_strlen()
seq_buf: Add seq_buf_terminate()
bpf: Remove dead newline stripping from format_disasm_line()
powerpc/papr_scm: Return the string length from the sysfs show
functions
nvdimm: ndtest: Return the string length from flags_show()
docs: core-api: Document the seq_buf API
Documentation/core-api/kernel-api.rst | 9 +
include/linux/seq_buf.h | 134 +++++-
include/linux/trace_seq.h | 5 +-
arch/powerpc/platforms/pseries/papr_scm.c | 4 +-
kernel/bpf/diagnostics.c | 8 +-
kernel/trace/trace_events.c | 4 +-
kernel/trace/trace_events_hist.c | 6 +-
lib/seq_buf.c | 35 +-
lib/tests/seq_buf_kunit.c | 516 +++++++++++++++++++++-
tools/testing/nvdimm/test/ndtest.c | 2 +-
10 files changed, 688 insertions(+), 35 deletions(-)
--
2.34.1
next reply other threads:[~2026-09-30 23:52 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-30 23:52 Kees Cook [this message]
2026-09-30 23:52 ` [PATCH v3 01/11] seq_buf: Do not print an empty line from an overflowed seq_buf_do_printk() Kees Cook
2026-10-02 7:32 ` Andy Shevchenko
2026-10-03 2:14 ` Kees Cook
2026-09-30 23:52 ` [PATCH v3 02/11] seq_buf: Do not pop from an overflowed seq_buf Kees Cook
2026-09-30 23:59 ` sashiko-bot
2026-09-30 23:52 ` [PATCH v3 03/11] seq_buf: Copy what fits when seq_buf_puts() and seq_buf_putmem() overflow Kees Cook
2026-09-30 23:52 ` [PATCH v3 04/11] seq_buf: Clear what a writer did not claim when a seq_buf overflows Kees Cook
2026-09-30 23:52 ` [PATCH v3 05/11] seq_buf: Add seq_buf_strlen() Kees Cook
2026-09-30 23:52 ` [PATCH v3 06/11] seq_buf: Add seq_buf_terminate() Kees Cook
2026-09-30 23:52 ` [PATCH v3 07/11] bpf: Remove dead newline stripping from format_disasm_line() Kees Cook
2026-09-30 23:52 ` [PATCH v3 08/11] seq_buf: Add seq_buf_init_append() Kees Cook
2026-10-02 7:20 ` Andy Shevchenko
2026-10-03 2:04 ` Kees Cook
2026-09-30 23:52 ` [PATCH v3 09/11] powerpc/papr_scm: Return the string length from the sysfs show functions Kees Cook
2026-10-01 4:17 ` Madhavan Srinivasan
2026-10-02 7:54 ` Kees Cook
2026-09-30 23:52 ` [PATCH v3 10/11] nvdimm: ndtest: Return the string length from flags_show() Kees Cook
2026-10-01 5:40 ` Alison Schofield
2026-10-01 23:39 ` Alison Schofield
2026-10-03 2:17 ` Kees Cook
2026-09-30 23:52 ` [PATCH v3 11/11] docs: core-api: Document the seq_buf API Kees Cook
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260930235231.out.387-kees@kernel.org \
--to=kees@kernel.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=morbo@google.com \
--cc=nikitash.mariiaw@gmail.com \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.