From: sashiko-bot@kernel.org
To: "Jim Cromie" <jim.cromie@gmail.com>
Cc: linux-modules@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v10 27/38] dyndbg-test: add do_bulk testpoint, rename do_prints to do_classes
Date: Wed, 16 Sep 2026 16:37:31 +0000 [thread overview]
Message-ID: <20260916163731.9ABE61F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260916-dd-cmap-part2-clean-v10-27-af4cf4767707@gmail.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] test_dynamic_debug: unkillable process in do_bulk and do_classes
--
commit 6245dc1853df17e050ea8032572222d30c017fd7
Author: Jim Cromie <jim.cromie@gmail.com>
dyndbg-test: add do_bulk testpoint, rename do_prints to do_classes
This commit introduces a do_bulk testpoint and renames do_prints to
do_classes in the test_dynamic_debug module. These changes allow generating
high-volume workloads with a single sysfs write to better support testing of
dynamic debug features.
> diff --git a/lib/test_dynamic_debug.c b/lib/test_dynamic_debug.c
> index 01ce07001d4c7..560e23f14ac8f 100644
> --- a/lib/test_dynamic_debug.c
> +++ b/lib/test_dynamic_debug.c
[ ... ]
> -static void do_prints(void)
> +static void do_classes(unsigned int ct)
> {
> - pr_debug("do_prints:\n");
> - do_cats();
> - do_levels();
> + /* maybe clamp this */
> + pr_debug("do_classes %u times:\n", ct);
> + for (; ct; ct--) {
> + do_cats();
> + do_levels();
> + cond_resched();
[Severity: Medium]
Can this loop in do_classes() run indefinitely without checking for signals?
If a large integer (e.g., UINT_MAX) is written to the do_classes sysfs
parameter, the lack of fatal_signal_pending() or signal_pending() prevents
the test from being gracefully aborted via SIGKILL or SIGINT. This could
trap the process in kernel space and flood syslog/journald.
> + }
> +}
> +
> +static void do_bulk(unsigned int ct)
> +{
> + unsigned int i;
> +
> + pr_debug("do_bulk %u times:\n", ct);
> + for (i = 0; i < ct; i++) {
> + pr_debug("bulk msg %u.0\n", i + 1);
> + pr_debug("bulk msg %u.1\n", i + 1);
> + pr_debug("bulk msg %u.2\n", i + 1);
> + pr_debug("bulk msg %u.3\n", i + 1);
> + pr_debug("bulk msg %u.4\n", i + 1);
> + pr_debug("bulk msg %u.5\n", i + 1);
> + pr_debug("bulk msg %u.6\n", i + 1);
> + pr_debug("bulk msg %u.7\n", i + 1);
> + pr_debug("bulk msg %u.8\n", i + 1);
> + pr_debug("bulk msg %u.9\n", i + 1);
> + cond_resched();
[Severity: Medium]
Similarly, does this loop in do_bulk() also need a signal check?
A process writing a large value to the do_bulk sysfs parameter could
become unkillable for an extended period, preventing process termination.
> + }
> }
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260916-dd-cmap-part2-clean-v10-0-af4cf4767707@gmail.com?part=27
next prev parent reply other threads:[~2026-09-16 16:37 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-16 15:32 [PATCH v10 00/38] dyndbg: Fix classmaps API for subsystems, query extensions, selftests Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 01/38] selftests/dyndbg: Add kselftest script to verify dynamic-debug Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:41 ` sashiko-bot
2026-09-16 15:32 ` [PATCH v10 02/38] vmlinux.lds.h: refactor BOUNDED_SECTION_* macros into bounded_sections.lds.h Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 03/38] vmlinux.lds.h: drop unused HEADERED_SECTION* macros Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 04/38] vmlinux.lds.h: Fix ALIGN(8) omission causing NULL ptr on i386 Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 05/38] vmlinux.lds.h: remove redundant ALIGN(8) directives Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 06/38] dyndbg.lds.S: fix lost dyndbg sections in modules Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:32 ` [PATCH v10 07/38] dyndbg: factor ddebug_match_desc out from ddebug_change Jim Cromie
2026-09-16 15:32 ` Jim Cromie via B4 Relay
2026-09-16 15:47 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 08/38] dyndbg: add stub macro for DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:00 ` sashiko-bot
2026-09-16 22:42 ` jim.cromie
2026-09-16 15:33 ` [PATCH v10 09/38] dyndbg: reword "class unknown," to "class:_UNKNOWN_" Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 10/38] dyndbg-API: remove DD_CLASS_TYPE_(DISJOINT|LEVEL)_NAMES and code Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 11/38] dyndbg: drop NUM_TYPE_ARGS Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 12/38] dyndbg: bump num-tokens in a query-cmd from 9 to 15 Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 13/38] dyndbg: reduce verbose/debug clutter Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 14/38] dyndbg: Bind callsites and classmaps to DDEBUG_MODNAME Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:05 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 15/38] dyndbg: refactor param_set_dyndbg_classes and below Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 16/38] dyndbg: tighten fn-sig of ddebug_apply_class_bitmap Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 17/38] dyndbg: replace classmap list with an array-slice Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 18/38] dyndbg: macrofy a 2-index for-loop pattern Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 19/38] dyndbg: reduce class param storage to u32 Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 20/38] dyndbg,module: make proper substructs in _ddebug_info Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 21/38] dyndbg: move mod_name down from struct ddebug_table to _ddebug_info Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 22/38] dyndbg: hoist classmap-filter-by-modname up to ddebug_add_module Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 23/38] dyndbg-API: replace DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:28 ` sashiko-bot
2026-09-20 20:26 ` jim.cromie
2026-09-16 15:33 ` [PATCH v10 24/38] selftests/dyndbg: Enable FT_classmap_inheritance Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:24 ` sashiko-bot
2026-09-20 17:14 ` jim.cromie
2026-09-20 17:25 ` jim.cromie
2026-09-16 15:33 ` [PATCH v10 25/38] dyndbg: detect class_id reservation conflicts Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:30 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 26/38] dyndbg: check DYNAMIC_DEBUG_CLASSMAP_{DEFINE,USE_} args at compile-time Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 27/38] dyndbg-test: add do_bulk testpoint, rename do_prints to do_classes Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:37 ` sashiko-bot [this message]
2026-09-16 15:33 ` [PATCH v10 28/38] dyndbg-API: promote DYNAMIC_DEBUG_CLASSMAP_PARAM to API Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:40 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 29/38] dyndbg: control-parser: treat comma as a token separator Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 30/38] selftests: enable comma-terminator tests Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 31/38] dyndbg: split multi-query strings with @ Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 32/38] dyndbg: resolve "protection" of class'd pr_debug Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 16:56 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 33/38] dyndbg: harden classmap and descriptor validation Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 34/38] docs/dyndbg: add classmap info to howto Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 35/38] dyndbg: Ignore additional arguments from pr_fmt Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 36/38] dyndbg: add epilogue to dynamic_debug/control file Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 37/38] dyndbg: add +c flag to count advantage of classmaps for DRM Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
2026-09-16 15:33 ` [PATCH v10 38/38] dyndbg: add DEBUG-biased fallback stubs for _dynamic_func_call_cls Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay
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=20260916163731.9ABE61F000FF@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jim.cromie@gmail.com \
--cc=linux-modules@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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.