Subject: bug#21460: Race condition in tests/tail-2/assert.sh

From: Pádraig Brady <[email-masked]>
Date: Sat, 12 Sep 2015 03:22:12 +0100

On 12/09/15 02:09, Paul Eggert wrote:
> Pádraig Brady wrote:
>> +  else if (new_stats.st_nlink == 0) /* XXX: what about multi-linked files.  */
> 
> That comment was my thought exactly.  It appears to be a kernel bug that really 
> needs to get fixed in the kernel; there just doesn't seem to be a reliable 
> workaround in user space.

I double checked with kernel guys, and Al Viro
essentially said the inode and directory operations are independent.
https://lkml.org/lkml/2015/9/11/790

So we probably need to handle the IN_DELETE event
on the directory to cater for this race, as done in:
https://lists.gnu.org/archive/html/coreutils/2015-07/msg00015.html

cheers,
Pádraig.