Message ID | 20241115080018.5372-1-danielyangkang@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [v2] ocfs2: replace deprecated simple_strtol with kstrtol | expand |
On 11/15/24 4:00 PM, Daniel Yang wrote: > The function simple_strtol ignores overflows and has an awkward > interface for error checking. Replace with the recommended kstrtol > function leads to clearer error checking and safer conversions. > > Signed-off-by: Daniel Yang <danielyangkang@gmail.com> Looks good. Reviewed-by: Joseph Qi <joseph.qi@linux.alibaba.com> > --- > v1->v2: reuse ret and remove blank line > > fs/ocfs2/cluster/heartbeat.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/fs/ocfs2/cluster/heartbeat.c b/fs/ocfs2/cluster/heartbeat.c > index 4b9f45d70..18333aa19 100644 > --- a/fs/ocfs2/cluster/heartbeat.c > +++ b/fs/ocfs2/cluster/heartbeat.c > @@ -3,6 +3,7 @@ > * Copyright (C) 2004, 2005 Oracle. All rights reserved. > */ > > +#include "linux/kstrtox.h" > #include <linux/kernel.h> > #include <linux/sched.h> > #include <linux/jiffies.h> > @@ -1777,8 +1778,8 @@ static ssize_t o2hb_region_dev_store(struct config_item *item, > if (o2nm_this_node() == O2NM_MAX_NODES) > goto out; > > - fd = simple_strtol(p, &p, 0); > - if (!p || (*p && (*p != '\n'))) > + ret = kstrtol(p, 0, &fd); > + if (ret < 0) > goto out; > > if (fd < 0 || fd >= INT_MAX)
diff --git a/fs/ocfs2/cluster/heartbeat.c b/fs/ocfs2/cluster/heartbeat.c index 4b9f45d70..18333aa19 100644 --- a/fs/ocfs2/cluster/heartbeat.c +++ b/fs/ocfs2/cluster/heartbeat.c @@ -3,6 +3,7 @@ * Copyright (C) 2004, 2005 Oracle. All rights reserved. */ +#include "linux/kstrtox.h" #include <linux/kernel.h> #include <linux/sched.h> #include <linux/jiffies.h> @@ -1777,8 +1778,8 @@ static ssize_t o2hb_region_dev_store(struct config_item *item, if (o2nm_this_node() == O2NM_MAX_NODES) goto out; - fd = simple_strtol(p, &p, 0); - if (!p || (*p && (*p != '\n'))) + ret = kstrtol(p, 0, &fd); + if (ret < 0) goto out; if (fd < 0 || fd >= INT_MAX)
The function simple_strtol ignores overflows and has an awkward interface for error checking. Replace with the recommended kstrtol function leads to clearer error checking and safer conversions. Signed-off-by: Daniel Yang <danielyangkang@gmail.com> --- v1->v2: reuse ret and remove blank line fs/ocfs2/cluster/heartbeat.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)