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

Anup Patel anup at brainfault.org
Sat Aug 7 03:18:36 PDT 2021


On Thu, Aug 5, 2021 at 2:49 PM Bin Meng <bmeng.cn at gmail.com> wrote:
>
> 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>

Looks good to me.

Reviewed-by: Anup Patel <anup.patel at wdc.com>

Applied this patch to the riscv/opensbi repo.

Thanks,
Anup

>
> --
> opensbi mailing list
> opensbi at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/opensbi



More information about the opensbi mailing list