Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ace678f authored by Andrey Ryabinin's avatar Andrey Ryabinin Committed by Linus Torvalds
Browse files

dynamic_debug: fix ddebug_parse_query()



This fixes following scenario:

  $ echo 'file dynamic_debug.c line 1-123 +p' > /sys/kernel/debug/dynamic_debug/control
  -bash: echo: write error: Invalid argument
  $ dmesg | grep dynamic_debug
  dynamic_debug:ddebug_parse_query: last-line:123 < 1st-line:1
  dynamic_debug:ddebug_parse_query: query parse failed

Signed-off-by: default avatarAndrey Ryabinin <a.ryabinin@samsung.com>
Cc: Jason Baron <jbaron@akamai.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent d9e133e6
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -352,8 +352,10 @@ static int ddebug_parse_query(char *words[], int nwords,
				return -EINVAL;
			if (last) {
				/* range <first>-<last> */
				if (parse_lineno(last, &query->last_lineno)
				    < query->first_lineno) {
				if (parse_lineno(last, &query->last_lineno) < 0)
					return -EINVAL;

				if (query->last_lineno < query->first_lineno) {
					pr_err("last-line:%d < 1st-line:%d\n",
						query->last_lineno,
						query->first_lineno);