bug-findutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re:


From: James Youngman
Subject: Re:
Date: Mon, 23 Jul 2018 11:28:48 +0100

On Mon, Jul 23, 2018 at 8:04 AM, Kamil Dudka <address@hidden> 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.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]