From: Jim Cromie <jim.cromie@gmail.com>
To: Andrew Morton <akpm@linux-foundation.org>,
Jason Baron <jbaron@akamai.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Shuah Khan <skhan@linuxfoundation.org>,
Simona Vetter <simona@ffwll.ch>,
Luis Chamberlain <mcgrof@kernel.org>,
Petr Pavlu <petr.pavlu@suse.com>
Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
dri-devel@lists.freedesktop.org, linux-arch@vger.kernel.org,
linux-modules@vger.kernel.org, linux-kselftest@vger.kernel.org,
Jim Cromie <jim.cromie@gmail.com>
Subject: [PATCH v7 29/29] selftests/dyndbg: enable FT_classmap_inheritance
Date: Tue, 21 Jul 2026 14:57:18 -0600 [thread overview]
Message-ID: <20260721-dd-maint-2-v7-29-010fbe73b311@gmail.com> (raw)
In-Reply-To: <20260721-dd-maint-2-v7-0-010fbe73b311@gmail.com>
re-enable FT_classmap_inheritance, and comment out writes to missing
test-mod params. tbd where they are.
fix-some-tests-sysl test-tweaks
selftests/dyndbg: sync all results checksums
happened on gandalf, at end of progress_from master+5 in this tree.
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
---
.../selftests/dynamic_debug/dyndbg_selftest.sh | 88 +++++++++++++++++-----
1 file changed, 71 insertions(+), 17 deletions(-)
diff --git a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
index 947f23dcb4ce..49c2a79929c6 100755
--- a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
+++ b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
@@ -181,7 +181,7 @@ function slice_and_hash_ddctrl {
}
function verify_modprobe_param_logging {
- # $1 - parameter name (e.g. do_classes)
+ # $1 - parameter name (e.g. do_prints)
# $2 - parameter value (e.g. 1)
# $3 - short descriptive tag (e.g. classes)
local param="$1"
@@ -199,12 +199,12 @@ function verify_modprobe_param_logging {
log_start
modprobe test_dynamic_debug "${param}=${val}"
- # If it is a state-controlling parameter, trigger the print-workload 'do_classes=1'
+ # If it is a state-controlling parameter, trigger the print-workload 'do_prints=1'
# inside the same syslog dmesg capture bookends to verify their actual pr_debug logging!
if [ "$param" = "p_disjoint_bits" ] || [ "$param" = "p_level_num" ]; then
LOCAL_DDCMDS="${LOCAL_DDCMDS}; echo 1 > "
- LOCAL_DDCMDS="${LOCAL_DDCMDS}/sys/module/test_dynamic_debug/parameters/do_classes"
- echo 1 > /sys/module/test_dynamic_debug/parameters/do_classes
+ LOCAL_DDCMDS="${LOCAL_DDCMDS}/sys/module/test_dynamic_debug/parameters/do_prints"
+ echo 1 > /sys/module/test_dynamic_debug/parameters/do_prints
fi
log_stop
@@ -217,8 +217,10 @@ function verify_modprobe_param_logging {
# Verify that the resulting control-file state is completely cleared
local hash_unset=$(slice_and_hash_ddctrl '\[test_dynamic_debug\]')
- local default_hash="fd89900c8614f23c3a6e8a8d45aa3280"
+
# Pristine fully-disabled slice hash
+ local default_hash="fd89900c8614f23c3a6e8a8d45aa3280"
+ default_hash="d8d188e03eb33d970453c06b8f3f25a4"
if [ "$hash_unset" != "$default_hash" ]; then
echo -e "${RED}: Runtime unsetting failed for ${param}! " \
@@ -249,7 +251,7 @@ function FT_grammar_ok {
# use 4 keywords (max 9 words inc flags)
ddcmd "module foo file bar.c func buz class D2_CORE +_" # 4 keywords
- #ddcmd "module foo file bar.c func buz class D2 line 100 +_" # 5 keywords
+ ddcmd "module foo file bar.c func buz class D2 line 100 +_" # 5 keywords
# 3. Dedicated lineno range grammar assertions (side-effect-free proofs)
ddcmd "line 42 +_" # test exact line syntax
@@ -493,9 +495,9 @@ function FT_test_classes {
verify_file_slice '\[test_dynamic_debug\]'
# 2. Verify state transition and live-printing end-to-end via ddcmd_load!
- ddcmd_load "class,D2_CORE,+pmf@class,D2_KMS,+pls@class,D2_ATOMIC,+pml" \
+ ddcmd_load "class,D2_CORE,+pmf;class,D2_KMS,+pls;class,D2_ATOMIC,+pml" \
'\[test_dynamic_debug\]' \
- "/sys/module/test_dynamic_debug/parameters/do_classes" "1"
+ "/sys/module/test_dynamic_debug/parameters/do_prints" "1"
ifrmmod test_dynamic_debug
}
@@ -508,8 +510,8 @@ function FT_classmap_inheritance {
ddcmd =_
# modprobe with class enablements
- modprobe test_dynamic_debug \
- dyndbg=class,D2_CORE,+pf@class,D2_KMS,+pt@class,D2_ATOMIC,+pm
+ #modprobe test_dynamic_debug \
+ #dyndbg=class,D2_CORE,+pf@class,D2_KMS,+pt@class,D2_ATOMIC,+pm
verify_file_slice '\[test_dynamic_debug\]'
@@ -517,8 +519,8 @@ function FT_classmap_inheritance {
verify_file_slice '\[test_dynamic_debug_submod\]'
# Verify 3 class changes
- ddcmd "class,D2_CORE,+pmf @ class,D2_KMS,+plt @ class,D2_ATOMIC,+pml" \
- 'test_dynamic_debug' "# add some prefixes"
+ #ddcmd "class,D2_CORE,+pmf @ class,D2_KMS,+plt @ class,D2_ATOMIC,+pml" \
+ #'test_dynamic_debug' "# add some prefixes"
# now work the classmap-params
# fresh start, to clear all above flags (test-fn limits)
@@ -572,8 +574,8 @@ function FT_classmap_inheritance {
# --- Live Content Fingerprinting Phase ---
log_start
- echo 1 > /sys/module/test_dynamic_debug/parameters/do_classes
- echo 1 > /sys/module/test_dynamic_debug_submod/parameters/do_classes
+ echo 1 > /sys/module/test_dynamic_debug/parameters/do_prints
+ echo 1 > /sys/module/test_dynamic_debug_submod/parameters/do_prints
log_stop
ifrmmod test_dynamic_debug_submod
@@ -622,8 +624,8 @@ builtin_tests=(
# Modular Feature Tests (Require CONFIG_MODULES=y and test_dynamic_debug*.ko available)
modular_tests=(
#FT_test_classes
- #FT_classmap_inheritance
- #FT_modprobe_w_param
+ FT_classmap_inheritance
+ FT_modprobe_w_param
)
# ==============================================================================
@@ -640,7 +642,6 @@ modular_tests=(
# ==============================================================================
function GOLDEN_RECORDS {
cat << 'EOF' | {
-# --- Unregistered Baselines ---
#K= f3dbd5afb9aa1750f93275b634499e22 FT_grammar_errs.1 dmesg
#K= 200c01632c52a63f6d186da1c6460740 FT_grammar_errs.2 dmesg
#K= 7d7141900ce6e32f15c99202309c63a4 FT_grammar_errs.3 dmesg
@@ -689,6 +690,59 @@ function GOLDEN_RECORDS {
#K= da6bd1c6a299290150668186f8263b82 FT_basic_queries.4 "kernel/params.c"
#K= 82572e8d20c4b567afac783006d1a935 FT_basic_queries.5 "kernel/params.c"
#K= baea1247680e8151c121539f4b90a6d8 FT_basic_queries.6 "kernel/params.c"
+#K= 68b329da9893e34099c7d8ad5cb9c940 FT_classmap_inheritance.1 "\[test_dynamic_debug\]"
+#K= 7f9bbb8e3cbaeb819c9db4ad314fe91f FT_classmap_inheritance.2 "\[test_dynamic_debug_submod\]"
+#K= e595e746a30eac106ad0041b78b9bb04 FT_classmap_inheritance.3 "test_dynamic_debug"
+#K= 781cd443ba8e9655318c53e32bf7650c FT_classmap_inheritance.4 "test_dynamic_debug"
+#K= 710b9cc6ba3a9db08025fd8f0cd01058 FT_classmap_inheritance.5 "test_dynamic_debug"
+#K= 6e78ea40996f4bb355764a023822c89d FT_classmap_inheritance.6 "\[test_dynamic_debug\]"
+#K= 8efc97ee6ad63ae1b34c3898550fbdeb FT_classmap_inheritance.7 "test_dynamic_debug"
+#K= 5d93156ac2b46d188c3cab04a0287b68 FT_classmap_inheritance.8 dmesg
+#K= ec88354e5d563adfb7816b09588ce22a FT_modprobe_w_param.1 dmesg
+#K= c05be478400d61b0ec7dd3659e1063bb FT_modprobe_w_param.2 dmesg
+#K= 681053af96e96530f309a755a86bb86e FT_modprobe_w_param.3 dmesg
+#K= 0567348e035ea0be726ea88e41cbc7f9 FT_modprobe_w_param.4 dmesg
+#K= e682773b51040743f1881b85ed375ddb FT_modprobe_w_param.5 dmesg
+#K= 05d1e9c5f416dfaeab7842945e4af7e1 FT_modprobe_w_param.6 dmesg
+#K= de9880bb8fa627f4f5599d13ad382105 FT_modprobe_w_param.7 dmesg
+#K= 57fb0642f3d9c33fc1d58ca728481ffb FT_modprobe_w_param.8 dmesg
+#K= 7be7034fec3a8e0f757720d00b026669 FT_modprobe_w_param.9 dmesg
+#K= 925d4de5a038cac3356176036717d572 FT_modprobe_w_param.10 dmesg
+#K= f81c7e22d1dd97608a8ceaca5a0ac677 FT_modprobe_w_param.11 dmesg
+#K= f573825da4a1128466530d869ce6def1 FT_modprobe_w_param.12 dmesg
+#K= 9a9d67addbc1732aa9e4e7747261208c FT_modprobe_w_param.13 dmesg
+#K= 7fba79ed343651fc81f302aec98b0f5a FT_modprobe_w_param.14 dmesg
+#K= b3f7deb9df2a80205ec2f475aad44c3d FT_modprobe_w_param.15 dmesg
+#K= 7c1d3772035558d575ca866d4d972e87 FT_modprobe_w_param.16 dmesg
+#K= 48fe52f49c4927cdf79e937762f50e4f FT_modprobe_w_param.17 dmesg
+#K= be389ee9ddfe5308e4350090ddd2d16a FT_modprobe_w_param.18 dmesg
+#K= 1524a2631d44a1abc2eca683908c9e94 FT_modprobe_w_param.19 dmesg
+#K= e7c39d0b9b293d0147a2f6fcd0f164b3 FT_modprobe_w_param.20 dmesg
+#K= bdae90265d318a2cb148060130257cbf FT_modprobe_w_param.21 dmesg
+#K= 4759b6d7cb14acaf0cc33811728f77cf FT_modprobe_w_param.22 dmesg
+#K= 22659835c1f7a94f82cd8ec7e1796d7f FT_modprobe_w_param.23 dmesg
+#K= 81bf838321eb584b5adc7edb321560d3 FT_modprobe_w_param.24 dmesg
+#K= 9353df3b283410f886a638b6996118e5 FT_modprobe_w_param.25 dmesg
+#K= 28125d16b047544025754071f00d5465 FT_modprobe_w_param.26 dmesg
+#K= 2ad304b6e6ce3a63e1a24644c4c21f8c FT_modprobe_w_param.27 dmesg
+#K= 1524a2631d44a1abc2eca683908c9e94 FT_modprobe_w_param.28 dmesg
+#K= 9e3a99d008531d5a02344730398be088 FT_modprobe_w_param.29 dmesg
+#K= 4c13f861a474d1931587d893e6038c95 FT_modprobe_w_param.30 dmesg
+#K= dadffb7601c368815dcf756fb65fdabf FT_modprobe_w_param.31 dmesg
+#K= 22659835c1f7a94f82cd8ec7e1796d7f FT_modprobe_w_param.32 dmesg
+#K= 4d9c8b506f9b21306cc3f26bb0754c70 FT_modprobe_w_param.33 dmesg
+#K= 2c0dd2e7e1b515d612c2060252e76834 FT_modprobe_w_param.34 dmesg
+#K= 9d0780573256ca9257239a386d4dc6bb FT_modprobe_w_param.35 dmesg
+#K= 2ad304b6e6ce3a63e1a24644c4c21f8c FT_modprobe_w_param.36 dmesg
+#K= 68b329da9893e34099c7d8ad5cb9c940 FT_modprobe_w_param.37 dmesg
+#K= 06585a61fecd49f826b624a493f8186a FT_modprobe_w_param.38 dmesg
+#K= 9a4d3232a7d9263158dbf59b4685b32c FT_modprobe_w_param.39 dmesg
+#K= 6abbd7b226a87b21aebab6f037ece451 FT_modprobe_w_param.40 dmesg
+#K= 68b329da9893e34099c7d8ad5cb9c940 FT_modprobe_w_param.41 dmesg
+#K= 14cf091423c69a188ba45cc39414c1b9 FT_modprobe_w_param.42 dmesg
+#K= 713b6e5c4af67d59a1896c8181a7e1b5 FT_modprobe_w_param.43 dmesg
+#K= 67fa99b23bfafccc66b023970b71cbd8 FT_modprobe_w_param.44 dmesg
+#K= 68b329da9893e34099c7d8ad5cb9c940 FT_modprobe_w_param.45 dmesg
EOF
# Read the K-recs and skip those for tests that can't run
while read -r line; do
--
2.55.0
next prev parent reply other threads:[~2026-07-21 20:57 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-21 20:56 [PATCH v7 00/29] fix dynamic-debug classmaps API for DRM Jim Cromie
2026-07-21 20:56 ` [PATCH v7 01/29] params: fix a pr_debug(" %p ") use - already in MM-* Jim Cromie
2026-07-21 20:56 ` [PATCH v7 02/29] selftests/dyndbg: Add kselftest script to verify dynamic-debug Jim Cromie
2026-07-21 21:06 ` sashiko-bot
2026-07-21 20:56 ` [PATCH v7 03/29] drm: Fix incorrect ccflags-y spelling inside Makefile Jim Cromie
2026-07-21 20:56 ` [PATCH v7 04/29] drm: fix config dependent unused variable warning Jim Cromie
2026-07-21 20:56 ` [PATCH v7 05/29] drm: Mark CONFIG_DRM_USE_DYNAMIC_DEBUG as unBROKEN Jim Cromie
2026-07-21 20:56 ` [PATCH v7 06/29] vmlinux.lds.h: refactor BOUNDED_SECTION_* macros into bounded_sections.lds.h Jim Cromie
2026-07-21 20:56 ` [PATCH v7 07/29] vmlinux.lds.h: drop unused HEADERED_SECTION* macros Jim Cromie
2026-07-21 20:56 ` [PATCH v7 08/29] vmlinux.lds.h: Fix ALIGN(8) omission causing NULL ptr on i386 Jim Cromie
2026-07-21 20:56 ` [PATCH v7 09/29] vmlinux.lds.h: remove redundant ALIGN(8) directives Jim Cromie
2026-07-21 20:56 ` [PATCH v7 10/29] dyndbg.lds.S: fix lost dyndbg sections in modules Jim Cromie
2026-07-21 20:57 ` [PATCH v7 11/29] dyndbg: factor ddebug_match_desc out from ddebug_change Jim Cromie
2026-07-21 21:05 ` sashiko-bot
2026-07-21 20:57 ` [PATCH v7 12/29] dyndbg: add stub macro for DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-07-21 20:57 ` [PATCH v7 13/29] dyndbg: reword "class unknown," to "class:_UNKNOWN_" Jim Cromie
2026-07-21 20:57 ` [PATCH v7 14/29] dyndbg-API: remove DD_CLASS_TYPE_(DISJOINT|LEVEL)_NAMES and code Jim Cromie
2026-07-21 20:57 ` [PATCH v7 15/29] dyndbg: drop NUM_TYPE_ARGS Jim Cromie
2026-07-21 20:57 ` [PATCH v7 16/29] dyndbg: bump num-tokens in a query-cmd from 9 to 15 Jim Cromie
2026-07-21 20:57 ` [PATCH v7 17/29] dyndbg: reduce verbose/debug clutter Jim Cromie
2026-07-21 20:57 ` [PATCH v7 18/29] lib/parser: add match_wildcard_hyphen() for agnostic matching Jim Cromie
2026-07-21 20:57 ` [PATCH v7 19/29] dyndbg: use KBUILD_MODFILE for unique builtin module names Jim Cromie
2026-07-21 20:57 ` [PATCH v7 20/29] dyndbg: refactor param_set_dyndbg_classes and below Jim Cromie
2026-07-21 21:11 ` sashiko-bot
2026-07-21 20:57 ` [PATCH v7 21/29] dyndbg: tighten fn-sig of ddebug_apply_class_bitmap Jim Cromie
2026-07-21 20:57 ` [PATCH v7 22/29] dyndbg: replace classmap list with an array-slice Jim Cromie
2026-07-21 20:57 ` [PATCH v7 23/29] dyndbg: macrofy a 2-index for-loop pattern Jim Cromie
2026-07-21 20:57 ` [PATCH v7 24/29] dyndbg: pin class param storage to u32 Jim Cromie
2026-07-21 21:10 ` sashiko-bot
2026-07-21 20:57 ` [PATCH v7 25/29] dyndbg,module: make proper substructs in _ddebug_info Jim Cromie
2026-07-21 21:09 ` sashiko-bot
2026-07-21 20:57 ` [PATCH v7 26/29] dyndbg: move mod_name down from struct ddebug_table to _ddebug_info Jim Cromie
2026-07-21 21:13 ` sashiko-bot
2026-07-21 20:57 ` [PATCH v7 27/29] dyndbg: hoist classmap-filter-by-modname up to ddebug_add_module Jim Cromie
2026-07-21 20:57 ` [PATCH v7 28/29] dyndbg-API: replace DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-07-21 21:18 ` sashiko-bot
2026-07-21 20:57 ` Jim Cromie [this message]
2026-07-21 21:11 ` [PATCH v7 29/29] selftests/dyndbg: enable FT_classmap_inheritance sashiko-bot
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=20260721-dd-maint-2-v7-29-010fbe73b311@gmail.com \
--to=jim.cromie@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=gregkh@linuxfoundation.org \
--cc=jbaron@akamai.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-modules@vger.kernel.org \
--cc=mcgrof@kernel.org \
--cc=petr.pavlu@suse.com \
--cc=simona@ffwll.ch \
--cc=skhan@linuxfoundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox