[PATCHv7 0/6] reiser4: discard support: simplified and race-free initial implementation.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



v1: - initial implementation (patches 1, 2)

v2: - cleanup, fixes discovered in debug mode
    - saner logging
    - assertions
    - enablement of discard through mount option

v3: - fixed the extent merge loop in discard_atom()

v4: - squashed fix-ups into the main patch (with exception of reiser4_debug())
    - fixed bug in usage of division ops discovered while building on ARM

v5: - squashed mount option into the main patch
    - refactor based on discussion (see commit msg)
      - splitted off blocknr_list code
      - replaced ->discard_set with ->delete_set and ->aux_delete_set

v6: - actualized in-code comments
    - removed uber-verbose debug statements
    - fixed code-to-patch mapping
    - moved blocknrlist and blocknrset to kmem_cache instead of kmalloc/kfree
      (in a separate commit for ease of reviewing)
    - dropped the RFC label

v7: - squashed with PATCHv2 "perform discard before all deallocations"
    - dropped extent padding from discard_extent()
    - completed in-code comments, cosmetic fixups
    - added missing #include in block_alloc.c
    - added missing spin_unlock_atom() in discard_atom()

Ivan Shapovalov (6):
  reiser4: fix reiser4_post_{commit,write_back}_hook() and their invocations.
  reiser4: make space_allocator's check_blocks() reusable.
  reiser4: add an implementation of "block lists", splitted off the discard code.
  reiser4: blocknr_list: use kmem_cache instead of kmalloc for allocating entries.
  reiser4: blocknr_set: use kmem_cache instead of kmalloc for allocating entries.
  reiser4: discard support: initial implementation using blocknr_list, without extent padding.

 fs/reiser4/Makefile                       |   2 +
 fs/reiser4/block_alloc.c                  |  62 +++---
 fs/reiser4/block_alloc.h                  |  14 +-
 fs/reiser4/blocknrlist.c                  | 336 ++++++++++++++++++++++++++++++
 fs/reiser4/blocknrset.c                   |  34 ++-
 fs/reiser4/dformat.h                      |   2 +
 fs/reiser4/discard.c                      | 179 ++++++++++++++++
 fs/reiser4/discard.h                      |  42 ++++
 fs/reiser4/forward.h                      |   1 +
 fs/reiser4/init_super.c                   |   2 +
 fs/reiser4/plugin/space/bitmap.c          |  82 +++++---
 fs/reiser4/plugin/space/bitmap.h          |   2 +-
 fs/reiser4/plugin/space/space_allocator.h |   4 +-
 fs/reiser4/super.h                        |   4 +-
 fs/reiser4/super_ops.c                    |  14 ++
 fs/reiser4/txnmgr.c                       |  90 +++++++-
 fs/reiser4/txnmgr.h                       |  60 +++++-
 fs/reiser4/wander.c                       |   6 +-
 fs/reiser4/znode.c                        |   9 +-
 19 files changed, 859 insertions(+), 86 deletions(-)
 create mode 100644 fs/reiser4/blocknrlist.c
 create mode 100644 fs/reiser4/discard.c
 create mode 100644 fs/reiser4/discard.h

-- 
2.0.3

--
To unsubscribe from this list: send the line "unsubscribe reiserfs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux File System Development]     [Linux BTRFS]     [Linux NFS]     [Linux Filesystems]     [Ext4 Filesystem]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Resources]

  Powered by Linux