]> 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)
commitd5d607c23ae1db5b08d133defe823a2c18849364
tree34a9ca266fd12ebec79d9c0027e607a8782a5d83
parentb75047d5eda47af471f0e1d1832780c95a548aa0
parentee7b6297f9a91ff6240ca7531403a31afc02e12b
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 7d6646b3c511 ("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()