From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758509AbbEaSAI (ORCPT ); Sun, 31 May 2015 14:00:08 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:36023 "EHLO mail-wg0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758371AbbEaSAB (ORCPT ); Sun, 31 May 2015 14:00:01 -0400 From: Filip Ayazi To: jason.wessel@windriver.com Cc: adobriyan@gmail.com, linux-kernel@vger.kernel.org, kgdb-bugreport@lists.sourceforge.net, Filip Ayazi Subject: [PATCH v2] kdb: use kstrto* instead of simple_strto Date: Sun, 31 May 2015 19:59:18 +0200 Message-Id: <1433095158-30000-1-git-send-email-filipayazi@gmail.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Replace simple_strto with appropriate kstrto functions as recommended by checkpatch, change pid, sig types to unsigned int, int respectively. Signed-off-by: Filip Ayazi --- kernel/debug/kdb/kdb_main.c | 56 +++++++++++++++------------------------------ 1 file changed, 19 insertions(+), 37 deletions(-) diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c index 4121345..6458330 100644 --- a/kernel/debug/kdb/kdb_main.c +++ b/kernel/debug/kdb/kdb_main.c @@ -296,7 +296,8 @@ static int kdbgetulenv(const char *match, unsigned long *value) if (strlen(ep) == 0) return KDB_NOENVVALUE; - *value = simple_strtoul(ep, NULL, 0); + if (kstrtoul(ep, 0, value) != 0) + return KDB_BADINT; return 0; } @@ -334,20 +335,15 @@ int kdbgetintenv(const char *match, int *value) */ int kdbgetularg(const char *arg, unsigned long *value) { - char *endp; unsigned long val; - val = simple_strtoul(arg, &endp, 0); - - if (endp == arg) { - /* - * Also try base 16, for us folks too lazy to type the - * leading 0x... - */ - val = simple_strtoul(arg, &endp, 16); - if (endp == arg) + /* + * Also try base 16, for us folks too lazy to type the + * leading 0x... + */ + if (kstrtoul(arg, 0, &val) != 0) + if (kstrtoul(arg, 16, &val) != 0) return KDB_BADINT; - } *value = val; @@ -356,17 +352,11 @@ int kdbgetularg(const char *arg, unsigned long *value) int kdbgetu64arg(const char *arg, u64 *value) { - char *endp; u64 val; - val = simple_strtoull(arg, &endp, 0); - - if (endp == arg) { - - val = simple_strtoull(arg, &endp, 16); - if (endp == arg) + if (kstrtoull(arg, 0, &val) != 0) + if (kstrtoull(arg, 16, &val) != 0) return KDB_BADINT; - } *value = val; @@ -402,10 +392,9 @@ int kdb_set(int argc, const char **argv) */ if (strcmp(argv[1], "KDBDEBUG") == 0) { unsigned int debugflags; - char *cp; - debugflags = simple_strtoul(argv[2], &cp, 0); - if (cp == argv[2] || debugflags & ~KDB_DEBUG_FLAG_MASK) { + if (kstrtouint(argv[2], 0, &debugflags) != 0 + || debugflags & ~KDB_DEBUG_FLAG_MASK) { kdb_printf("kdb: illegal debug flags '%s'\n", argv[2]); return 0; @@ -1588,10 +1577,8 @@ static int kdb_md(int argc, const char **argv) if (!argv[0][3]) valid = 1; else if (argv[0][3] == 'c' && argv[0][4]) { - char *p; - repeat = simple_strtoul(argv[0] + 4, &p, 10); + valid = !kstrtoint(argv[0]+4, 10, &repeat); mdcount = ((repeat * bytesperword) + 15) / 16; - valid = !*p; } last_repeat = repeat; } else if (strcmp(argv[0], "md") == 0) @@ -2091,13 +2078,10 @@ static int kdb_dmesg(int argc, const char **argv) if (argc > 2) return KDB_ARGCOUNT; if (argc) { - char *cp; - lines = simple_strtol(argv[1], &cp, 0); - if (*cp) + if (kstrtoint(argv[1], 0, &lines) != 0) lines = 0; if (argc > 1) { - adjust = simple_strtoul(argv[2], &cp, 0); - if (*cp || adjust < 0) + if (kstrtoint(argv[2], 0, &adjust) != 0 || adjust < 0) adjust = 0; } } @@ -2436,16 +2420,15 @@ static int kdb_help(int argc, const char **argv) */ static int kdb_kill(int argc, const char **argv) { - long sig, pid; - char *endp; + unsigned int pid; + int sig; struct task_struct *p; struct siginfo info; if (argc != 2) return KDB_ARGCOUNT; - sig = simple_strtol(argv[1], &endp, 0); - if (*endp) + if (kstrtoint(argv[1], 0, &sig) != 0) return KDB_BADINT; if (sig >= 0) { kdb_printf("Invalid signal parameter.<-signal>\n"); @@ -2453,8 +2436,7 @@ static int kdb_kill(int argc, const char **argv) } sig = -sig; - pid = simple_strtol(argv[2], &endp, 0); - if (*endp) + if (kstrtouint(argv[2], 0, &pid) != 0) return KDB_BADINT; if (pid <= 0) { kdb_printf("Process ID must be large than 0.\n"); -- 1.9.1