[PATCH v2] erofs-utils: update i_nlink stat for directories

Li GuiFu bluce.lee at aliyun.com
Sat Dec 5 20:22:13 AEDT 2020



On 2020/12/5 17:16, Gao Xiang wrote:
> From: Gao Xiang <hsiangkao at aol.com>
> 
> Previously, nlink of directories was treated as 1 for simplicity.
> 
> Since st_nlink for dirs is actually not well defined, nlink=1 seems
> to pacify `find' (even without -noleaf option) and other utilities.
> AFAICT, isofs, romfs and cramfs always set it to 1, Overlayfs sets
> it to 1 conditionally, btrfs[1], ceph[2] and FUSE client historically
> set it to 1.
> 
> The convention under unix is that it's # of subdirs including "."
> and "..". This patch tries to follow such convention if possible to
> optimize `find' performance since it's not quite hard for local fs.
> 
> [1] https://lore.kernel.org/r/20100124003336.GP23006@think
> [2] https://lore.kernel.org/r/20180521092729.17470-1-lhenriques@suse.com
> Signed-off-by: Gao Xiang <hsiangkao at aol.com>
> ---
> v1: https://lore.kernel.org/r/20201205055732.14276-1-hsiangkao@aol.com
> changes since v1:
>  - update a DBG_BUGON statement suggestted by Guifu.
> 
>  lib/inode.c | 33 +++++++++++++++++++++++++++++----
>  1 file changed, 29 insertions(+), 4 deletions(-)
> 

It looks good
Reviewed-by: Li Guifu <bluce.lee at aliyun.com>
Thanks,


More information about the Linux-erofs mailing list