[PATCH] tmpfs: Decrement i_nlink correctly in shmem_rmdir()
authorSergey Vlasov <[email protected]>
Mon, 12 Jun 2006 20:53:23 +0000 (21:53 +0100)
committerLinus Torvalds <[email protected]>
Mon, 12 Jun 2006 21:29:04 +0000 (14:29 -0700)
shmem_rmdir() must undo the increment of i_nlink done in
shmem_get_inode() for directories, otherwise at least
IN_DELETE_SELF inotify event generation is broken.

Signed-off-by: Sergey Vlasov <[email protected]>
Signed-off-by: Hugh Dickins <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
mm/shmem.c

index 73f7a9dfcd371c5b4e4c97abab651dd6bfd73da6..1e43c8a865ba76924170f34471f32ad5a3cbdfdb 100644 (file)
@@ -1780,6 +1780,7 @@ static int shmem_rmdir(struct inode *dir, struct dentry *dentry)
        if (!simple_empty(dentry))
                return -ENOTEMPTY;
 
+       dentry->d_inode->i_nlink--;
        dir->i_nlink--;
        return shmem_unlink(dir, dentry);
 }