Ack: Re: [Natty][SRU][PATCH 0/2] eCryptfs: Clear i_nlink in rmdir

Herton Ronaldo Krzesinski herton.krzesinski at canonical.com
Fri Mar 2 18:04:04 UTC 2012


On Fri, Mar 02, 2012 at 05:08:31PM +0000, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
> 
> Note: This is a re-posting (I forgot to request it for Natty).
> I originally requested these for Lucid but they also apply cleanly
> and fix the issue for Natty too.
> 
> SRU Justification:
> 
> The IN_DELETE_SELF mask for inotify_add_watch indicates that an event
> should be emitted when the watched path is deleted, however, this does
> not happen on an eCryptfs mount. 
> 
> To reproduce:
> 
> mkdir upper lower
> sudo mount -t ecryptfs lower upper
> 
> and compile and run the following test program in the upper directory:
> 
> https://launchpadlibrarian.net/64953109/inotify.c
> 
> This test program hangs waiting for the IN_DELETE_SELF event that never
> occurs.
> 
> Fix: the following two patches address the bug. The first patch removes
> and an unnecessary d_delete from ecryptfs_rmdir.  The second patch clears
> the inode's i_nlink after a successful vfs_rmdir() on the lower directory.
> Without the second patch inode evict and destroy paths are missed and
> hence IN_DELETE_SELF inotify events do not occur.
> 
> With the fix, the test inotify program receives the IN_DELETE_SELF event
> and completes.
> 
> https://bugs.launchpad.net/bugs/723518
> 
> These patches are clean cherry picks of upstream commits
> 35ffa948b2f7bdf79e488cd496232935d095087a and
> 07850552b92b3637fa56767b5e460b4238014447
> 
> Tyler Hicks (2):
>   eCryptfs: Remove extra d_delete in ecryptfs_rmdir
>   eCryptfs: Clear i_nlink in rmdir
> 
>  fs/ecryptfs/inode.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
> 

-- 
[]'s
Herton




More information about the kernel-team mailing list