]> git.baikalelectronics.ru Git - kernel.git/commit
Merge tag 'fs.fixes.v6.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 24 Aug 2022 02:17:26 +0000 (19:17 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 24 Aug 2022 02:17:26 +0000 (19:17 -0700)
commit233d6f01701a06087ee98e5ee16b8e96cf9210b5
tree34a9ca266fd12ebec79d9c0027e607a8782a5d83
parent141bb61e007f0b76d42bdaf112d4fff64baf8657
parent064c062a2c57bdcba2606619e02a2c5d89de7f43
Merge tag 'fs.fixes.v6.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/idmapping

Pull file_remove_privs() fix from Christian Brauner:
 "As part of Stefan's and Jens' work to add async buffered write
  support to xfs we refactored file_remove_privs() and added
  __file_remove_privs() to avoid calling __remove_privs() when
  IOCB_NOWAIT is passed.

  While debugging a recent performance regression report I found that
  during review we missed that commit 996004a4af53 ("fs: add
  __remove_file_privs() with flags parameter") accidently changed
  behavior when dentry_needs_remove_privs() returns zero.

  Before the commit it would still call inode_has_no_xattr() setting
  the S_NOSEC bit and thereby avoiding even calling into
  dentry_needs_remove_privs() the next time this function is called.
  After that commit inode_has_no_xattr() would only be called if
  __remove_privs() had to be called.

  Restore the old behavior. This is likely the cause of the performance
  regression"

* tag 'fs.fixes.v6.0-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/idmapping:
  fs: __file_remove_privs(): restore call to inode_has_no_xattr()