From: Roberto Sassu <roberto.sassu@huawei.com>
To: Heiko Carstens <hca@linux.ibm.com>
Cc: "gor@linux.ibm.com" <gor@linux.ibm.com>,
"borntraeger@de.ibm.com" <borntraeger@de.ibm.com>,
"linux-s390@vger.kernel.org" <linux-s390@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH] s390: Fix strrchr() implementation
Date: Tue, 5 Oct 2021 11:30:02 +0000 [thread overview]
Message-ID: <7eeccf08aed44453959763629852d58e@huawei.com> (raw)
In-Reply-To: <YVwzUbHcZkHQT0K4@osiris>
> From: Heiko Carstens [mailto:hca@linux.ibm.com]
> Sent: Tuesday, October 5, 2021 1:13 PM
> On Tue, Oct 05, 2021 at 09:26:21AM +0200, Roberto Sassu wrote:
> > Access the string at len - 1 instead of len.
> >
> > Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
> > ---
> > arch/s390/lib/string.c | 12 ++++++------
> > 1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/arch/s390/lib/string.c b/arch/s390/lib/string.c
> > index cfcdf76d6a95..162a391788ad 100644
> > --- a/arch/s390/lib/string.c
> > +++ b/arch/s390/lib/string.c
> > @@ -261,12 +261,12 @@ char *strrchr(const char *s, int c)
> > {
> > size_t len = __strend(s) - s;
> >
> > - if (len)
> > - do {
> > - if (s[len] == (char) c)
> > - return (char *) s + len;
> > - } while (--len > 0);
> > - return NULL;
> > + if (len)
> > + do {
> > + if (s[len - 1] == (char) c)
> > + return (char *) s + len - 1;
> > + } while (--len > 0);
> > + return NULL;
>
> You missed to tell what this is supposed to fix. The patch however is
> incorrect: the terminating null byte is considered part of the
> string. With your patch strrchr(somestring, 0) would not work
> correctly anymore.
Hi Heiko
yes, sorry. I didn't consider that.
> However our strrchr implementation is indeed broken, since for an
> empty string and searching for the null byte would incorrectly return
> NULL. Luckily there is not a single invocation in the kernel which
> doing that.
Ok. However, the main reason of this patch is that s[0] is not
evaluated, when len > 0. I will provide a new version of the patch.
Thanks
Roberto
HUAWEI TECHNOLOGIES Duesseldorf GmbH, HRB 56063
Managing Director: Li Peng, Zhong Ronghua
prev parent reply other threads:[~2021-10-05 11:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-05 7:26 [PATCH] s390: Fix strrchr() implementation Roberto Sassu
2021-10-05 11:13 ` Heiko Carstens
2021-10-05 11:30 ` Roberto Sassu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7eeccf08aed44453959763629852d58e@huawei.com \
--to=roberto.sassu@huawei.com \
--cc=borntraeger@de.ibm.com \
--cc=gor@linux.ibm.com \
--cc=hca@linux.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox