04 Jan, 2012

2 commits


24 Mar, 2011

1 commit


17 Dec, 2010

1 commit


23 Nov, 2010

1 commit

  • Avoid doing unessecary work in fsync. Do nothing unless the inode
    was marked dirty, and only write the various metadata inodes out if
    they contain any dirty state from this inode. This is archived by
    adding three new dirty bits to the hfsplus-specific inode which are
    set in the correct places.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     

26 Oct, 2010

1 commit


15 Oct, 2010

1 commit


14 Oct, 2010

1 commit


01 Oct, 2010

5 commits

  • HFSPLUS_I doesn't return a pointer to the hfsplus-specific inode
    information like all other FOO_I macros, but dereference the pointer in a way
    that made it look like a direct struct derefence. This only works as long
    as the HFSPLUS_I macro is used directly and prevents us from keepig a local
    hfsplus_inode_info pointer. Fix the calling convention and introduce a local
    hip variable in all functions that use it constantly.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     
  • HFSPLUS_SB doesn't return a pointer to the hfsplus-specific superblock
    information like all other FOO_SB macros, but dereference the pointer in a way
    that made it look like a direct struct derefence. This only works as long
    as the HFSPLUS_SB macro is used directly and prevents us from keepig a local
    hfsplus_sb_info pointer. Fix the calling convention and introduce a local
    sbi variable in all functions that use it constantly.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     
  • Use i_mutex for protecting against concurrent setflags ioctls like in
    other filesystems and get rid of the BKL in hfsplus_ioctl.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     
  • Give each ioctl command a function of it's own.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     
  • Currenly the HFSPLUS_IOC_EXT2_GETFLAGS case never unlocks the BKL, which
    can lead to easily reproduced lockups when doing multiple GETFLAGS ioctls.

    Fix this by only taking the BKL for the HFSPLUS_IOC_EXT2_SETFLAGS case
    as neither HFSPLUS_IOC_EXT2_GETFLAGS not the default error case needs it.

    Signed-off-by: Christoph Hellwig

    Christoph Hellwig
     

17 May, 2010

1 commit


19 Apr, 2008

1 commit


18 Jul, 2007

1 commit

  • Introduce is_owner_or_cap() macro in fs.h, and convert over relevant
    users to it. This is done because we want to avoid bugs in the future
    where we check for only effective fsuid of the current task against a
    file's owning uid, without simultaneously checking for CAP_FOWNER as
    well, thus violating its semantics.
    [ XFS uses special macros and structures, and in general looked ...
    untouchable, so we leave it alone -- but it has been looked over. ]

    The (current->fsuid != inode->i_uid) check in generic_permission() and
    exec_permission_lite() is left alone, because those operations are
    covered by CAP_DAC_OVERRIDE and CAP_DAC_READ_SEARCH. Similarly operations
    falling under the purview of CAP_CHOWN and CAP_LEASE are also left alone.

    Signed-off-by: Satyam Sharma
    Cc: Al Viro
    Acked-by: Serge E. Hallyn
    Signed-off-by: Linus Torvalds

    Satyam Sharma
     

01 Oct, 2006

1 commit


12 Jan, 2006

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds