On 02/27/2012 09:49 AM, Herton Ronaldo Krzesinski wrote:
On Mon, Feb 27, 2012 at 03:56:16PM +0000, Colin King wrote:
From: Colin Ian King<firstname.lastname@example.org>
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.
mkdir upper lower
sudo mount -t ecryptfs lower upper
and compile and run the following test program in the upper directory:
This test program hangs waiting for the IN_DELETE_SELF event that never
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
These patches are clean cherry picks of upstream commits
Ack, these shas should go to the patch changelog (cherry-picked from...)
Tyler Hicks (2):
eCryptfs: Remove extra d_delete in ecryptfs_rmdir
eCryptfs: Clear i_nlink in rmdir