On Wed, Apr 05, 2017 at 03:32:30PM +0300, Amir Goldstein wrote: > On Wed, Apr 5, 2017 at 3:30 PM, David Sterba <dsterba@xxxxxxx> wrote: > > On Wed, Apr 05, 2017 at 11:53:41AM +0100, David Howells wrote: > >> I've added a test to xfstests that exercises the new statx syscall. However, > >> it fails on btrfs: > >> > >> Test statx on a directory > >> +[!] stx_nlink differs, 1 != 2 > >> +Failed > >> +stat_test failed > >> > >> because a new directory it creates has an nlink of 1, not 2. Is this a case > >> of my making an incorrect assumption or is it an fs bug? > > > > Afaik nlink == 1 means that there's no accounting of subdirectories, and > > it's a valid value. The 'find' utility can use nlink to optimize > > directory traversal but otherwise I'm not aware of other usage. > > > > All directories in btrfs have nlink == 1. > > FYI, > > Overlayfs uses nlink = 1 for merge dirs to silence 'find' et al. > Ext4 uses nlink = 1 for directories with more than 32K subdirs > (EXT4_FEATURE_RO_COMPAT_DIR_NLINK). > > But in both those fs newly created directories will have nlink = 2. Is there a conclusion on this? Seems the test should be updated accordingly? Thanks, Eryu