07 May, 2013

3 commits

  • Big patch, but all it does is add statics to functions which
    are in fact static, then remove the associated dead-code fallout.

    removed functions:

    btrfs_iref_to_path()
    __btrfs_lookup_delayed_deletion_item()
    __btrfs_search_delayed_insertion_item()
    __btrfs_search_delayed_deletion_item()
    find_eb_for_page()
    btrfs_find_block_group()
    range_straddles_pages()
    extent_range_uptodate()
    btrfs_file_extent_length()
    btrfs_scrub_cancel_devid()
    btrfs_start_transaction_lflush()

    btrfs_print_tree() is left because it is used for debugging.
    btrfs_start_transaction_lflush() and btrfs_reada_detach() are
    left for symmetry.

    ulist.c functions are left, another patch will take care of those.

    Signed-off-by: Eric Sandeen
    Signed-off-by: Josef Bacik

    Eric Sandeen
     
  • Argument 'trans' is not used in btrfs_extend_item().

    Signed-off-by: Tsutomu Itoh
    Signed-off-by: Josef Bacik

    Tsutomu Itoh
     
  • If argument 'trans' is unnecessary in the function where
    fixup_low_keys() is called, 'trans' is deleted.

    Signed-off-by: Tsutomu Itoh
    Signed-off-by: Josef Bacik

    Tsutomu Itoh
     

09 Oct, 2012

1 commit

  • This patch adds basic support for extended inode refs. This includes support
    for link and unlink of the refs, which basically gets us support for rename
    as well.

    Inode creation does not need changing - extended refs are only added after
    the ref array is full.

    Signed-off-by: Mark Fasheh

    Mark Fasheh
     

29 Mar, 2012

1 commit


27 Mar, 2012

1 commit

  • A few years ago the btrfs code to support blocks lager than
    the page size was disabled to fix a few corner cases in the
    page cache handling. This fixes the code to properly support
    large metadata blocks again.

    Since current kernels will crash early and often with larger
    metadata blocks, this adds an incompat bit so that older kernels
    can't mount it.

    This also does away with different blocksizes for nodes and leaves.
    You get a single block size for all tree blocks.

    Signed-off-by: Chris Mason

    Chris Mason
     

22 Mar, 2012

2 commits


24 May, 2011

1 commit


25 May, 2010

1 commit


24 Sep, 2009

1 commit

  • For every hardlink in btrfs, there is a corresponding inode back
    reference. All inode back references for hardlinks in a given
    directory are stored in single b-tree item. The size of b-tree item
    is limited by the size of b-tree leaf, so we can only create limited
    number of hardlinks to a given file in a directory.

    The original code lacks of the check, it oops if the number of
    hardlinks goes over the limit. This patch fixes the issue by adding
    check to btrfs_link and btrfs_rename.

    Signed-off-by: Yan Zheng
    Signed-off-by: Chris Mason

    Yan, Zheng
     

22 Sep, 2009

1 commit

  • The new back reference format does not allow reusing objectid of
    deleted snapshot/subvol. So we use ++highest_objectid to allocate
    objectid for new snapshot/subvol.

    Now we use ++highest_objectid to allocate objectid for both new inode
    and new snapshot/subvolume, so this patch removes 'find hole' code in
    btrfs_find_free_objectid.

    Signed-off-by: Yan Zheng
    Signed-off-by: Chris Mason

    Yan, Zheng
     

25 Mar, 2009

1 commit

  • btrfs_mark_buffer dirty would set dirty bits in the extent_io tree
    for the buffers it was dirtying. This may require a kmalloc and it
    was not atomic. So, anyone who called btrfs_mark_buffer_dirty had to
    set any btree locks they were holding to blocking first.

    This commit changes dirty tracking for extent buffers to just use a flag
    in the extent buffer. Now that we have one and only one extent buffer
    per page, this can be safely done without losing dirty bits along the way.

    This also introduces a path->leave_spinning flag that callers of
    btrfs_search_slot can use to indicate they will properly deal with a
    path returned where all the locks are spinning instead of blocking.

    Many of the btree search callers now expect spinning paths,
    resulting in better btree concurrency overall.

    Signed-off-by: Chris Mason

    Chris Mason
     

02 Dec, 2008

1 commit


25 Sep, 2008

3 commits


11 Jul, 2007

1 commit

  • Almost none of the files including module.h need to do so,
    remove them.

    Include sched.h in extent-tree.c to silence a warning about cond_resched()
    being undeclared.

    Signed-off-by: Zach Brown
    Signed-off-by: Chris Mason

    Zach Brown
     

14 Jun, 2007

1 commit

  • Attaching below is some of the code cleanups that i came across while
    reading the code.

    a) alloc_path already calls init_path.
    b) Mention that btrfs_inode is the in memory copy.Ext4 have ext4_inode_info as
    the in memory copy ext4_inode as the disk copy

    Signed-off-by: Chris Mason

    Aneesh
     

12 Jun, 2007

1 commit


11 Apr, 2007

1 commit


07 Apr, 2007

1 commit


02 Apr, 2007

1 commit


21 Mar, 2007

1 commit


17 Mar, 2007

1 commit


16 Mar, 2007

1 commit