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@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...