2011-05-26 09:46:48

by Joel Becker

[permalink] [raw]
Subject: [GIT PULL] ocfs2 features for $next_version

Linus et al,
Here are the new ocfs2 changes for the $next_version merge
window. They include FITRIM support and the basics of online
defragmentation.
Please pull.

Joel

The following changes since commit 4db70f73e56961b9bcdfd0c36c62847a18b7dbb5:

tmpfs: fix XATTR N overriding POSIX_ACL Y (2011-05-25 19:53:02 -0700)

are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2.git linux-next

Amerigo Wang (1):
ocfs2: remove the /sys/o2cb symlink

Joel Becker (1):
Merge branch 'move_extents' of git://oss.oracle.com/git/tye/linux-2.6 into ocfs2-merge-window

Robin Dong (1):
ocfs2: change incorrect 'extern' keyword to 'static' in dlmfs

Sunil Mushran (3):
ocfs2/dlm: dlm_is_lockres_migrateable() returns boolean
ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG
ocfs2/dlm: Do not migrate resource to a node that is leaving the domain

Tao Ma (3):
ocfs2: Add ocfs2_trim_fs for SSD trim support.
ocfs2: Add FITRIM ioctl.
ocfs2: Add trace event for trim.

Tiger Yang (1):
ocfs2: clean up mount option about atime in ocfs2.txt

Tristan Ye (19):
Ocfs2: Using inline funcs to set/clear *FILLED* flags in info handler.
Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl.
Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl.
Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c
Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2.
Ocfs2/move_extents: Add basic framework and source files for extent moving.
Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving.
Ocfs2/move_extents: move a range of extent.
Ocfs2/move_extents: defrag a range of extent.
Ocfs2/move_extents: find the victim alloc group, where the given #blk fits.
Ocfs2/move_extents: helper to validate and adjust moving goal.
Ocfs2/move_extents: helper to probe a proper region to move in an alloc group.
Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode.
Ocfs2/move_extents: move entire/partial extent.
Ocfs2/move_extents: helper to calculate the defraging length in one run.
Ocfs2/move_extents: move/defrag extents within a certain range.
Ocfs2/move_extents: Let defrag handle partial extent moving.
Ocfs2/move_extents: Set several trivial constraints for threshold.
Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly.

Documentation/ABI/{obsolete => removed}/o2cb | 9 +-
Documentation/feature-removal-schedule.txt | 10 -
Documentation/filesystems/ocfs2.txt | 8 +-
fs/ocfs2/Makefile | 1 +
fs/ocfs2/alloc.c | 166 ++++
fs/ocfs2/alloc.h | 1 +
fs/ocfs2/cluster/sys.c | 9 -
fs/ocfs2/dlm/dlmcommon.h | 14 +
fs/ocfs2/dlm/dlmdebug.c | 6 +
fs/ocfs2/dlm/dlmdomain.c | 94 ++-
fs/ocfs2/dlm/dlmmaster.c | 255 ++----
fs/ocfs2/dlm/dlmrecovery.c | 1 +
fs/ocfs2/dlmfs/dlmfs.c | 2 +-
fs/ocfs2/file.c | 1 +
fs/ocfs2/ioctl.c | 492 +++++++++++-
fs/ocfs2/move_extents.c | 1153 ++++++++++++++++++++++++++
fs/ocfs2/move_extents.h | 22 +
fs/ocfs2/ocfs2_ioctl.h | 68 ++
fs/ocfs2/ocfs2_trace.h | 25 +
fs/ocfs2/refcounttree.c | 58 +-
fs/ocfs2/refcounttree.h | 11 +
fs/ocfs2/super.c | 2 +-
22 files changed, 2146 insertions(+), 262 deletions(-)
rename Documentation/ABI/{obsolete => removed}/o2cb (65%)
create mode 100644 fs/ocfs2/move_extents.c
create mode 100644 fs/ocfs2/move_extents.h


2011-05-27 09:52:59

by Joel Becker

[permalink] [raw]
Subject: [GIT PULL] ocfs2 important fix for $next_version-rc1

Linus et al,
Mea culpa. The online defrag code in the ocfs2 feature pull had
a naked 64-bit divide that I missed in eyeballing and we all missed in
testing. None of us managed to build the sucker on 32bit in the past
two months. That's on me. Thank you to akpm for noticing. Also
included is a bugfix in the defrag location guessing.
I'd really like to get this in before -rc1 so that ocfs2 builds
aren't broken there. Please pull.

Mr Egg-on-his-face (Joel)

The following changes since commit a74b81b0aff4a01e0816df5915c854fb52c5e87f:

Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 (2011-05-26 10:55:15 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2.git linux-next

Joel Becker (1):
Merge branch 'move_extents' of git://oss.oracle.com/git/tye/linux-2.6 into ocfs2-merge-window

Tristan Ye (2):
Ocfs2/move_extents: Avoid doing division in extent moving.
Ocfs2/move_extents: Validate moving goal after the adjustment.

fs/ocfs2/move_extents.c | 41 ++++++++++++++++++++---------------------
1 files changed, 20 insertions(+), 21 deletions(-)

--

"Sometimes one pays most for the things one gets for nothing."
- Albert Einstein

http://www.jlbec.org/
[email protected]