|
@@ -165,8 +165,10 @@ static inline void fsnotify_access(struct file *file)
|
|
if (S_ISDIR(inode->i_mode))
|
|
if (S_ISDIR(inode->i_mode))
|
|
mask |= FS_IN_ISDIR;
|
|
mask |= FS_IN_ISDIR;
|
|
|
|
|
|
- fsnotify_parent(path, NULL, mask);
|
|
|
|
- fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
|
|
+ if (!(file->f_mode & FMODE_NONOTIFY)) {
|
|
|
|
+ fsnotify_parent(path, NULL, mask);
|
|
|
|
+ fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -181,8 +183,10 @@ static inline void fsnotify_modify(struct file *file)
|
|
if (S_ISDIR(inode->i_mode))
|
|
if (S_ISDIR(inode->i_mode))
|
|
mask |= FS_IN_ISDIR;
|
|
mask |= FS_IN_ISDIR;
|
|
|
|
|
|
- fsnotify_parent(path, NULL, mask);
|
|
|
|
- fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
|
|
+ if (!(file->f_mode & FMODE_NONOTIFY)) {
|
|
|
|
+ fsnotify_parent(path, NULL, mask);
|
|
|
|
+ fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -197,8 +201,10 @@ static inline void fsnotify_open(struct file *file)
|
|
if (S_ISDIR(inode->i_mode))
|
|
if (S_ISDIR(inode->i_mode))
|
|
mask |= FS_IN_ISDIR;
|
|
mask |= FS_IN_ISDIR;
|
|
|
|
|
|
- fsnotify_parent(path, NULL, mask);
|
|
|
|
- fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
|
|
+ if (!(file->f_mode & FMODE_NONOTIFY)) {
|
|
|
|
+ fsnotify_parent(path, NULL, mask);
|
|
|
|
+ fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|
|
@@ -214,8 +220,10 @@ static inline void fsnotify_close(struct file *file)
|
|
if (S_ISDIR(inode->i_mode))
|
|
if (S_ISDIR(inode->i_mode))
|
|
mask |= FS_IN_ISDIR;
|
|
mask |= FS_IN_ISDIR;
|
|
|
|
|
|
- fsnotify_parent(path, NULL, mask);
|
|
|
|
- fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
|
|
+ if (!(file->f_mode & FMODE_NONOTIFY)) {
|
|
|
|
+ fsnotify_parent(path, NULL, mask);
|
|
|
|
+ fsnotify(inode, mask, path, FSNOTIFY_EVENT_PATH, NULL, 0);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|