From: Jim Cromie via B4 Relay <devnull+jim.cromie.gmail.com@kernel.org>
To: Jason Baron <jbaron@akamai.com>, Shuah Khan <shuah@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>,
Simona Vetter <simona@ffwll.ch>, Arnd Bergmann <arnd@arndb.de>,
Luis Chamberlain <mcgrof@kernel.org>,
Petr Pavlu <petr.pavlu@suse.com>,
Daniel Gomez <da.gomez@kernel.org>,
Sami Tolvanen <samitolvanen@google.com>,
Aaron Tomlin <atomlin@atomlin.com>,
Jonathan Corbet <corbet@net.net>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Nathan Chancellor <nathan@kernel.org>,
Nicolas Schier <nsc@kernel.org>,
Shuah Khan <skhan@linuxfoundation.org>,
Randy Dunlap <rdunlap@infradead.org>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Pavel Machek <pavel@kernel.org>, Len Brown <lenb@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
dri-devel@lists.freedesktop.org, linux-arch@vger.kernel.org,
linux-modules@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kbuild@vger.kernel.org, linux-pm@vger.kernel.org,
Jim Cromie <jim.cromie@gmail.com>,
Louis Chauvet <louis.chauvet@bootlin.com>
Subject: [PATCH v10 13/38] dyndbg: reduce verbose/debug clutter
Date: Wed, 16 Sep 2026 09:33:05 -0600 [thread overview]
Message-ID: <20260916-dd-cmap-part2-clean-v10-13-af4cf4767707@gmail.com> (raw)
In-Reply-To: <20260916-dd-cmap-part2-clean-v10-0-af4cf4767707@gmail.com>
From: Jim Cromie <jim.cromie@gmail.com>
currently, for verbose=3, these are logged (blank lines for clarity):
dyndbg: query 0: "class DRM_UT_CORE +p" mod:*
dyndbg: split into words: "class" "DRM_UT_CORE" "+p"
dyndbg: op='+'
dyndbg: flags=0x1
dyndbg: *flagsp=0x1 *maskp=0xffffffff
dyndbg: parsed: func="" file="" module="" format="" lineno=0-0 class=...
dyndbg: no matches for query
dyndbg: no-match: func="" file="" module="" format="" lineno=0-0 class=...
dyndbg: processed 1 queries, with 0 matches, 0 errs
That is excessive, so this patch:
- shrinks 3 lines of 2nd stanza to single line
- drops 1st 2 lines of 3rd stanza
3rd line is like 1st, with result, not procedure.
2nd line is just status, retold in 4th, with more info.
New output:
dyndbg: query 0: "class DRM_UT_CORE +p"
dyndbg: split into words: "class" "DRM_UT_CORE" "+p"
dyndbg: op='+' flags=0x1 maskp=0xffffffff
dyndbg: processed 1 queries, with 0 matches, 0 errs
Also drop several verbose=3 messages in ddebug_add_module. When
modprobing a module, dyndbg currently logs/says "add-module", and then
"skipping" if the module has no prdbgs. Instead just check 1st and
return quietly.
Unmatched query diagnostics are intentionally restricted to verbose
level 3 (v3pr_info_dq) to reduce dmesg output clutter on standard
verbose levels (verbose=1 and verbose=2), aligning with the overall
de-cluttering of dynamic debug logging.
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
Reviewed-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
v7: update fingerprints of grammar-errs changed here
v4: rename vpr_dq_info to v3pr_dq_info to tell its active logging level
adjust some vX levels per doc'd intentions
v2: RvB after SoB
trivial change to verbose-debug output line to output the actual
"module" keyword rather than "mod:", and do so only when the module is
constrained by the callchain (ie as part of a modprobe).
was: query X: "(keyword value)* [+-=]flags" mod:*
now: query X: "(keyword value)* [+-=]flags"
or query X: module FOO "keyword value)* [+-=]flags"
IOW, adjust output to reflect the input grammar more closely.
---
lib/dynamic_debug.c | 24 ++---
.../selftests/dynamic_debug/dyndbg_selftest.sh | 120 ++++++++++-----------
2 files changed, 70 insertions(+), 74 deletions(-)
diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index 83983b261bf8..ca8e3cea504c 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -128,7 +128,7 @@ do { \
#define v3pr_info(fmt, ...) vnpr_info(3, fmt, ##__VA_ARGS__)
#define v4pr_info(fmt, ...) vnpr_info(4, fmt, ##__VA_ARGS__)
-static void vpr_info_dq(const struct ddebug_query *query, const char *msg)
+static void v3pr_info_dq(const struct ddebug_query *query, const char *msg)
{
/* trim any trailing newlines */
int fmtlen = 0;
@@ -284,9 +284,6 @@ static int ddebug_change(const struct ddebug_query *query,
}
mutex_unlock(&ddebug_lock);
- if (!nfound && verbose)
- pr_info("no matches for query\n");
-
return nfound;
}
@@ -495,7 +492,6 @@ static int ddebug_parse_query(char *words[], int nwords,
*/
query->module = modname;
- vpr_info_dq(query, "parsed");
return 0;
}
@@ -519,7 +515,6 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
pr_err("bad flag-op %c, at start of %s\n", *str, str);
return -EINVAL;
}
- v3pr_info("op='%c'\n", op);
for (; *str ; ++str) {
for (i = ARRAY_SIZE(opt_array) - 1; i >= 0; i--) {
@@ -533,7 +528,6 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
return -EINVAL;
}
}
- v3pr_info("flags=0x%x\n", modifiers->flags);
/* calculate final flags, mask based upon op */
switch (op) {
@@ -549,7 +543,7 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
modifiers->flags = 0;
break;
}
- v3pr_info("*flagsp=0x%x *maskp=0x%x\n", modifiers->flags, modifiers->mask);
+ v3pr_info("op='%c' flags=0x%x maskp=0x%x\n", op, modifiers->flags, modifiers->mask);
return 0;
}
@@ -578,7 +572,7 @@ static int ddebug_exec_query(char *query_string, const char *modname)
}
/* actually go and implement the change */
nfound = ddebug_change(&query, &modifiers);
- vpr_info_dq(&query, nfound ? "applied" : "no-match");
+ v3pr_info_dq(&query, nfound ? "applied" : "no-match");
return nfound;
}
@@ -601,7 +595,10 @@ static int ddebug_exec_queries(char *query, const char *modname)
if (!query || !*query || *query == '#')
continue;
- vpr_info("query %d: \"%s\" mod:%s\n", i, query, modname ?: "*");
+ if (modname)
+ v2pr_info("query %d: module %s \"%s\"\n", i, modname, query);
+ else
+ v2pr_info("query %d: \"%s\"\n", i, query);
rc = ddebug_exec_query(query, modname);
if (rc < 0) {
@@ -1168,11 +1165,10 @@ static int ddebug_add_module(struct _ddebug_info *di, const char *modname)
{
struct ddebug_table *dt;
- v3pr_info("add-module: %s.%d sites\n", modname, di->num_descs);
- if (!di->num_descs) {
- v3pr_info(" skip %s\n", modname);
+ if (!di->num_descs)
return 0;
- }
+
+ v3pr_info("add-module: %s %d sites\n", modname, di->num_descs);
dt = kzalloc_obj(*dt);
if (dt == NULL) {
diff --git a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
index 04c1d9254ca9..972f12c70a8e 100755
--- a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
+++ b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
@@ -322,66 +322,66 @@ modular_tests=(
# ==============================================================================
function GOLDEN_RECORDS {
cat << 'EOF' | {
-#K= b938440930e5f1297d524e6c0c1ec85c FT_grammar_errs.1
-#K= b9a397e807148d13ba07da7db7e69817 FT_grammar_errs.2
-#K= 5abefa504937a329f974504f1896e368 FT_grammar_errs.3
-#K= 1d94d0f239bf40bf51280caeab499de0 FT_grammar_errs.4
-#K= 9a5e1c1856f1ebbe57a4afdfc4c9703a FT_grammar_errs.5
-#K= b3809a6f9f643f049f1ef30827d4b001 FT_grammar_errs.6
-#K= 5d400aad1a7d71f548b6b81274d00a55 FT_grammar_errs.7
-#K= 61cd359b10f9051862d3745eda07a295 FT_grammar_errs.8
-#K= 567379f4f4d099f00f37d1469d9370bd FT_grammar_errs.9
-#K= 31a026d10f85e8f4c9f8cf3e1cef3c61 FT_grammar_errs.10
-#K= ba62952b671a553d4b14e344a61926f7 FT_grammar_errs.11
-#K= 49aec6c2e99cc70a1e4137f86e94f6f4 FT_grammar_errs.12
-#K= cc02cccf15988a98dfd5b1df1e492e31 FT_grammar_errs.13
-#K= 2bbf3fac2b77b88b6cebe459ff9631d3 FT_grammar_errs.14
-#K= 93b67411c254875a6bae5c01c0239729 FT_grammar_errs.15
-#K= b22f2efe54a1637156b9521b2794806e FT_grammar_errs.16
-#K= de410dba40d8b097524f91da8ae2b1c5 FT_grammar_errs.17
-#K= 6c922048c21f6198720dfd68ae16fdad FT_grammar_errs.18
-#K= 4ddd57e9cbc3da2613ac59eb285ad8c1 FT_grammar_errs.19
-#K= ba65062f6be00a1d04907dd176d26c19 FT_grammar_errs.20
-#K= 94cdf3b32afa4f12a00a704208aa2e53 FT_grammar_errs.21
-#K= 1f6fedfe222af475211b3bfc6d08bc63 FT_grammar_errs.22
-#K= c67dfeca97697b707acdd70672816dff FT_grammar_errs.23
-#K= 9574dbfdac063409b41a44e6251fbcd9 FT_grammar_errs.24
-#K= 3c694a0ee2cf3a1d39f2ca8a9f3b9094 FT_grammar_errs.25
-#K= c23be05426c8727be833ff055944aa96 FT_grammar_errs.26
-#K= cdddf4ffd7fde3c12eb0c73770b872bf FT_grammar_errs.27
-#K= cdf7a2e2740ec007efbd29feda478420 FT_grammar_errs.28
-#K= f6650d69963cef433c50e1f2acb899fc FT_grammar_errs.29
-#K= e150a96693eb561a20eebebfd637e667 FT_grammar_errs.30
-#K= b63514cf73a93962311d098284d7b491 FT_grammar_errs.31
-#K= b253cde723889c42d2c944c1b14f5a45 FT_grammar_errs.32
-#K= 7ad3dfb73e82f4d75b0770179e6dc264 FT_grammar_errs.33
-#K= f4d905e4f72dbd535bb80d7fe9df84b0 FT_grammar_errs.34
-#K= 5bf50b198d8e5fe300541adfce92e073 FT_grammar_errs.35
-#K= 7c4d73d42cff377cd84a7683b0c3e0b9 FT_grammar_errs.36
-#K= 19f1aa8d33d71888be74b19a3143938f FT_grammar_errs.37
-#K= 84309c1322631ae74ecf2c729b6aa210 FT_grammar_errs.38
-#K= 8cfe48871f91a90e6eaaef9123892394 FT_grammar_errs.39
-#K= 8aaa5fdd50ead5cd429fbba4123b215c FT_grammar_errs.40
-#K= 94cdf3b32afa4f12a00a704208aa2e53 FT_grammar_errs.41
-#K= 1a402ada248d0d50cec13a1af150ea33 FT_grammar_errs.42
-#K= 5b46a8eb0d74009462f74cf7553e3228 FT_grammar_errs.43
-#K= 546e440044828d86135dd63f1eb9ed17 FT_grammar_errs.44
-#K= 3c694a0ee2cf3a1d39f2ca8a9f3b9094 FT_grammar_errs.45
-#K= 37b7ab754e579683a28ce086c470cdc9 FT_grammar_errs.46
-#K= 3e3acfb800cfb1bcb0cc07f33b75830a FT_grammar_errs.47
-#K= 42dc6cb4fe938bb82b64c82924ef28d8 FT_grammar_errs.48
-#K= cf9320d2188f5b48d508d610d95298b2 FT_grammar_errs.49
-#K= 1f33fb1fd2365e77c3cfbd61d1ae2a7c FT_grammar_errs.50
-#K= 67588c71f92f319c6224d5917456ecd2 FT_grammar_errs.51
-#K= 22e7795f7dbeb6dc2fce5e113312781c FT_grammar_errs.52
-#K= 66d253407728c1f8a850519eadd66880 FT_grammar_errs.53
-#K= 27e8345aaeed85c1de5516871e0bbd0c FT_grammar_errs.54
-#K= 43cc8a154f28f1a668ab409a1af4e77a FT_grammar_errs.55
-#K= eda21551fcdd76ef2f192e1d9950a05f FT_grammar_errs.56
-#K= 0a8a986b5610630cb75c0568deff8315 FT_grammar_errs.57
-#K= 29bfae73351c3157a5fe409febcef276 FT_grammar_errs.58
-#K= 73a9e53428d1fb1a9813e3eab7d0ea18 FT_grammar_errs.59
-#K= 800951095b297532e25785ab101a2ba9 FT_grammar_errs.60
+#K= 26fd1565f209b383d9f2fbf0b54cd5fc FT_grammar_errs.1
+#K= 200c01632c52a63f6d186da1c6460740 FT_grammar_errs.2
+#K= 7d7141900ce6e32f15c99202309c63a4 FT_grammar_errs.3
+#K= 1bb798a5831d0119789d424ef6cb55c4 FT_grammar_errs.4
+#K= 5edd66e308b2792d5694df86c07a3eaf FT_grammar_errs.5
+#K= 6f87d92ffe0812550f43287127c6f2b9 FT_grammar_errs.6
+#K= c0eb05b58a008c722e091e1ae74440ec FT_grammar_errs.7
+#K= 911929ec0e2ffc1f13822b479dec6805 FT_grammar_errs.8
+#K= 1ac52ce8ba553ec23eb70faa3ffa1197 FT_grammar_errs.9
+#K= c1407512376369d2e591a4b25a4b607a FT_grammar_errs.10
+#K= ea94add1d76d17dbb69c1b86f3aa42b2 FT_grammar_errs.11
+#K= 2046abda72725ea06fe339d5f364f1c9 FT_grammar_errs.12
+#K= b72f7fccf76f8a5bee47a05d7bb545fb FT_grammar_errs.13
+#K= 98e2bd3e4f3da58536496a38ec3e6238 FT_grammar_errs.14
+#K= b371c6ba52503d037dbc43da788af8be FT_grammar_errs.15
+#K= cb8288d607b0c5282125852f3ab05107 FT_grammar_errs.16
+#K= c2a8d0401e4cf85ccebedf61c5d0ff4b FT_grammar_errs.17
+#K= cb8288d607b0c5282125852f3ab05107 FT_grammar_errs.18
+#K= b371c6ba52503d037dbc43da788af8be FT_grammar_errs.19
+#K= 98e2bd3e4f3da58536496a38ec3e6238 FT_grammar_errs.20
+#K= 02b210b2646aceb68f3d6d2876a3d57a FT_grammar_errs.21
+#K= 51030cd01ed601a68dd48356902954b1 FT_grammar_errs.22
+#K= af8818de076407d4e7f4e384ba110ac5 FT_grammar_errs.23
+#K= 023ba04ffced833b4776fb4fcaae7755 FT_grammar_errs.24
+#K= 0a082bb9d50f9a6257c3be5938758150 FT_grammar_errs.25
+#K= 3b956344b2338de9dd0625391b41ed35 FT_grammar_errs.26
+#K= 97779a5b22bb43912268caca0dc391d8 FT_grammar_errs.27
+#K= c02a669a8b76e15f0dcced9c4aacc5da FT_grammar_errs.28
+#K= 89822eac51e11b55c50c4e72a1203452 FT_grammar_errs.29
+#K= 56a65b28955c743f18001d1b423356fb FT_grammar_errs.30
+#K= ff1186fdf1ffe20c89fe38db596e75c2 FT_grammar_errs.31
+#K= 10945c0e8920342903ffeeb0d601babd FT_grammar_errs.32
+#K= 6a333eb2cfbb2c347b8fdfb06a979aa9 FT_grammar_errs.33
+#K= 55dba10e65775dfd1e229ddf0eb2608e FT_grammar_errs.34
+#K= dfa3b6908ea9f4b23005925d95dedd8e FT_grammar_errs.35
+#K= 3cfcc96931e76ce6396da3e27c61a6ef FT_grammar_errs.36
+#K= 04e37fe069eed91515c6a24301378548 FT_grammar_errs.37
+#K= 130bf64b92a5e34d1c4cce98899084e1 FT_grammar_errs.38
+#K= 9681a05658f1a50e3434aa991b5ce992 FT_grammar_errs.39
+#K= 38506317363a188fbb7a417ff50457a9 FT_grammar_errs.40
+#K= 02b210b2646aceb68f3d6d2876a3d57a FT_grammar_errs.41
+#K= 8c08a8b5cacbf885d022360ed856e7a1 FT_grammar_errs.42
+#K= f0f4d894a49bd2c1856cf4f013f83e54 FT_grammar_errs.43
+#K= 25b92d52cb299fa8d84c5584e490bd97 FT_grammar_errs.44
+#K= 0a082bb9d50f9a6257c3be5938758150 FT_grammar_errs.45
+#K= 2a41940f70efa80e39cb3356931e49af FT_grammar_errs.46
+#K= a3cbfcf5e452fb11994fdf41254c6775 FT_grammar_errs.47
+#K= d47387d5885927ac4d33f0675a721963 FT_grammar_errs.48
+#K= 37d2984315284521b084e62feb889527 FT_grammar_errs.49
+#K= 99b7d60f3afb7ab9fb8e14340c30df02 FT_grammar_errs.50
+#K= a16f404c515c40418f43ea1d4d8e6a7b FT_grammar_errs.51
+#K= 424841345d03bcfad704e9cdfce29794 FT_grammar_errs.52
+#K= de2bf9687e8374f566db45d45274c313 FT_grammar_errs.53
+#K= 6d923562c9fc7aaf1ac1c393aa7b55f9 FT_grammar_errs.54
+#K= 704bfc82d4cf8fee52552d33bacfc7df FT_grammar_errs.55
+#K= 426bf966b975ade7ec8c6ccf40463583 FT_grammar_errs.56
+#K= 59a11ff06013a43e7bb6a21f8f55e7b7 FT_grammar_errs.57
+#K= d6fde9bf3500a509fbd9cbf69fedb04f FT_grammar_errs.58
+#K= c6a1064235d93bc17a623216b3817cb8 FT_grammar_errs.59
+#K= 4042bdb2ea75ed254c429324b20c82b8 FT_grammar_errs.60
#K= 6e8599556a312200fb6d484565b6c52f FT_basic_queries.1
#K= db17180b59444e5e34a8fc20c40e4530 FT_basic_queries.2
#K= f7bd56bd407ff255ef2e3b5fb093ae6a FT_basic_queries.3
--
2.55.0
WARNING: multiple messages have this Message-ID (diff)
From: Jim Cromie <jim.cromie@gmail.com>
To: Jason Baron <jbaron@akamai.com>, Shuah Khan <shuah@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>,
Simona Vetter <simona@ffwll.ch>, Arnd Bergmann <arnd@arndb.de>,
Luis Chamberlain <mcgrof@kernel.org>,
Petr Pavlu <petr.pavlu@suse.com>,
Daniel Gomez <da.gomez@kernel.org>,
Sami Tolvanen <samitolvanen@google.com>,
Aaron Tomlin <atomlin@atomlin.com>,
Jonathan Corbet <corbet@net.net>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Nathan Chancellor <nathan@kernel.org>,
Nicolas Schier <nsc@kernel.org>,
Shuah Khan <skhan@linuxfoundation.org>,
Randy Dunlap <rdunlap@infradead.org>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Pavel Machek <pavel@kernel.org>, Len Brown <lenb@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
dri-devel@lists.freedesktop.org, linux-arch@vger.kernel.org,
linux-modules@vger.kernel.org, linux-doc@vger.kernel.org,
linux-kbuild@vger.kernel.org, linux-pm@vger.kernel.org,
Jim Cromie <jim.cromie@gmail.com>,
Louis Chauvet <louis.chauvet@bootlin.com>
Subject: [PATCH v10 13/38] dyndbg: reduce verbose/debug clutter
Date: Wed, 16 Sep 2026 09:33:05 -0600 [thread overview]
Message-ID: <20260916-dd-cmap-part2-clean-v10-13-af4cf4767707@gmail.com> (raw)
In-Reply-To: <20260916-dd-cmap-part2-clean-v10-0-af4cf4767707@gmail.com>
currently, for verbose=3, these are logged (blank lines for clarity):
dyndbg: query 0: "class DRM_UT_CORE +p" mod:*
dyndbg: split into words: "class" "DRM_UT_CORE" "+p"
dyndbg: op='+'
dyndbg: flags=0x1
dyndbg: *flagsp=0x1 *maskp=0xffffffff
dyndbg: parsed: func="" file="" module="" format="" lineno=0-0 class=...
dyndbg: no matches for query
dyndbg: no-match: func="" file="" module="" format="" lineno=0-0 class=...
dyndbg: processed 1 queries, with 0 matches, 0 errs
That is excessive, so this patch:
- shrinks 3 lines of 2nd stanza to single line
- drops 1st 2 lines of 3rd stanza
3rd line is like 1st, with result, not procedure.
2nd line is just status, retold in 4th, with more info.
New output:
dyndbg: query 0: "class DRM_UT_CORE +p"
dyndbg: split into words: "class" "DRM_UT_CORE" "+p"
dyndbg: op='+' flags=0x1 maskp=0xffffffff
dyndbg: processed 1 queries, with 0 matches, 0 errs
Also drop several verbose=3 messages in ddebug_add_module. When
modprobing a module, dyndbg currently logs/says "add-module", and then
"skipping" if the module has no prdbgs. Instead just check 1st and
return quietly.
Unmatched query diagnostics are intentionally restricted to verbose
level 3 (v3pr_info_dq) to reduce dmesg output clutter on standard
verbose levels (verbose=1 and verbose=2), aligning with the overall
de-cluttering of dynamic debug logging.
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
Reviewed-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
v7: update fingerprints of grammar-errs changed here
v4: rename vpr_dq_info to v3pr_dq_info to tell its active logging level
adjust some vX levels per doc'd intentions
v2: RvB after SoB
trivial change to verbose-debug output line to output the actual
"module" keyword rather than "mod:", and do so only when the module is
constrained by the callchain (ie as part of a modprobe).
was: query X: "(keyword value)* [+-=]flags" mod:*
now: query X: "(keyword value)* [+-=]flags"
or query X: module FOO "keyword value)* [+-=]flags"
IOW, adjust output to reflect the input grammar more closely.
---
lib/dynamic_debug.c | 24 ++---
.../selftests/dynamic_debug/dyndbg_selftest.sh | 120 ++++++++++-----------
2 files changed, 70 insertions(+), 74 deletions(-)
diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index 83983b261bf8..ca8e3cea504c 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -128,7 +128,7 @@ do { \
#define v3pr_info(fmt, ...) vnpr_info(3, fmt, ##__VA_ARGS__)
#define v4pr_info(fmt, ...) vnpr_info(4, fmt, ##__VA_ARGS__)
-static void vpr_info_dq(const struct ddebug_query *query, const char *msg)
+static void v3pr_info_dq(const struct ddebug_query *query, const char *msg)
{
/* trim any trailing newlines */
int fmtlen = 0;
@@ -284,9 +284,6 @@ static int ddebug_change(const struct ddebug_query *query,
}
mutex_unlock(&ddebug_lock);
- if (!nfound && verbose)
- pr_info("no matches for query\n");
-
return nfound;
}
@@ -495,7 +492,6 @@ static int ddebug_parse_query(char *words[], int nwords,
*/
query->module = modname;
- vpr_info_dq(query, "parsed");
return 0;
}
@@ -519,7 +515,6 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
pr_err("bad flag-op %c, at start of %s\n", *str, str);
return -EINVAL;
}
- v3pr_info("op='%c'\n", op);
for (; *str ; ++str) {
for (i = ARRAY_SIZE(opt_array) - 1; i >= 0; i--) {
@@ -533,7 +528,6 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
return -EINVAL;
}
}
- v3pr_info("flags=0x%x\n", modifiers->flags);
/* calculate final flags, mask based upon op */
switch (op) {
@@ -549,7 +543,7 @@ static int ddebug_parse_flags(const char *str, struct flag_settings *modifiers)
modifiers->flags = 0;
break;
}
- v3pr_info("*flagsp=0x%x *maskp=0x%x\n", modifiers->flags, modifiers->mask);
+ v3pr_info("op='%c' flags=0x%x maskp=0x%x\n", op, modifiers->flags, modifiers->mask);
return 0;
}
@@ -578,7 +572,7 @@ static int ddebug_exec_query(char *query_string, const char *modname)
}
/* actually go and implement the change */
nfound = ddebug_change(&query, &modifiers);
- vpr_info_dq(&query, nfound ? "applied" : "no-match");
+ v3pr_info_dq(&query, nfound ? "applied" : "no-match");
return nfound;
}
@@ -601,7 +595,10 @@ static int ddebug_exec_queries(char *query, const char *modname)
if (!query || !*query || *query == '#')
continue;
- vpr_info("query %d: \"%s\" mod:%s\n", i, query, modname ?: "*");
+ if (modname)
+ v2pr_info("query %d: module %s \"%s\"\n", i, modname, query);
+ else
+ v2pr_info("query %d: \"%s\"\n", i, query);
rc = ddebug_exec_query(query, modname);
if (rc < 0) {
@@ -1168,11 +1165,10 @@ static int ddebug_add_module(struct _ddebug_info *di, const char *modname)
{
struct ddebug_table *dt;
- v3pr_info("add-module: %s.%d sites\n", modname, di->num_descs);
- if (!di->num_descs) {
- v3pr_info(" skip %s\n", modname);
+ if (!di->num_descs)
return 0;
- }
+
+ v3pr_info("add-module: %s %d sites\n", modname, di->num_descs);
dt = kzalloc_obj(*dt);
if (dt == NULL) {
diff --git a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
index 04c1d9254ca9..972f12c70a8e 100755
--- a/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
+++ b/tools/testing/selftests/dynamic_debug/dyndbg_selftest.sh
@@ -322,66 +322,66 @@ modular_tests=(
# ==============================================================================
function GOLDEN_RECORDS {
cat << 'EOF' | {
-#K= b938440930e5f1297d524e6c0c1ec85c FT_grammar_errs.1
-#K= b9a397e807148d13ba07da7db7e69817 FT_grammar_errs.2
-#K= 5abefa504937a329f974504f1896e368 FT_grammar_errs.3
-#K= 1d94d0f239bf40bf51280caeab499de0 FT_grammar_errs.4
-#K= 9a5e1c1856f1ebbe57a4afdfc4c9703a FT_grammar_errs.5
-#K= b3809a6f9f643f049f1ef30827d4b001 FT_grammar_errs.6
-#K= 5d400aad1a7d71f548b6b81274d00a55 FT_grammar_errs.7
-#K= 61cd359b10f9051862d3745eda07a295 FT_grammar_errs.8
-#K= 567379f4f4d099f00f37d1469d9370bd FT_grammar_errs.9
-#K= 31a026d10f85e8f4c9f8cf3e1cef3c61 FT_grammar_errs.10
-#K= ba62952b671a553d4b14e344a61926f7 FT_grammar_errs.11
-#K= 49aec6c2e99cc70a1e4137f86e94f6f4 FT_grammar_errs.12
-#K= cc02cccf15988a98dfd5b1df1e492e31 FT_grammar_errs.13
-#K= 2bbf3fac2b77b88b6cebe459ff9631d3 FT_grammar_errs.14
-#K= 93b67411c254875a6bae5c01c0239729 FT_grammar_errs.15
-#K= b22f2efe54a1637156b9521b2794806e FT_grammar_errs.16
-#K= de410dba40d8b097524f91da8ae2b1c5 FT_grammar_errs.17
-#K= 6c922048c21f6198720dfd68ae16fdad FT_grammar_errs.18
-#K= 4ddd57e9cbc3da2613ac59eb285ad8c1 FT_grammar_errs.19
-#K= ba65062f6be00a1d04907dd176d26c19 FT_grammar_errs.20
-#K= 94cdf3b32afa4f12a00a704208aa2e53 FT_grammar_errs.21
-#K= 1f6fedfe222af475211b3bfc6d08bc63 FT_grammar_errs.22
-#K= c67dfeca97697b707acdd70672816dff FT_grammar_errs.23
-#K= 9574dbfdac063409b41a44e6251fbcd9 FT_grammar_errs.24
-#K= 3c694a0ee2cf3a1d39f2ca8a9f3b9094 FT_grammar_errs.25
-#K= c23be05426c8727be833ff055944aa96 FT_grammar_errs.26
-#K= cdddf4ffd7fde3c12eb0c73770b872bf FT_grammar_errs.27
-#K= cdf7a2e2740ec007efbd29feda478420 FT_grammar_errs.28
-#K= f6650d69963cef433c50e1f2acb899fc FT_grammar_errs.29
-#K= e150a96693eb561a20eebebfd637e667 FT_grammar_errs.30
-#K= b63514cf73a93962311d098284d7b491 FT_grammar_errs.31
-#K= b253cde723889c42d2c944c1b14f5a45 FT_grammar_errs.32
-#K= 7ad3dfb73e82f4d75b0770179e6dc264 FT_grammar_errs.33
-#K= f4d905e4f72dbd535bb80d7fe9df84b0 FT_grammar_errs.34
-#K= 5bf50b198d8e5fe300541adfce92e073 FT_grammar_errs.35
-#K= 7c4d73d42cff377cd84a7683b0c3e0b9 FT_grammar_errs.36
-#K= 19f1aa8d33d71888be74b19a3143938f FT_grammar_errs.37
-#K= 84309c1322631ae74ecf2c729b6aa210 FT_grammar_errs.38
-#K= 8cfe48871f91a90e6eaaef9123892394 FT_grammar_errs.39
-#K= 8aaa5fdd50ead5cd429fbba4123b215c FT_grammar_errs.40
-#K= 94cdf3b32afa4f12a00a704208aa2e53 FT_grammar_errs.41
-#K= 1a402ada248d0d50cec13a1af150ea33 FT_grammar_errs.42
-#K= 5b46a8eb0d74009462f74cf7553e3228 FT_grammar_errs.43
-#K= 546e440044828d86135dd63f1eb9ed17 FT_grammar_errs.44
-#K= 3c694a0ee2cf3a1d39f2ca8a9f3b9094 FT_grammar_errs.45
-#K= 37b7ab754e579683a28ce086c470cdc9 FT_grammar_errs.46
-#K= 3e3acfb800cfb1bcb0cc07f33b75830a FT_grammar_errs.47
-#K= 42dc6cb4fe938bb82b64c82924ef28d8 FT_grammar_errs.48
-#K= cf9320d2188f5b48d508d610d95298b2 FT_grammar_errs.49
-#K= 1f33fb1fd2365e77c3cfbd61d1ae2a7c FT_grammar_errs.50
-#K= 67588c71f92f319c6224d5917456ecd2 FT_grammar_errs.51
-#K= 22e7795f7dbeb6dc2fce5e113312781c FT_grammar_errs.52
-#K= 66d253407728c1f8a850519eadd66880 FT_grammar_errs.53
-#K= 27e8345aaeed85c1de5516871e0bbd0c FT_grammar_errs.54
-#K= 43cc8a154f28f1a668ab409a1af4e77a FT_grammar_errs.55
-#K= eda21551fcdd76ef2f192e1d9950a05f FT_grammar_errs.56
-#K= 0a8a986b5610630cb75c0568deff8315 FT_grammar_errs.57
-#K= 29bfae73351c3157a5fe409febcef276 FT_grammar_errs.58
-#K= 73a9e53428d1fb1a9813e3eab7d0ea18 FT_grammar_errs.59
-#K= 800951095b297532e25785ab101a2ba9 FT_grammar_errs.60
+#K= 26fd1565f209b383d9f2fbf0b54cd5fc FT_grammar_errs.1
+#K= 200c01632c52a63f6d186da1c6460740 FT_grammar_errs.2
+#K= 7d7141900ce6e32f15c99202309c63a4 FT_grammar_errs.3
+#K= 1bb798a5831d0119789d424ef6cb55c4 FT_grammar_errs.4
+#K= 5edd66e308b2792d5694df86c07a3eaf FT_grammar_errs.5
+#K= 6f87d92ffe0812550f43287127c6f2b9 FT_grammar_errs.6
+#K= c0eb05b58a008c722e091e1ae74440ec FT_grammar_errs.7
+#K= 911929ec0e2ffc1f13822b479dec6805 FT_grammar_errs.8
+#K= 1ac52ce8ba553ec23eb70faa3ffa1197 FT_grammar_errs.9
+#K= c1407512376369d2e591a4b25a4b607a FT_grammar_errs.10
+#K= ea94add1d76d17dbb69c1b86f3aa42b2 FT_grammar_errs.11
+#K= 2046abda72725ea06fe339d5f364f1c9 FT_grammar_errs.12
+#K= b72f7fccf76f8a5bee47a05d7bb545fb FT_grammar_errs.13
+#K= 98e2bd3e4f3da58536496a38ec3e6238 FT_grammar_errs.14
+#K= b371c6ba52503d037dbc43da788af8be FT_grammar_errs.15
+#K= cb8288d607b0c5282125852f3ab05107 FT_grammar_errs.16
+#K= c2a8d0401e4cf85ccebedf61c5d0ff4b FT_grammar_errs.17
+#K= cb8288d607b0c5282125852f3ab05107 FT_grammar_errs.18
+#K= b371c6ba52503d037dbc43da788af8be FT_grammar_errs.19
+#K= 98e2bd3e4f3da58536496a38ec3e6238 FT_grammar_errs.20
+#K= 02b210b2646aceb68f3d6d2876a3d57a FT_grammar_errs.21
+#K= 51030cd01ed601a68dd48356902954b1 FT_grammar_errs.22
+#K= af8818de076407d4e7f4e384ba110ac5 FT_grammar_errs.23
+#K= 023ba04ffced833b4776fb4fcaae7755 FT_grammar_errs.24
+#K= 0a082bb9d50f9a6257c3be5938758150 FT_grammar_errs.25
+#K= 3b956344b2338de9dd0625391b41ed35 FT_grammar_errs.26
+#K= 97779a5b22bb43912268caca0dc391d8 FT_grammar_errs.27
+#K= c02a669a8b76e15f0dcced9c4aacc5da FT_grammar_errs.28
+#K= 89822eac51e11b55c50c4e72a1203452 FT_grammar_errs.29
+#K= 56a65b28955c743f18001d1b423356fb FT_grammar_errs.30
+#K= ff1186fdf1ffe20c89fe38db596e75c2 FT_grammar_errs.31
+#K= 10945c0e8920342903ffeeb0d601babd FT_grammar_errs.32
+#K= 6a333eb2cfbb2c347b8fdfb06a979aa9 FT_grammar_errs.33
+#K= 55dba10e65775dfd1e229ddf0eb2608e FT_grammar_errs.34
+#K= dfa3b6908ea9f4b23005925d95dedd8e FT_grammar_errs.35
+#K= 3cfcc96931e76ce6396da3e27c61a6ef FT_grammar_errs.36
+#K= 04e37fe069eed91515c6a24301378548 FT_grammar_errs.37
+#K= 130bf64b92a5e34d1c4cce98899084e1 FT_grammar_errs.38
+#K= 9681a05658f1a50e3434aa991b5ce992 FT_grammar_errs.39
+#K= 38506317363a188fbb7a417ff50457a9 FT_grammar_errs.40
+#K= 02b210b2646aceb68f3d6d2876a3d57a FT_grammar_errs.41
+#K= 8c08a8b5cacbf885d022360ed856e7a1 FT_grammar_errs.42
+#K= f0f4d894a49bd2c1856cf4f013f83e54 FT_grammar_errs.43
+#K= 25b92d52cb299fa8d84c5584e490bd97 FT_grammar_errs.44
+#K= 0a082bb9d50f9a6257c3be5938758150 FT_grammar_errs.45
+#K= 2a41940f70efa80e39cb3356931e49af FT_grammar_errs.46
+#K= a3cbfcf5e452fb11994fdf41254c6775 FT_grammar_errs.47
+#K= d47387d5885927ac4d33f0675a721963 FT_grammar_errs.48
+#K= 37d2984315284521b084e62feb889527 FT_grammar_errs.49
+#K= 99b7d60f3afb7ab9fb8e14340c30df02 FT_grammar_errs.50
+#K= a16f404c515c40418f43ea1d4d8e6a7b FT_grammar_errs.51
+#K= 424841345d03bcfad704e9cdfce29794 FT_grammar_errs.52
+#K= de2bf9687e8374f566db45d45274c313 FT_grammar_errs.53
+#K= 6d923562c9fc7aaf1ac1c393aa7b55f9 FT_grammar_errs.54
+#K= 704bfc82d4cf8fee52552d33bacfc7df FT_grammar_errs.55
+#K= 426bf966b975ade7ec8c6ccf40463583 FT_grammar_errs.56
+#K= 59a11ff06013a43e7bb6a21f8f55e7b7 FT_grammar_errs.57
+#K= d6fde9bf3500a509fbd9cbf69fedb04f FT_grammar_errs.58
+#K= c6a1064235d93bc17a623216b3817cb8 FT_grammar_errs.59
+#K= 4042bdb2ea75ed254c429324b20c82b8 FT_grammar_errs.60
#K= 6e8599556a312200fb6d484565b6c52f FT_basic_queries.1
#K= db17180b59444e5e34a8fc20c40e4530 FT_basic_queries.2
#K= f7bd56bd407ff255ef2e3b5fb093ae6a FT_basic_queries.3
--
2.55.0
next prev parent reply other threads:[~2026-09-16 15:33 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 via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 01/38] selftests/dyndbg: Add kselftest script to verify dynamic-debug Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 03/38] vmlinux.lds.h: drop unused HEADERED_SECTION* macros Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 04/38] vmlinux.lds.h: Fix ALIGN(8) omission causing NULL ptr on i386 Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 05/38] vmlinux.lds.h: remove redundant ALIGN(8) directives Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 06/38] dyndbg.lds.S: fix lost dyndbg sections in modules Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
2026-09-16 15:32 ` [PATCH v10 07/38] dyndbg: factor ddebug_match_desc out from ddebug_change Jim Cromie via B4 Relay
2026-09-16 15:32 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 10/38] dyndbg-API: remove DD_CLASS_TYPE_(DISJOINT|LEVEL)_NAMES and code Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 11/38] dyndbg: drop NUM_TYPE_ARGS Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 12/38] dyndbg: bump num-tokens in a query-cmd from 9 to 15 Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` Jim Cromie via B4 Relay [this message]
2026-09-16 15:33 ` [PATCH v10 13/38] dyndbg: reduce verbose/debug clutter Jim Cromie
2026-09-16 15:33 ` [PATCH v10 14/38] dyndbg: Bind callsites and classmaps to DDEBUG_MODNAME Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 16/38] dyndbg: tighten fn-sig of ddebug_apply_class_bitmap Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 17/38] dyndbg: replace classmap list with an array-slice Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 18/38] dyndbg: macrofy a 2-index for-loop pattern Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 19/38] dyndbg: reduce class param storage to u32 Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 20/38] dyndbg,module: make proper substructs in _ddebug_info Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 21/38] dyndbg: move mod_name down from struct ddebug_table to _ddebug_info Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 22/38] dyndbg: hoist classmap-filter-by-modname up to ddebug_add_module Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 23/38] dyndbg-API: replace DECLARE_DYNDBG_CLASSMAP Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 27/38] dyndbg-test: add do_bulk testpoint, rename do_prints to do_classes Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 16:37 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 28/38] dyndbg-API: promote DYNAMIC_DEBUG_CLASSMAP_PARAM to API Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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 via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 30/38] selftests: enable comma-terminator tests Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 31/38] dyndbg: split multi-query strings with @ Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 32/38] dyndbg: resolve "protection" of class'd pr_debug Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 16:56 ` sashiko-bot
2026-09-16 15:33 ` [PATCH v10 33/38] dyndbg: harden classmap and descriptor validation Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 34/38] docs/dyndbg: add classmap info to howto Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 35/38] dyndbg: Ignore additional arguments from pr_fmt Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 36/38] dyndbg: add epilogue to dynamic_debug/control file Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 37/38] dyndbg: add +c flag to count advantage of classmaps for DRM Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
2026-09-16 15:33 ` [PATCH v10 38/38] dyndbg: add DEBUG-biased fallback stubs for _dynamic_func_call_cls Jim Cromie via B4 Relay
2026-09-16 15:33 ` Jim Cromie
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=20260916-dd-cmap-part2-clean-v10-13-af4cf4767707@gmail.com \
--to=devnull+jim.cromie.gmail.com@kernel.org \
--cc=airlied@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=atomlin@atomlin.com \
--cc=corbet@net.net \
--cc=da.gomez@kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=gregkh@linuxfoundation.org \
--cc=jbaron@akamai.com \
--cc=jim.cromie@gmail.com \
--cc=lenb@kernel.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-modules@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=louis.chauvet@bootlin.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mcgrof@kernel.org \
--cc=mripard@kernel.org \
--cc=nathan@kernel.org \
--cc=nsc@kernel.org \
--cc=pavel@kernel.org \
--cc=petr.pavlu@suse.com \
--cc=rafael@kernel.org \
--cc=rdunlap@infradead.org \
--cc=samitolvanen@google.com \
--cc=shuah@kernel.org \
--cc=simona@ffwll.ch \
--cc=skhan@linuxfoundation.org \
--cc=tzimmermann@suse.de \
/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.