aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruen@suse.de>2009-12-17 21:24:29 -0500
committerEric Paris <eparis@redhat.com>2010-07-28 09:58:59 -0400
commit88380fe66e0ac22529f5426ab27d67da00ed2628 (patch)
tree2585cd0b8407263628696476be7aa4f5b7d24a1b
parentfanotify: split fanotify_remove_mark (diff)
downloadlinux-dev-88380fe66e0ac22529f5426ab27d67da00ed2628.tar.xz
linux-dev-88380fe66e0ac22529f5426ab27d67da00ed2628.zip
fanotify: remove fanotify.h declarations
fanotify_mark_validate functions are all needlessly declared in headers as static inlines. Instead just do the checks where they are needed for code readability. Signed-off-by: Andreas Gruenbacher <agruen@suse.de> Signed-off-by: Eric Paris <eparis@redhat.com>
-rw-r--r--fs/notify/fanotify/fanotify.h25
-rw-r--r--fs/notify/fanotify/fanotify_user.c25
-rw-r--r--include/linux/fanotify.h7
3 files changed, 10 insertions, 47 deletions
diff --git a/fs/notify/fanotify/fanotify.h b/fs/notify/fanotify/fanotify.h
index 5608783c6bca..4d5723a74a8e 100644
--- a/fs/notify/fanotify/fanotify.h
+++ b/fs/notify/fanotify/fanotify.h
@@ -6,31 +6,6 @@
extern const struct fsnotify_ops fanotify_fsnotify_ops;
-static inline bool fanotify_mark_flags_valid(unsigned int flags)
-{
- /* must be either and add or a remove */
- if (!(flags & (FAN_MARK_ADD | FAN_MARK_REMOVE)))
- return false;
-
- /* cannot be both add and remove */
- if ((flags & FAN_MARK_ADD) &&
- (flags & FAN_MARK_REMOVE))
- return false;
-
- /* cannot have more flags than we know about */
- if (flags & ~FAN_ALL_MARK_FLAGS)
- return false;
-
- return true;
-}
-
-static inline bool fanotify_mask_valid(__u32 mask)
-{
- if (mask & ~((__u32)FAN_ALL_INCOMING_EVENTS))
- return false;
- return true;
-}
-
static inline __u32 fanotify_outgoing_mask(__u32 mask)
{
return mask & FAN_ALL_OUTGOING_EVENTS;
diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
index 00628d3ce5a2..618867e4d30f 100644
--- a/fs/notify/fanotify/fanotify_user.c
+++ b/fs/notify/fanotify/fanotify_user.c
@@ -430,20 +430,6 @@ static int fanotify_add_inode_mark(struct fsnotify_group *group,
return 0;
}
-static bool fanotify_mark_validate_input(int flags,
- __u32 mask)
-{
- pr_debug("%s: flags=%x mask=%x\n", __func__, flags, mask);
-
- /* are flags valid of this operation? */
- if (!fanotify_mark_flags_valid(flags))
- return false;
- /* is the mask valid? */
- if (!fanotify_mask_valid(mask))
- return false;
- return true;
-}
-
/* fanotify syscalls */
SYSCALL_DEFINE3(fanotify_init, unsigned int, flags, unsigned int, event_f_flags,
unsigned int, priority)
@@ -505,7 +491,16 @@ SYSCALL_DEFINE(fanotify_mark)(int fanotify_fd, unsigned int flags,
if (mask & ((__u64)0xffffffff << 32))
return -EINVAL;
- if (!fanotify_mark_validate_input(flags, mask))
+ if (flags & ~FAN_ALL_MARK_FLAGS)
+ return -EINVAL;
+ switch (flags & (FAN_MARK_ADD | FAN_MARK_REMOVE)) {
+ case FAN_MARK_ADD:
+ case FAN_MARK_REMOVE:
+ break;
+ default:
+ return -EINVAL;
+ }
+ if (mask & ~(FAN_ALL_EVENTS | FAN_EVENT_ON_CHILD))
return -EINVAL;
filp = fget_light(fanotify_fd, &fput_needed);
diff --git a/include/linux/fanotify.h b/include/linux/fanotify.h
index 5ee22fb274e5..90e59b24fd04 100644
--- a/include/linux/fanotify.h
+++ b/include/linux/fanotify.h
@@ -47,13 +47,6 @@
FAN_CLOSE |\
FAN_OPEN)
-/*
- * All legal FAN bits userspace can request (although possibly not all
- * at the same time.
- */
-#define FAN_ALL_INCOMING_EVENTS (FAN_ALL_EVENTS |\
- FAN_EVENT_ON_CHILD)
-
#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS |\
FAN_Q_OVERFLOW)