dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead...
authorRandy Dunlap <rdunlap@infradead.org>
Fri, 17 Nov 2017 23:27:35 +0000 (15:27 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 18 Nov 2017 00:10:01 +0000 (16:10 -0800)
line-range is supposed to treat "1-" as "1-endoffile", so
handle the special case by setting last_lineno to UINT_MAX.

Fixes this error:

  dynamic_debug:ddebug_parse_query: last-line:0 < 1st-line:1
  dynamic_debug:ddebug_exec_query: query parse failed

Link: http://lkml.kernel.org/r/10a6a101-e2be-209f-1f41-54637824788e@infradead.org
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Acked-by: Jason Baron <jbaron@akamai.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/dynamic_debug.c

index da796e2dc4f506dc63db68b132180acff00c291f..c7c96bc7654af7c4d5f3c8bbf595989f9b3d0ebf 100644 (file)
@@ -360,6 +360,10 @@ static int ddebug_parse_query(char *words[], int nwords,
                                if (parse_lineno(last, &query->last_lineno) < 0)
                                        return -EINVAL;
 
+                               /* special case for last lineno not specified */
+                               if (query->last_lineno == 0)
+                                       query->last_lineno = UINT_MAX;
+
                                if (query->last_lineno < query->first_lineno) {
                                        pr_err("last-line:%d < 1st-line:%d\n",
                                                query->last_lineno,