Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752137AbbKJT2I (ORCPT ); Tue, 10 Nov 2015 14:28:08 -0500 Received: from mail-pa0-f66.google.com ([209.85.220.66]:34782 "EHLO mail-pa0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750906AbbKJT2F (ORCPT ); Tue, 10 Nov 2015 14:28:05 -0500 From: Saurabh Sengar To: computersforpeace@gmail.com, joe@perches.com Cc: andy.shevchenko@gmail.com, joern@lazybastard.org, dwmw2@infradead.org, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, Saurabh Sengar Subject: [PATCH] mtd: phram: error handling Date: Wed, 11 Nov 2015 00:57:55 +0530 Message-Id: <1447183675-4840-1-git-send-email-saurabh.truth@gmail.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <20151110190343.GR12143@google.com> References: <20151110190343.GR12143@google.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2779 Lines: 102 Expand parse_err macro with hidden flow in-place. Remove the now unused parse_err macro. Miscellanea: o Use invalid not illegal for error messages Noticed-by: Brian Norris Signed-off-by: Joe Perches Signed-off-by: Saurabh Sengar --- >> I think -EINVAL makes more sense than 1. That >> could be a subsequent patch, I suppose. >That means you have to trace all the callers >to verify that converting 1 to -22 is acceptable. >Maybe Saurabh wants to do that. I have checked that function is called only by init and module param, and I understand in both the cases -EINVAL is a valid return type. Sorry, I am not able to test the driver, sending the patch as asked above. Also sorry for the noise I created in first report drivers/mtd/devices/phram.c | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/drivers/mtd/devices/phram.c b/drivers/mtd/devices/phram.c index 8b66e52..e39fe5c 100644 --- a/drivers/mtd/devices/phram.c +++ b/drivers/mtd/devices/phram.c @@ -199,11 +199,6 @@ static inline void kill_final_newline(char *str) } -#define parse_err(fmt, args...) do { \ - pr_err(fmt , ## args); \ - return 1; \ -} while (0) - #ifndef MODULE static int phram_init_called; /* @@ -226,8 +221,10 @@ static int phram_setup(const char *val) uint64_t len; int i, ret; - if (strnlen(val, sizeof(buf)) >= sizeof(buf)) - parse_err("parameter too long\n"); + if (strnlen(val, sizeof(buf)) >= sizeof(buf)) { + pr_err("parameter too long\n"); + return -EINVAL; + } strcpy(str, val); kill_final_newline(str); @@ -235,11 +232,15 @@ static int phram_setup(const char *val) for (i = 0; i < 3; i++) token[i] = strsep(&str, ","); - if (str) - parse_err("too many arguments\n"); + if (str) { + pr_err("too many arguments\n"); + return -EINVAL; + } - if (!token[2]) - parse_err("not enough arguments\n"); + if (!token[2]) { + pr_err("not enough arguments\n"); + return -EINVAL; + } ret = parse_name(&name, token[0]); if (ret) @@ -248,13 +249,15 @@ static int phram_setup(const char *val) ret = parse_num64(&start, token[1]); if (ret) { kfree(name); - parse_err("illegal start address\n"); + pr_err("invalid start address\n"); + return -EINVAL; } ret = parse_num64(&len, token[2]); if (ret) { kfree(name); - parse_err("illegal device length\n"); + pr_err("invalid device length\n"); + return -EINVAL; } ret = register_device(name, start, len); -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/