Commit b1362edf authored by Jan Kara's avatar Jan Kara

fsnotify: Remove fsnotify_find_{inode|vfsmount}_mark()

These are very thin wrappers, just remove them. Drop
fs/notify/vfsmount_mark.c as it is empty now.
Reviewed-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
Reviewed-by: default avatarAmir Goldstein <amir73il@gmail.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent 2e37c6ca
obj-$(CONFIG_FSNOTIFY) += fsnotify.o notification.o group.o inode_mark.o \ obj-$(CONFIG_FSNOTIFY) += fsnotify.o notification.o group.o inode_mark.o \
mark.o vfsmount_mark.o fdinfo.o mark.o fdinfo.o
obj-y += dnotify/ obj-y += dnotify/
obj-y += inotify/ obj-y += inotify/
......
...@@ -157,7 +157,7 @@ void dnotify_flush(struct file *filp, fl_owner_t id) ...@@ -157,7 +157,7 @@ void dnotify_flush(struct file *filp, fl_owner_t id)
if (!S_ISDIR(inode->i_mode)) if (!S_ISDIR(inode->i_mode))
return; return;
fsn_mark = fsnotify_find_inode_mark(dnotify_group, inode); fsn_mark = fsnotify_find_mark(&inode->i_fsnotify_marks, dnotify_group);
if (!fsn_mark) if (!fsn_mark)
return; return;
dn_mark = container_of(fsn_mark, struct dnotify_mark, fsn_mark); dn_mark = container_of(fsn_mark, struct dnotify_mark, fsn_mark);
...@@ -313,7 +313,7 @@ int fcntl_dirnotify(int fd, struct file *filp, unsigned long arg) ...@@ -313,7 +313,7 @@ int fcntl_dirnotify(int fd, struct file *filp, unsigned long arg)
mutex_lock(&dnotify_group->mark_mutex); mutex_lock(&dnotify_group->mark_mutex);
/* add the new_fsn_mark or find an old one. */ /* add the new_fsn_mark or find an old one. */
fsn_mark = fsnotify_find_inode_mark(dnotify_group, inode); fsn_mark = fsnotify_find_mark(&inode->i_fsnotify_marks, dnotify_group);
if (fsn_mark) { if (fsn_mark) {
dn_mark = container_of(fsn_mark, struct dnotify_mark, fsn_mark); dn_mark = container_of(fsn_mark, struct dnotify_mark, fsn_mark);
spin_lock(&fsn_mark->lock); spin_lock(&fsn_mark->lock);
......
...@@ -533,7 +533,8 @@ static int fanotify_remove_vfsmount_mark(struct fsnotify_group *group, ...@@ -533,7 +533,8 @@ static int fanotify_remove_vfsmount_mark(struct fsnotify_group *group,
int destroy_mark; int destroy_mark;
mutex_lock(&group->mark_mutex); mutex_lock(&group->mark_mutex);
fsn_mark = fsnotify_find_vfsmount_mark(group, mnt); fsn_mark = fsnotify_find_mark(&real_mount(mnt)->mnt_fsnotify_marks,
group);
if (!fsn_mark) { if (!fsn_mark) {
mutex_unlock(&group->mark_mutex); mutex_unlock(&group->mark_mutex);
return -ENOENT; return -ENOENT;
...@@ -562,7 +563,7 @@ static int fanotify_remove_inode_mark(struct fsnotify_group *group, ...@@ -562,7 +563,7 @@ static int fanotify_remove_inode_mark(struct fsnotify_group *group,
int destroy_mark; int destroy_mark;
mutex_lock(&group->mark_mutex); mutex_lock(&group->mark_mutex);
fsn_mark = fsnotify_find_inode_mark(group, inode); fsn_mark = fsnotify_find_mark(&inode->i_fsnotify_marks, group);
if (!fsn_mark) { if (!fsn_mark) {
mutex_unlock(&group->mark_mutex); mutex_unlock(&group->mark_mutex);
return -ENOENT; return -ENOENT;
...@@ -578,7 +579,7 @@ static int fanotify_remove_inode_mark(struct fsnotify_group *group, ...@@ -578,7 +579,7 @@ static int fanotify_remove_inode_mark(struct fsnotify_group *group,
if (destroy_mark) if (destroy_mark)
fsnotify_free_mark(fsn_mark); fsnotify_free_mark(fsn_mark);
/* matches the fsnotify_find_inode_mark() */ /* matches the fsnotify_find_mark() */
fsnotify_put_mark(fsn_mark); fsnotify_put_mark(fsn_mark);
return 0; return 0;
...@@ -646,7 +647,8 @@ static int fanotify_add_vfsmount_mark(struct fsnotify_group *group, ...@@ -646,7 +647,8 @@ static int fanotify_add_vfsmount_mark(struct fsnotify_group *group,
__u32 added; __u32 added;
mutex_lock(&group->mark_mutex); mutex_lock(&group->mark_mutex);
fsn_mark = fsnotify_find_vfsmount_mark(group, mnt); fsn_mark = fsnotify_find_mark(&real_mount(mnt)->mnt_fsnotify_marks,
group);
if (!fsn_mark) { if (!fsn_mark) {
fsn_mark = fanotify_add_new_mark(group, NULL, mnt); fsn_mark = fanotify_add_new_mark(group, NULL, mnt);
if (IS_ERR(fsn_mark)) { if (IS_ERR(fsn_mark)) {
...@@ -683,7 +685,7 @@ static int fanotify_add_inode_mark(struct fsnotify_group *group, ...@@ -683,7 +685,7 @@ static int fanotify_add_inode_mark(struct fsnotify_group *group,
return 0; return 0;
mutex_lock(&group->mark_mutex); mutex_lock(&group->mark_mutex);
fsn_mark = fsnotify_find_inode_mark(group, inode); fsn_mark = fsnotify_find_mark(&inode->i_fsnotify_marks, group);
if (!fsn_mark) { if (!fsn_mark) {
fsn_mark = fanotify_add_new_mark(group, inode, NULL); fsn_mark = fanotify_add_new_mark(group, inode, NULL);
if (IS_ERR(fsn_mark)) { if (IS_ERR(fsn_mark)) {
......
...@@ -24,10 +24,6 @@ extern struct srcu_struct fsnotify_mark_srcu; ...@@ -24,10 +24,6 @@ extern struct srcu_struct fsnotify_mark_srcu;
extern int fsnotify_compare_groups(struct fsnotify_group *a, extern int fsnotify_compare_groups(struct fsnotify_group *a,
struct fsnotify_group *b); struct fsnotify_group *b);
/* Find mark belonging to given group in the list of marks */
extern struct fsnotify_mark *fsnotify_find_mark(
struct fsnotify_mark_connector __rcu **connp,
struct fsnotify_group *group);
/* Destroy all marks connected via given connector */ /* Destroy all marks connected via given connector */
extern void fsnotify_destroy_marks(struct fsnotify_mark_connector __rcu **connp); extern void fsnotify_destroy_marks(struct fsnotify_mark_connector __rcu **connp);
/* run the list of all marks associated with inode and destroy them */ /* run the list of all marks associated with inode and destroy them */
......
...@@ -30,16 +30,6 @@ ...@@ -30,16 +30,6 @@
#include "../internal.h" #include "../internal.h"
/*
* given a group and inode, find the mark associated with that combination.
* if found take a reference to that mark and return it, else return NULL
*/
struct fsnotify_mark *fsnotify_find_inode_mark(struct fsnotify_group *group,
struct inode *inode)
{
return fsnotify_find_mark(&inode->i_fsnotify_marks, group);
}
/** /**
* fsnotify_unmount_inodes - an sb is unmounting. handle any watched inodes. * fsnotify_unmount_inodes - an sb is unmounting. handle any watched inodes.
* @sb: superblock being unmounted. * @sb: superblock being unmounted.
......
...@@ -506,7 +506,7 @@ static int inotify_update_existing_watch(struct fsnotify_group *group, ...@@ -506,7 +506,7 @@ static int inotify_update_existing_watch(struct fsnotify_group *group,
mask = inotify_arg_to_mask(arg); mask = inotify_arg_to_mask(arg);
fsn_mark = fsnotify_find_inode_mark(group, inode); fsn_mark = fsnotify_find_mark(&inode->i_fsnotify_marks, group);
if (!fsn_mark) if (!fsn_mark)
return -ENOENT; return -ENOENT;
......
/*
* Copyright (C) 2008 Red Hat, Inc., Eric Paris <eparis@redhat.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#include <linux/fs.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/mount.h>
#include <linux/mutex.h>
#include <linux/spinlock.h>
#include <linux/atomic.h>
#include <linux/fsnotify_backend.h>
#include "fsnotify.h"
/*
* given a group and vfsmount, find the mark associated with that combination.
* if found take a reference to that mark and return it, else return NULL
*/
struct fsnotify_mark *fsnotify_find_vfsmount_mark(struct fsnotify_group *group,
struct vfsmount *mnt)
{
struct mount *m = real_mount(mnt);
return fsnotify_find_mark(&m->mnt_fsnotify_marks, group);
}
...@@ -341,10 +341,10 @@ extern struct fsnotify_event *fsnotify_remove_first_event(struct fsnotify_group ...@@ -341,10 +341,10 @@ extern struct fsnotify_event *fsnotify_remove_first_event(struct fsnotify_group
/* Calculate mask of events for a list of marks */ /* Calculate mask of events for a list of marks */
extern void fsnotify_recalc_mask(struct fsnotify_mark_connector *conn); extern void fsnotify_recalc_mask(struct fsnotify_mark_connector *conn);
extern void fsnotify_init_mark(struct fsnotify_mark *mark, void (*free_mark)(struct fsnotify_mark *mark)); extern void fsnotify_init_mark(struct fsnotify_mark *mark, void (*free_mark)(struct fsnotify_mark *mark));
/* find (and take a reference) to a mark associated with group and inode */ /* Find mark belonging to given group in the list of marks */
extern struct fsnotify_mark *fsnotify_find_inode_mark(struct fsnotify_group *group, struct inode *inode); extern struct fsnotify_mark *fsnotify_find_mark(
/* find (and take a reference) to a mark associated with group and vfsmount */ struct fsnotify_mark_connector __rcu **connp,
extern struct fsnotify_mark *fsnotify_find_vfsmount_mark(struct fsnotify_group *group, struct vfsmount *mnt); struct fsnotify_group *group);
/* attach the mark to both the group and the inode */ /* attach the mark to both the group and the inode */
extern int fsnotify_add_mark(struct fsnotify_mark *mark, struct fsnotify_group *group, extern int fsnotify_add_mark(struct fsnotify_mark *mark, struct fsnotify_group *group,
struct inode *inode, struct vfsmount *mnt, int allow_dups); struct inode *inode, struct vfsmount *mnt, int allow_dups);
......
...@@ -391,7 +391,8 @@ static int tag_chunk(struct inode *inode, struct audit_tree *tree) ...@@ -391,7 +391,8 @@ static int tag_chunk(struct inode *inode, struct audit_tree *tree)
struct node *p; struct node *p;
int n; int n;
old_entry = fsnotify_find_inode_mark(audit_tree_group, inode); old_entry = fsnotify_find_mark(&inode->i_fsnotify_marks,
audit_tree_group);
if (!old_entry) if (!old_entry)
return create_chunk(inode, tree); return create_chunk(inode, tree);
......
...@@ -102,7 +102,7 @@ static inline struct audit_parent *audit_find_parent(struct inode *inode) ...@@ -102,7 +102,7 @@ static inline struct audit_parent *audit_find_parent(struct inode *inode)
struct audit_parent *parent = NULL; struct audit_parent *parent = NULL;
struct fsnotify_mark *entry; struct fsnotify_mark *entry;
entry = fsnotify_find_inode_mark(audit_watch_group, inode); entry = fsnotify_find_mark(&inode->i_fsnotify_marks, audit_watch_group);
if (entry) if (entry)
parent = container_of(entry, struct audit_parent, mark); parent = container_of(entry, struct audit_parent, mark);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment