1. 29 Mar, 2010 2 commits
    • Linus Torvalds's avatar
      ext3: fix broken handling of EXT3_STATE_NEW · de329820
      Linus Torvalds authored
      In commit 9df93939 ("ext3: Use bitops to read/modify
      EXT3_I(inode)->i_state") ext3 changed its internal 'i_state' variable to
      use bitops for its state handling.  However, unline the same ext4
      change, it didn't actually change the name of the field when it changed
      the semantics of it.
      
      As a result, an old use of 'i_state' remained in fs/ext3/ialloc.c that
      initialized the field to EXT3_STATE_NEW.  And that does not work
      _at_all_ when we're now working with individually named bits rather than
      values that get masked.  So the code tried to mark the state to be new,
      but in actual fact set the field to EXT3_STATE_JDATA.  Which makes no
      sense at all, and screws up all the code that checks whether the inode
      was newly allocated.
      
      In particular, it made the xattr code unhappy, and caused various random
      behavior, like apparently
      
      	https://bugzilla.redhat.com/show_bug.cgi?id=577911
      
      
      
      So fix the initialization, and rename the field to match ext4 so that we
      don't have this happen again.
      
      Cc: James Morris <jmorris@namei.org>
      Cc: Stephen Smalley <sds@tycho.nsa.gov>
      Cc: Daniel J Walsh <dwalsh@redhat.com>
      Cc: Eric Paris <eparis@redhat.com>
      Cc: Jan Kara <jack@suse.cz>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      de329820
    • David Howells's avatar
      SLOW_WORK: CONFIG_SLOW_WORK_PROC should be CONFIG_SLOW_WORK_DEBUG · a53f4f9e
      David Howells authored
      
      CONFIG_SLOW_WORK_PROC was changed to CONFIG_SLOW_WORK_DEBUG, but not in all
      instances.  Change the remaining instances.  This makes the debugfs file
      display the time mark and the owner's description again.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a53f4f9e
  2. 26 Mar, 2010 1 commit
  3. 24 Mar, 2010 9 commits
  4. 23 Mar, 2010 1 commit
  5. 24 Mar, 2010 2 commits
  6. 23 Mar, 2010 2 commits
  7. 22 Mar, 2010 3 commits
  8. 19 Mar, 2010 1 commit
  9. 18 Mar, 2010 4 commits
    • Chris Mason's avatar
      Btrfs: fix the inode ref searches done by btrfs_search_path_in_tree · 8ad6fcab
      Chris Mason authored
      
      This is used by the inode lookup ioctl to follow all the backrefs up
      to the subvol root.  But the search being done would sometimes land one
      past the last item in the leaf instead of finding the backref.
      
      This changes the search to look for the highest possible backref and hop
      back one item.  It also fixes a leaked path on failure to find the root.
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      8ad6fcab
    • Chris Mason's avatar
      Btrfs: allow treeid==0 in the inode lookup ioctl · 1b53ac4d
      Chris Mason authored
      
      When a root id of 0 is sent to the inode lookup ioctl, it will
      use the root of the file we're ioctling and pass the root id
      back to userland along with the results.
      
      This allows userland to do searches based on that root later on.
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      1b53ac4d
    • Chris Mason's avatar
      Btrfs: return keys for large items to the search ioctl · 90fdde14
      Chris Mason authored
      
      The search ioctl was skipping large items entirely (ones that are too
      big for the results buffer).  This changes things to at least copy
      the item header so that we can send information about the item back to
      userland.
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      90fdde14
    • Chris Mason's avatar
      Btrfs: fix key checks and advance in the search ioctl · abc6e134
      Chris Mason authored
      
      The search ioctl was working well for finding tree roots, but using it for
      generic searches requires a few changes to how the keys are advanced.
      This treats the search control min fields for objectid, type and offset
      more like a key, where we drop the offset to zero once we bump the type,
      etc.
      
      The downside of this is that we are changing the min_type and min_offset
      fields during the search, and so the ioctl caller needs extra checks to make sure
      the keys in the result are the ones it wanted.
      
      This also changes key_in_sk to use btrfs_comp_cpu_keys, just to make
      things more readable.
      Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
      abc6e134
  10. 17 Mar, 2010 2 commits
  11. 16 Mar, 2010 6 commits
  12. 15 Mar, 2010 7 commits