On Sat, Jun 17, 2017 at 02:08:14PM +0200, Christoph Hellwig wrote: > On Fri, Jun 16, 2017 at 10:28:28PM +0900, Linus Torvalds wrote: > > Hmm. The *traditional* reason for this particular 'find' oddity is > > that find has an optimization which will look at the nlink count of a > > directory to decide how many subdirectories it can have. > > It looks like sysfs maintains i_nlink properly as far as I can tell. > But I noticed another things that's even more weird: > > root@testvm:~/nvmetcli# find /sys -name uuid > root@testvm:~/nvmetcli# find /sys -name uuid > /sys/devices/virtual/nvme-fabrics/ctl/nvme2/nvme2n1/uuid > > so just repeating the find a second time makes it work! Looks like > there is some sort of lazy population scheme in sysfs.. There is a lazy population scheme in sysfs, but that means that things are only populated in memory when we actually look for them, not the second time around only :) I just tried this on my laptop which does have a nvme block device in it, and it worked just fine both times. As Linus said, a strace would be great. thanks, greg k-h