2019-10-29 20:11:14

by Jim Cromie

[permalink] [raw]
Subject: [PATCH 05/16] dyndbg: parse flags last, restore original behavior

In commit 85f7f6c0edb84, I moved flags parsing before the query
parsing. For error reporting, its more natural to parse in normal
reading order. So restore previous behavior.

Signed-off-by: Jim Cromie <[email protected]>
---
lib/dynamic_debug.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index 6eec5bd559fe..540ca0861cf0 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -445,15 +445,14 @@ static int ddebug_exec_query(char *query_string, const char *modname)
pr_err("tokenize failed\n");
return -EINVAL;
}
- /* check flags 1st (last arg) so query is pairs of spec,val */
- if (ddebug_parse_flags(words[nwords-1], &flags, &mask)) {
- pr_err("flags parse failed\n");
- return -EINVAL;
- }
if (ddebug_parse_query(words, nwords-1, &query, modname)) {
pr_err("query parse failed\n");
return -EINVAL;
}
+ if (ddebug_parse_flags(words[nwords-1], &flags, &mask)) {
+ pr_err("flags parse failed\n");
+ return -EINVAL;
+ }
/* actually go and implement the change */
nfound = ddebug_change(&query, flags, mask);
vpr_info_dq(&query, nfound ? "applied" : "no-match");
--
2.21.0