1. 09 Dec, 2016 1 commit
  2. 08 Oct, 2016 1 commit
  3. 28 Sep, 2016 1 commit
  4. 27 Sep, 2016 2 commits
  5. 10 Apr, 2016 1 commit
    • Al Viro's avatar
      reiserfs: switch to generic_{get,set,remove}xattr() · 79a628d1
      Al Viro authored
      reiserfs_xattr_[sg]et() will fail with -EOPNOTSUPP for V1 inodes anyway,
      and all reiserfs instances of ->[sg]et() call it and so does ->set_acl().
      
      Checks for name length in the instances had been bogus; they should've
      been "bugger off if it's _exactly_ the prefix" (as generic would
      do on its own) and not "bugger off if it's shorter than the prefix" -
      that can't happen.
      
      xattr_full_name() is needed to adjust for the fact that generic instances
      will skip the prefix in the name passed to ->[gs]et(); reiserfs homegrown
      analogues didn't.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      79a628d1
  6. 30 Dec, 2015 1 commit
  7. 09 Dec, 2015 2 commits
    • Al Viro's avatar
      replace ->follow_link() with new method that could stay in RCU mode · 6b255391
      Al Viro authored
      new method: ->get_link(); replacement of ->follow_link().  The differences
      are:
      	* inode and dentry are passed separately
      	* might be called both in RCU and non-RCU mode;
      the former is indicated by passing it a NULL dentry.
      	* when called that way it isn't allowed to block
      and should return ERR_PTR(-ECHILD) if it needs to be called
      in non-RCU mode.
      
      It's a flagday change - the old method is gone, all in-tree instances
      converted.  Conversion isn't hard; said that, so far very few instances
      do not immediately bail out when called in RCU mode.  That'll change
      in the next commits.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      6b255391
    • Al Viro's avatar
      don't put symlink bodies in pagecache into highmem · 21fc61c7
      Al Viro authored
      kmap() in page_follow_link_light() needed to go - allowing to hold
      an arbitrary number of kmaps for long is a great way to deadlocking
      the system.
      
      new helper (inode_nohighmem(inode)) needs to be used for pagecache
      symlinks inodes; done for all in-tree cases.  page_follow_link_light()
      instrumented to yell about anything missed.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      21fc61c7
  8. 09 Nov, 2015 1 commit
  9. 23 Jul, 2015 1 commit
  10. 15 Apr, 2015 1 commit
  11. 06 May, 2014 7 commits
  12. 26 Jan, 2014 1 commit
  13. 08 Aug, 2013 1 commit
    • Jeff Mahoney's avatar
      reiserfs: locking, handle nested locks properly · 278f6679
      Jeff Mahoney authored
      The reiserfs write lock replaced the BKL and uses similar semantics.
      
      Frederic's locking code makes a distinction between when the lock is nested
      and when it's being acquired/released, but I don't think that's the right
      distinction to make.
      
      The right distinction is between the lock being released at end-of-use and
      the lock being released for a schedule. The unlock should return the depth
      and the lock should restore it, rather than the other way around as it is now.
      
      This patch implements that and adds a number of places where the lock
      should be dropped.
      Signed-off-by: default avatarJeff Mahoney <jeffm@suse.com>
      278f6679
  14. 22 Jul, 2012 1 commit
  15. 14 Jul, 2012 2 commits
  16. 21 Mar, 2012 3 commits
  17. 04 Jan, 2012 4 commits
  18. 02 Nov, 2011 2 commits
  19. 25 Jul, 2011 1 commit
  20. 20 Jul, 2011 1 commit
  21. 28 May, 2011 1 commit
  22. 26 May, 2011 2 commits
  23. 15 Mar, 2011 1 commit
  24. 03 Mar, 2011 1 commit
    • Al Viro's avatar
      fix reiserfs mkdir() breakage · 99890a3b
      Al Viro authored
      if directory has so many subdirectories that its link count is set
      to 1 (i.e. "can't tell accurately") and reiserfs_new_inode() fails,
      we shouldn't decrement the parent's link count in cleanup path;
      that's what DEC_DIR_INODE_NLINK() is for.  As it is, we end up
      with parent suddenly getting zero i_nlink, with very unpleasant
      effects.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      99890a3b