Re: [PATCH v6 08/24] erofs: add namei functions

From: Gao Xiang
Date: Thu Aug 29 2019 - 07:29:28 EST


On Thu, Aug 29, 2019 at 03:28:38AM -0700, Christoph Hellwig wrote:
> On Fri, Aug 02, 2019 at 08:53:31PM +0800, Gao Xiang wrote:
> > +struct erofs_qstr {
> > + const unsigned char *name;
> > + const unsigned char *end;
> > +};
>
> Maybe erofs_name? The q in qstr stands for quick, because of the
> existing hash and len, which this doesn't really provide.
>
> Also I don't really see why you don't just pass the actual qstr and
> just document that dirnamecmp does not look at the hash and thus
> doesn't require it to be filled out.

q in erofs_qstr also means quick substring.
If you have some time to look into it more, it uses a prefixed
binary search algorithm (rather than linear traversal), which
provides similar proformance with hashed approach but no need
to save such hash field and it's natively sorted in alphabet
order.

Thanks,
Gao Xiang

>