[PATCH v2] lib: sbi: Fix bug in strncmp function

Bin Meng bmeng.cn at gmail.com
Thu Aug 5 02:18:46 PDT 2021


On Thu, Aug 5, 2021 at 4:46 PM Andreas Schwab <schwab at linux-m68k.org> wrote:
>
> On Aug 05 2021, Bin Meng wrote:
>
> > Hi Dong,
> >
> > On Thu, Jul 29, 2021 at 12:23 AM Dong Du <Dd_nirvana at sjtu.edu.cn> wrote:
> >>
> >> No need to compare characters when the count turns to 0.
> >> Fix the issue in sbi_strncmp.
> >>
> >> Signed-off-by: Dong Du <Dd_nirvana at sjtu.edu.cn>
> >> ---
> >>  lib/sbi/sbi_string.c | 4 ++++
> >>  1 file changed, 4 insertions(+)
> >>
> >> diff --git a/lib/sbi/sbi_string.c b/lib/sbi/sbi_string.c
> >> index 7805ba4..c87bce9 100644
> >> --- a/lib/sbi/sbi_string.c
> >> +++ b/lib/sbi/sbi_string.c
> >> @@ -33,6 +33,10 @@ int sbi_strncmp(const char *a, const char *b, size_t count)
> >>         for (; count > 0 && *a == *b && *a != '\0'; a++, b++, count--)
> >>                 ;
> >>
> >> +       /* No difference till the end */
> >> +       if (!count)
> >> +               return 0;
> >> +
> >>         return *a - *b;
> >>  }
> >>
> >
> > Your original patch is also needed: "strncmp should return 0 when the
> > count is 0"
>
> Which this patch duly implements.

Ah, yes. Maybe we should update the comment to make it clear.

Anyway:
Reviewed-by: Bin Meng <bmeng.cn at gmail.com>



More information about the opensbi mailing list