summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruen@suse.de>2009-12-17 21:24:28 -0500
committerEric Paris <eparis@redhat.com>2010-07-28 09:58:58 -0400
commitc6223f464927cab9f4b10169b78c51d84228faf8 (patch)
tree464c653708f753a4969658929eaf223d938cd30b
parent88826276dcaf4cef9cc7c2695ff15c6d20d4a74d (diff)
downloadlinux-3.10-c6223f464927cab9f4b10169b78c51d84228faf8.tar.gz
linux-3.10-c6223f464927cab9f4b10169b78c51d84228faf8.tar.bz2
linux-3.10-c6223f464927cab9f4b10169b78c51d84228faf8.zip
fanotify: remove fanotify_update_mark
fanotify_update_mark() doesn't do much useful; remove it. Signed-off-by: Andreas Gruenbacher <agruen@suse.de> Signed-off-by: Eric Paris <eparis@redhat.com>
-rw-r--r--fs/notify/fanotify/fanotify_user.c31
1 files changed, 10 insertions, 21 deletions
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
index cb7a0c5ff85..0f25fc20a6a 100644
--- a/fs/notify/fanotify/fanotify_user.c
+++ b/fs/notify/fanotify/fanotify_user.c
@@ -468,26 +468,6 @@ out:
return PTR_ERR(fsn_mark);
}
-static int fanotify_update_mark(struct fsnotify_group *group,
- struct inode *inode, struct vfsmount *mnt,
- int flags, __u32 mask)
-{
- pr_debug("%s: group=%p inode=%p mnt=%p flags=%x mask=%x\n",
- __func__, group, inode, mnt, flags, mask);
-
- BUG_ON(inode && mnt);
- BUG_ON(!inode && !mnt);
-
- if (flags & FAN_MARK_ADD)
- fanotify_add_mark(group, inode, mnt, flags, mask);
- else if (flags & FAN_MARK_REMOVE)
- fanotify_remove_mark(group, inode, mnt, flags, mask);
- else
- BUG();
-
- return 0;
-}
-
static bool fanotify_mark_validate_input(int flags,
__u32 mask)
{
@@ -583,7 +563,16 @@ SYSCALL_DEFINE(fanotify_mark)(int fanotify_fd, unsigned int flags,
group = filp->private_data;
/* create/update an inode mark */
- ret = fanotify_update_mark(group, inode, NULL, flags, mask);
+ switch (flags & (FAN_MARK_ADD | FAN_MARK_REMOVE)) {
+ case FAN_MARK_ADD:
+ ret = fanotify_add_mark(group, inode, NULL, flags, mask);
+ break;
+ case FAN_MARK_REMOVE:
+ ret = fanotify_remove_mark(group, inode, NULL, flags, mask);
+ break;
+ default:
+ ret = -EINVAL;
+ }
path_put(&path);
fput_and_out: