diff options
| author | Miklos Szeredi <mszeredi@redhat.com> | 2016-07-29 06:05:24 -0400 |
|---|---|---|
| committer | Miklos Szeredi <mszeredi@redhat.com> | 2016-07-29 06:05:24 -0400 |
| commit | dbc816d05ddcfb189af8784d04fc84c812db3747 (patch) | |
| tree | 30849c8e9451fb8031a2bce60eccc74cb807c605 /fs/overlayfs | |
| parent | 76bc8e2843b66f8205026365966b49ec6da39ae7 (diff) | |
ovl: clear nlink on rmdir
To make delete notification work on fa/inotify.
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/overlayfs')
| -rw-r--r-- | fs/overlayfs/dir.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/overlayfs/dir.c b/fs/overlayfs/dir.c index 8f95c213c0c6..ddda948109d3 100644 --- a/fs/overlayfs/dir.c +++ b/fs/overlayfs/dir.c | |||
| @@ -696,8 +696,12 @@ static int ovl_do_remove(struct dentry *dentry, bool is_dir) | |||
| 696 | else | 696 | else |
| 697 | err = ovl_remove_and_whiteout(dentry, is_dir); | 697 | err = ovl_remove_and_whiteout(dentry, is_dir); |
| 698 | revert_creds(old_cred); | 698 | revert_creds(old_cred); |
| 699 | if (!err && !is_dir) | 699 | if (!err) { |
| 700 | drop_nlink(dentry->d_inode); | 700 | if (is_dir) |
| 701 | clear_nlink(dentry->d_inode); | ||
| 702 | else | ||
| 703 | drop_nlink(dentry->d_inode); | ||
| 704 | } | ||
| 701 | out_drop_write: | 705 | out_drop_write: |
| 702 | ovl_drop_write(dentry); | 706 | ovl_drop_write(dentry); |
| 703 | out: | 707 | out: |
