From: Jim Cromie <jim.cromie@gmail.com>
To: gregkh@linuxfoundation.org
Cc: "Jim Cromie" <jim.cromie@gmail.com>,
"Jason Baron" <jbaron@akamai.com>,
"Łukasz Bartosik" <ukaszb@chromium.org>,
"Louis Chauvet" <louis.chauvet@bootlin.com>,
"Bagas Sanjaya" <bagasdotme@gmail.com>,
"Dave Airlie" <airlied@gmail.com>,
"Daniel Vetter" <daniel@ffwll.ch>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
dri-devel@lists.freedesktop.org, "Petr Mladek" <pmladek@suse.com>,
"Shuah Khan" <skhan@linuxfoundation.org>,
linux-doc@vger.kernel.org, "Jonathan Corbet" <corbet@lwn.net>,
"Ye Bin" <yebin10@huawei.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org
Subject: [PATCH v9 05/32] docs/dyndbg: explain flags parse 1st
Date: Thu, 29 Jan 2026 00:28:51 -0700 [thread overview]
Message-ID: <20260129072932.2190803-6-jim.cromie@gmail.com> (raw)
In-Reply-To: <20260129072932.2190803-1-jim.cromie@gmail.com>
When writing queries to >control, flags are parsed 1st, since they are
the only required field, and they require specific compositions. So
if the flags draw an error (on those specifics), then keyword errors
aren't reported. This can be mildly confusing/annoying, so explain it
instead.
cc: linux-doc@vger.kernel.org
Reviewed-by: Louis Chauvet <louis.chauvet@bootlin.com>
Signed-off-by: Jim Cromie <jim.cromie@gmail.com>
---
.../admin-guide/dynamic-debug-howto.rst | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/Documentation/admin-guide/dynamic-debug-howto.rst b/Documentation/admin-guide/dynamic-debug-howto.rst
index 4b14d9fd0300..9c2f096ed1d8 100644
--- a/Documentation/admin-guide/dynamic-debug-howto.rst
+++ b/Documentation/admin-guide/dynamic-debug-howto.rst
@@ -109,10 +109,19 @@ The match-spec's select *prdbgs* from the catalog, upon which to apply
the flags-spec, all constraints are ANDed together. An absent keyword
is the same as keyword "*".
-
-A match specification is a keyword, which selects the attribute of
-the callsite to be compared, and a value to compare against. Possible
-keywords are:::
+Note that since the match-spec can be empty, the flags are checked 1st,
+then the pairs of keyword and value. Flag errs will hide keyword errs::
+
+ bash-5.2# ddcmd mod bar +foo
+ dyndbg: read 13 bytes from userspace
+ dyndbg: query 0: "mod bar +foo" mod:*
+ dyndbg: unknown flag 'o'
+ dyndbg: flags parse failed
+ dyndbg: processed 1 queries, with 0 matches, 1 errs
+
+So a match-spec is a keyword, which selects the attribute of the
+callsite to be compared, and a value to compare against. Possible
+keywords are::
match-spec ::= 'func' string |
'file' string |
--
2.52.0
next prev parent reply other threads:[~2026-01-29 7:30 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260129072932.2190803-1-jim.cromie@gmail.com>
2026-01-29 7:28 ` [PATCH v9 01/32] dyndbg: fix NULL ptr on i386 due to section alignment Jim Cromie
2026-01-29 7:28 ` [PATCH v9 02/32] dyndbg: factor ddebug_match_desc out from ddebug_change Jim Cromie
2026-01-29 7:28 ` [PATCH v9 03/32] dyndbg: add stub macro for DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-01-29 7:28 ` [PATCH v9 04/32] docs/dyndbg: update examples \012 to \n Jim Cromie
2026-01-29 7:28 ` Jim Cromie [this message]
2026-01-29 7:28 ` [PATCH v9 06/32] test-dyndbg: fixup CLASSMAP usage error Jim Cromie
2026-01-29 7:28 ` [PATCH v9 07/32] dyndbg: reword "class unknown," to "class:_UNKNOWN_" Jim Cromie
2026-01-29 7:28 ` [PATCH v9 08/32] dyndbg: make ddebug_class_param union members same size Jim Cromie
2026-01-29 7:28 ` [PATCH v9 09/32] dyndbg: drop NUM_TYPE_ARRAY Jim Cromie
2026-01-29 7:28 ` [PATCH v9 10/32] dyndbg: tweak pr_fmt to avoid expansion conflicts Jim Cromie
2026-01-29 7:28 ` [PATCH v9 11/32] dyndbg: reduce verbose/debug clutter Jim Cromie
2026-01-29 7:28 ` [PATCH v9 12/32] dyndbg: refactor param_set_dyndbg_classes and below Jim Cromie
2026-01-29 7:28 ` [PATCH v9 13/32] dyndbg: tighten fn-sig of ddebug_apply_class_bitmap Jim Cromie
2026-01-29 7:29 ` [PATCH v9 14/32] dyndbg: replace classmap list with a vector Jim Cromie
2026-01-29 7:29 ` [PATCH v9 15/32] dyndbg: macrofy a 2-index for-loop pattern Jim Cromie
2026-01-29 7:29 ` [PATCH v9 16/32] dyndbg,module: make proper substructs in _ddebug_info Jim Cromie
2026-01-29 7:29 ` [PATCH v9 17/32] dyndbg: hoist classmap-filter-by-modname up to ddebug_add_module Jim Cromie
2026-01-29 7:29 ` [PATCH v9 18/32] dyndbg: move mod_name down from struct ddebug_table to _ddebug_info Jim Cromie
2026-01-29 7:29 ` [PATCH v9 19/32] dyndbg-API: remove DD_CLASS_TYPE_(DISJOINT|LEVEL)_NAMES and code Jim Cromie
2026-01-29 7:29 ` [PATCH v9 20/32] selftests-dyndbg: add a dynamic_debug run_tests target Jim Cromie
2026-01-29 7:29 ` [PATCH v9 21/32] dyndbg: change __dynamic_func_call_cls* macros into expressions Jim Cromie
2026-01-29 7:29 ` [PATCH v9 22/32] dyndbg-API: replace DECLARE_DYNDBG_CLASSMAP Jim Cromie
2026-01-29 7:29 ` [PATCH v9 23/32] dyndbg: detect class_id reservation conflicts Jim Cromie
2026-01-29 7:29 ` [PATCH v9 24/32] dyndbg: check DYNAMIC_DEBUG_CLASSMAP_DEFINE args at compile-time Jim Cromie
2026-01-29 7:29 ` [PATCH v9 25/32] dyndbg-test: change do_prints testpoint to accept a loopct Jim Cromie
2026-01-29 7:29 ` [PATCH v9 26/32] dyndbg-API: promote DYNAMIC_DEBUG_CLASSMAP_PARAM to API Jim Cromie
2026-01-29 7:29 ` [PATCH v9 27/32] dyndbg: treat comma as a token separator Jim Cromie
2026-01-29 7:29 ` [PATCH v9 28/32] dyndbg: split multi-query strings with % Jim Cromie
2026-01-29 7:29 ` [PATCH v9 29/32] selftests-dyndbg: add test_mod_submod Jim Cromie
2026-01-29 7:29 ` [PATCH v9 30/32] dyndbg: resolve "protection" of class'd pr_debug Jim Cromie
2026-01-29 7:29 ` [PATCH v9 31/32] dyndbg: add DYNAMIC_DEBUG_CLASSMAP_USE_(dd_class_name, offset) Jim Cromie
2026-01-29 7:29 ` [PATCH v9 32/32] docs/dyndbg: add classmap info to howto 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=20260129072932.2190803-6-jim.cromie@gmail.com \
--to=jim.cromie@gmail.com \
--cc=airlied@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=bagasdotme@gmail.com \
--cc=corbet@lwn.net \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=gregkh@linuxfoundation.org \
--cc=jbaron@akamai.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=louis.chauvet@bootlin.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=pmladek@suse.com \
--cc=skhan@linuxfoundation.org \
--cc=tzimmermann@suse.de \
--cc=ukaszb@chromium.org \
--cc=yebin10@huawei.com \
/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
all inboxes | Powered by JetHome®