1. 28 May, 2016 2 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d102a56e
      Linus Torvalds authored
      Pull vfs fixes from Al Viro:
       "Followups to the parallel lookup work:
      
         - update docs
      
         - restore killability of the places that used to take ->i_mutex
           killably now that we have down_write_killable() merged
      
         - Additionally, it turns out that I missed a prerequisite for
           security_d_instantiate() stuff - ->getxattr() wasn't the only thing
           that could be called before dentry is attached to inode; with smack
           we needed the same treatment applied to ->setxattr() as well"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        switch ->setxattr() to passing dentry and inode separately
        switch xattr_handler->set() to passing dentry and inode separately
        restore killability of old mutex_lock_killable(&inode->i_mutex) users
        add down_write_killable_nested()
        update D/f/directory-locking
      d102a56e
    • Al Viro's avatar
      switch ->setxattr() to passing dentry and inode separately · 3767e255
      Al Viro authored
      smack ->d_instantiate() uses ->setxattr(), so to be able to call it before
      we'd hashed the new dentry and attached it to inode, we need ->setxattr()
      instances getting the inode as an explicit argument rather than obtaining
      it from dentry.
      
      Similar change for ->getxattr() had been done in commit ce23e640
      
      .  Unlike
      ->getxattr() (which is used by both selinux and smack instances of
      ->d_instantiate()) ->setxattr() is used only by smack one and unfortunately
      it got missed back then.
      Reported-by: default avatarSeung-Woo Kim <sw0312.kim@samsung.com>
      Tested-by: default avatarCasey Schaufler <casey@schaufler-ca.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      3767e255
  2. 27 May, 2016 38 commits