On Mon, Jul 23, 2018 at 8:04 AM, Kamil Dudka <kdu...@redhat.com> wrote: > > > I am pretty sure this is caused by stat() returning st_ino==0. There is > a (private) bug in Red Hat Bugzilla about find(1) crashing on the same > assertion failure while traversing an Azure CIFS file system. In that > case it was confirmed by strace that stat() returning st_ino==0 is the > actual cause of the crash. However, I considered it to be rather a bug > in the file system implementation, not in the find(1) utility.
I'd mostly agree. The POSIX spec requires that the (st_ino, st_dev) combination be unique:- > The st_ino and st_dev fields taken together uniquely identify the file within > the system. The blkcnt_t, blksize_t, dev_t, ino_t, mode_t, nlink_t, uid_t, > gid_t, off_t, and time_t types shall be defined as described in > <sys/types.h>. The timespec structure may be defined as described in > <time.h>. Times shall be given in seconds since the Epoch. Find (for example in the -samefile test) relies on this behaviour. However, if only one file on the whole system has st_ino==0, this uniqueness condition still holds. So by itself, st_ino==0 may still be standard-conforming. James.