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(a)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...