]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Merge tag 'pull-qstr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 3 Oct 2025 18:14:02 +0000 (11:14 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 3 Oct 2025 18:14:02 +0000 (11:14 -0700)
Pull d_name audit update from Al Viro:
 "Simplifying ->d_name audits, easy part.

  Turn dentry->d_name into an anon union of const struct qsrt (d_name
  itself) and a writable alias (__d_name).

  With constification of some struct qstr * arguments of functions that
  get &dentry->d_name passed to them, that ends up with all
  modifications provably done only in fs/dcache.c (and a fairly small
  part of it).

  Any new places doing modifications will be easy to find - grep for
  __d_name will suffice"

* tag 'pull-qstr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  make it easier to catch those who try to modify ->d_name
  generic_ci_validate_strict_name(): constify name argument
  afs_dir_search: constify qstr argument
  afs_edit_dir_{add,remove}(): constify qstr argument
  exfat_find(): constify qstr argument
  security_dentry_init_security(): constify qstr argument

1  2 
fs/afs/dir_edit.c
fs/afs/internal.h
fs/dcache.c
include/linux/fs.h
include/linux/lsm_hook_defs.h
include/linux/security.h
security/security.c
security/selinux/hooks.c
security/smack/smack_lsm.c

Simple merge
index 444a3ea4fdf65f687509aebe7d74bed144bf22fd,1ce5deaf60193a220e498ef702c64305dad59e89..a45ae5c2ef8a8509e60a3e8d1b6e035b63ff860a
@@@ -1099,11 -1097,11 +1099,11 @@@ int afs_single_writepages(struct addres
  /*
   * dir_edit.c
   */
- extern void afs_edit_dir_add(struct afs_vnode *, struct qstr *, struct afs_fid *,
+ extern void afs_edit_dir_add(struct afs_vnode *, const struct qstr *, struct afs_fid *,
                             enum afs_edit_dir_reason);
- extern void afs_edit_dir_remove(struct afs_vnode *, struct qstr *, enum afs_edit_dir_reason);
+ extern void afs_edit_dir_remove(struct afs_vnode *, const struct qstr *, enum afs_edit_dir_reason);
 -void afs_edit_dir_update_dotdot(struct afs_vnode *vnode, struct afs_vnode *new_dvnode,
 -                              enum afs_edit_dir_reason why);
 +void afs_edit_dir_update(struct afs_vnode *vnode, const struct qstr *name,
 +                       struct afs_vnode *new_dvnode, enum afs_edit_dir_reason why);
  void afs_mkdir_init_dir(struct afs_vnode *dvnode, struct afs_vnode *parent_vnode);
  
  /*
diff --cc fs/dcache.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge