Message ID | 20190729151454.9606-1-hslester96@gmail.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | Replace strncmp with str_has_prefix | expand |
On Mon 2019-07-29 23:14:54, Chuhong Yuan wrote: > strncmp(str, const, len) is error-prone. > We had better use newly introduced > str_has_prefix() instead of it. > > Signed-off-by: Chuhong Yuan <hslester96@gmail.com> > --- > kernel/power/hibernate.c | 8 ++++---- > kernel/power/main.c | 2 +- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c > index cd7434e6000d..49d4bfdb2b67 100644 > --- a/kernel/power/hibernate.c > +++ b/kernel/power/hibernate.c > @@ -1188,15 +1188,15 @@ static int __init resume_offset_setup(char *str) > > static int __init hibernate_setup(char *str) > { > - if (!strncmp(str, "noresume", 8)) { > + if (str_has_prefix(str, "noresume")) { > noresume = 1; > - } else if (!strncmp(str, "nocompress", 10)) { > + } else if (str_has_prefix(str, "nocompress")) { > nocompress = 1; Ok, old code is bad, too... but this makes the error visible. We do not want "noresumenextmonday" to set noresume = 1, right? Pavel
Pavel Machek <pavel@ucw.cz> 于2019年7月30日周二 上午3:15写道: > > On Mon 2019-07-29 23:14:54, Chuhong Yuan wrote: > > strncmp(str, const, len) is error-prone. > > We had better use newly introduced > > str_has_prefix() instead of it. > > > > Signed-off-by: Chuhong Yuan <hslester96@gmail.com> > > --- > > kernel/power/hibernate.c | 8 ++++---- > > kernel/power/main.c | 2 +- > > 2 files changed, 5 insertions(+), 5 deletions(-) > > > > diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c > > index cd7434e6000d..49d4bfdb2b67 100644 > > --- a/kernel/power/hibernate.c > > +++ b/kernel/power/hibernate.c > > @@ -1188,15 +1188,15 @@ static int __init resume_offset_setup(char *str) > > > > static int __init hibernate_setup(char *str) > > { > > - if (!strncmp(str, "noresume", 8)) { > > + if (str_has_prefix(str, "noresume")) { > > noresume = 1; > > - } else if (!strncmp(str, "nocompress", 10)) { > > + } else if (str_has_prefix(str, "nocompress")) { > > nocompress = 1; > > Ok, old code is bad, too... but this makes the error visible. We do > not want "noresumenextmonday" to set noresume = 1, right? > I am not clear about the semantic of the code. Therefore, what is the right way to fix this error? > Pavel > > -- > (english) http://www.livejournal.com/~pavelmachek > (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c index cd7434e6000d..49d4bfdb2b67 100644 --- a/kernel/power/hibernate.c +++ b/kernel/power/hibernate.c @@ -1188,15 +1188,15 @@ static int __init resume_offset_setup(char *str) static int __init hibernate_setup(char *str) { - if (!strncmp(str, "noresume", 8)) { + if (str_has_prefix(str, "noresume")) { noresume = 1; - } else if (!strncmp(str, "nocompress", 10)) { + } else if (str_has_prefix(str, "nocompress")) { nocompress = 1; - } else if (!strncmp(str, "no", 2)) { + } else if (str_has_prefix(str, "no")) { noresume = 1; nohibernate = 1; } else if (IS_ENABLED(CONFIG_STRICT_KERNEL_RWX) - && !strncmp(str, "protect_image", 13)) { + && str_has_prefix(str, "protect_image")) { enable_restore_image_protection(); } return 1; diff --git a/kernel/power/main.c b/kernel/power/main.c index bdbd605c4215..5e5f64bb3a43 100644 --- a/kernel/power/main.c +++ b/kernel/power/main.c @@ -495,7 +495,7 @@ static suspend_state_t decode_state(const char *buf, size_t n) len = p ? p - buf : n; /* Check hibernation first. */ - if (len == 4 && !strncmp(buf, "disk", len)) + if (len == 4 && str_has_prefix(buf, "disk")) return PM_SUSPEND_MAX; #ifdef CONFIG_SUSPEND
strncmp(str, const, len) is error-prone. We had better use newly introduced str_has_prefix() instead of it. Signed-off-by: Chuhong Yuan <hslester96@gmail.com> --- kernel/power/hibernate.c | 8 ++++---- kernel/power/main.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-)