Merge tag 'fsnotify_for_v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 16 Jun 2018 20:06:18 +0000 (05:06 +0900)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 16 Jun 2018 20:06:18 +0000 (05:06 +0900)
Pull fsnotify updates from Jan Kara:
 "fsnotify cleanups unifying handling of different watch types.

  This is the shortened fsnotify series from Amir with the last five
  patches pulled out. Amir has modified those patches to not change
  struct inode but obviously it's too late for those to go into this
  merge window"

* tag 'fsnotify_for_v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
  fsnotify: add fsnotify_add_inode_mark() wrappers
  fanotify: generalize fanotify_should_send_event()
  fsnotify: generalize send_to_group()
  fsnotify: generalize iteration of marks by object type
  fsnotify: introduce marks iteration helpers
  fsnotify: remove redundant arguments to handle_event()
  fsnotify: use type id to identify connector object type

1  2 
kernel/audit_watch.c

diff --combined kernel/audit_watch.c
index f1ba88994508baacf34fa8d8d04e57ec33e8cec5,439a3a01368c7c4dfdda49be4a61cc1c8cf1425f..c17c0c268436807211cc411f888c8bdffd9da8f4
@@@ -160,7 -160,7 +160,7 @@@ static struct audit_parent *audit_init_
  
        fsnotify_init_mark(&parent->mark, audit_watch_group);
        parent->mark.mask = AUDIT_FS_WATCH;
-       ret = fsnotify_add_mark(&parent->mark, inode, NULL, 0);
+       ret = fsnotify_add_inode_mark(&parent->mark, inode, 0);
        if (ret < 0) {
                audit_free_parent(parent);
                return ERR_PTR(ret);
@@@ -274,7 -274,7 +274,7 @@@ static void audit_update_watch(struct a
                /* If the update involves invalidating rules, do the inode-based
                 * filtering now, so we don't omit records. */
                if (invalidating && !audit_dummy_context())
 -                      audit_filter_inodes(current, current->audit_context);
 +                      audit_filter_inodes(current, audit_context());
  
                /* updating ino will likely change which audit_hash_list we
                 * are on so we need a new watch for the new list */
@@@ -472,12 -472,11 +472,11 @@@ void audit_remove_watch_rule(struct aud
  /* Update watch data in audit rules based on fsnotify events. */
  static int audit_watch_handle_event(struct fsnotify_group *group,
                                    struct inode *to_tell,
-                                   struct fsnotify_mark *inode_mark,
-                                   struct fsnotify_mark *vfsmount_mark,
                                    u32 mask, const void *data, int data_type,
                                    const unsigned char *dname, u32 cookie,
                                    struct fsnotify_iter_info *iter_info)
  {
+       struct fsnotify_mark *inode_mark = fsnotify_iter_inode_mark(iter_info);
        const struct inode *inode;
        struct audit_parent *parent;