1. 11 9月, 2019 2 次提交
    • C
      configfs: factor dirent removal into helpers · 1cf7a003
      Christoph Hellwig 提交于
      Lots of duplicated code that benefits from a little consolidation.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      1cf7a003
    • A
      configfs: fix a deadlock in configfs_symlink() · 351e5d86
      Al Viro 提交于
      Configfs abuses symlink(2).  Unlike the normal filesystems, it
      wants the target resolved at symlink(2) time, like link(2) would've
      done.  The problem is that ->symlink() is called with the parent
      directory locked exclusive, so resolving the target inside the
      ->symlink() is easily deadlocked.
      
      Short of really ugly games in sys_symlink() itself, all we can
      do is to unlock the parent before resolving the target and
      relock it after.  However, that invalidates the checks done
      by the caller of ->symlink(), so we have to
      	* check that dentry is still where it used to be
      (it couldn't have been moved, but it could've been unhashed)
      	* recheck that it's still negative (somebody else
      might've successfully created a symlink with the same name
      while we were looking the target up)
      	* recheck the permissions on the parent directory.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      351e5d86
  2. 09 9月, 2019 3 次提交
  3. 08 9月, 2019 5 次提交
  4. 07 9月, 2019 8 次提交
  5. 06 9月, 2019 14 次提交
  6. 05 9月, 2019 7 次提交
  7. 04 9月, 2019 1 次提交