Re: [PATCH v6 3/4] scatterlist: add sgl_compare_sgl() function

David Disseldorp
2021-01-19T12:07:17Z

On Mon, 18 Jan 2021 20:04:20 -0500, Douglas Gilbert wrote:

> >> +bool sgl_compare_sgl(struct scatterlist *x_sgl, unsigned int x_nents, off_t x_skip,
> >> + struct scatterlist *y_sgl, unsigned int y_nents, off_t y_skip,
> >> + size_t n_bytes);
> >> +
> >> +bool sgl_compare_sgl_idx(struct scatterlist *x_sgl, unsigned int x_nents, off_t x_skip,
> >> + struct scatterlist *y_sgl, unsigned int y_nents, off_t y_skip,
> >> + size_t n_bytes, size_t *miscompare_idx);
> >
> >
> > This patch looks good and works fine as a replacement for
> > compare_and_write_do_cmp(). One minor suggestion would be to name it
> > sgl_equal() or similar, to perhaps better reflect the bool return and
> > avoid memcmp() confusion. Either way:
> > Reviewed-by: David Disseldorp <ddiss@suse.de>
>
> Thanks. NVMe calls the command that does this Compare and SCSI uses
> COMPARE AND WRITE (and VERIFY(BYTCHK=1) ) but "equal" is fine with me.
> There will be another patchset version (at least) so there is time
> to change.
>
> Do you want:
> - sgl_equal(...), or
> - sgl_equal_sgl(...) ?

I'd probably prefer the former as it's shorter, but I don't feel
strongly about it. The latter would make sense if you expect sgl compare
helpers for other buffer types.

Cheers, David