From: Michal Nazarewicz <min...@mina86.com>

kstrtoul() checks for overflow which simple_strtoul() does not pluss
it has “*end == 0” check in it as well.  As a side effect, a new
line character is now accepted, but this should not be an issue.

Signed-off-by: Michal Nazarewicz <min...@mina86.com>
---
 Patch on top of v3.5 with Benoit Goby's “Fix missing braces in
 parse_opts” patch
 (<id:1357703829-26621-1-git-send-email-ben...@android.com>) applied.

 drivers/usb/gadget/f_fs.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/gadget/f_fs.c b/drivers/usb/gadget/f_fs.c
index 8c2f251..38388d7 100644
--- a/drivers/usb/gadget/f_fs.c
+++ b/drivers/usb/gadget/f_fs.c
@@ -1103,8 +1103,8 @@ static int ffs_fs_parse_opts(struct ffs_sb_fill_data 
*data, char *opts)
                return 0;
 
        for (;;) {
-               char *end, *eq, *comma;
                unsigned long value;
+               char *eq, *comma;
 
                /* Option limit */
                comma = strchr(opts, ',');
@@ -1120,8 +1120,7 @@ static int ffs_fs_parse_opts(struct ffs_sb_fill_data 
*data, char *opts)
                *eq = 0;
 
                /* Parse value */
-               value = simple_strtoul(eq + 1, &end, 0);
-               if (unlikely(*end != ',' && *end != 0)) {
+               if (kstrtoul(eq + 1, 0, &value)) {
                        pr_err("%s: invalid value: %s\n", opts, eq + 1);
                        return -EINVAL;
                }
-- 
1.7.7.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to