[PATCH 0/5] vfs: track the dentry name length in name_snapshot

Al Viro viro at zeniv.linux.org.uk
Fri Apr 26 18:51:59 UTC 2019


On Fri, Apr 26, 2019 at 02:28:42PM -0400, Jeff Layton wrote:
> name_snapshot will snapshot the current contents of a dentry's name for
> later consumption. Several of those users end up needing to do a strlen
> on the resulting string later. We already have that info in the original
> dentry though, so we can do this a bit more efficiently by stuffing the
> name length into the name_snapshot as well.
> 
> This is not well tested, but it built and booted. Do we have a testsuite
> that exercises the fsnotify code, in particular?

FWIW, my variant sits in vfs.git at work.dcache.

> Jeff Layton (5):
>   dcache: track the length of the string in struct name_snapshot
>   fsnotify: have fsnotify_move take a struct qstr instead of a string
>   fsnotify: have fsnotify() take a qstr instead of a string
>   fsnotify: change ->handle_event and send_to_group to take a qstr
>   audit: fix audit_compare_dname_path to take a qstr
> 
>  fs/dcache.c                          | 11 +++++++----
>  fs/debugfs/inode.c                   |  2 +-
>  fs/kernfs/file.c                     |  6 ++++--
>  fs/namei.c                           |  4 ++--
>  fs/notify/dnotify/dnotify.c          |  2 +-
>  fs/notify/fanotify/fanotify.c        |  2 +-
>  fs/notify/fsnotify.c                 |  8 ++++----
>  fs/notify/inotify/inotify.h          |  2 +-
>  fs/notify/inotify/inotify_fsnotify.c |  6 +++---
>  fs/overlayfs/export.c                |  2 +-
>  include/linux/dcache.h               |  2 +-
>  include/linux/fsnotify.h             | 17 ++++++++---------
>  include/linux/fsnotify_backend.h     |  6 +++---
>  kernel/audit.h                       |  3 ++-
>  kernel/audit_fsnotify.c              |  5 +++--
>  kernel/audit_tree.c                  |  2 +-
>  kernel/audit_watch.c                 |  4 ++--
>  kernel/auditfilter.c                 |  7 ++++---
>  kernel/auditsc.c                     |  7 +++----
>  19 files changed, 52 insertions(+), 46 deletions(-)

 fs/dcache.c                          | 14 ++++++--------
 fs/debugfs/inode.c                   |  2 +-
 fs/kernfs/file.c                     |  6 ++++--
 fs/namei.c                           |  4 ++--
 fs/notify/dnotify/dnotify.c          |  2 +-
 fs/notify/fanotify/fanotify.c        |  2 +-
 fs/notify/fsnotify.c                 |  8 ++++----
 fs/notify/inotify/inotify.h          |  2 +-
 fs/notify/inotify/inotify_fsnotify.c |  6 +++---
 fs/overlayfs/export.c                |  2 +-
 include/linux/dcache.h               |  2 +-
 include/linux/fsnotify.h             | 10 +++++-----
 include/linux/fsnotify_backend.h     |  6 +++---
 kernel/audit.h                       |  2 +-
 kernel/audit_fsnotify.c              |  2 +-
 kernel/audit_tree.c                  |  2 +-
 kernel/audit_watch.c                 |  4 ++--
 kernel/auditfilter.c                 |  6 +++---
 kernel/auditsc.c                     |  4 ++--
 19 files changed, 43 insertions(+), 43 deletions(-)

here...




More information about the Linux-audit mailing list