android_kernel_xiaomi_sm8350/fs/ocfs2
Tao Ma 6f70fa5199 ocfs2: Add CoW support.
This patch try CoW support for a refcounted record.

the whole process will be:
1. Calculate how many clusters we need to CoW and where we start.
   Extents that are not completely encompassed by the write will
   be broken on 1MB boundaries.
2. Do CoW for the clusters with the help of page cache.
3. Change the b-tree structure with the new allocated clusters.

Signed-off-by: Tao Ma <tao.ma@oracle.com>
2009-09-22 20:09:36 -07:00
..
cluster ocfs2: Add ocfs2_read_refcount_block. 2009-09-22 20:09:26 -07:00
dlm ocfs2/dlm: Wait on lockres instead of erroring cancel requests 2009-08-20 18:42:34 -07:00
acl.c New helper - current_umask() 2009-03-31 23:00:26 -04:00
acl.h
alloc.c ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
alloc.h ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
aops.c ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
aops.h ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
blockcheck.c ocfs2: Add statistics for the checksum and ecc operations. 2009-06-03 19:15:36 -07:00
blockcheck.h ocfs2: Add statistics for the checksum and ecc operations. 2009-06-03 19:15:36 -07:00
buffer_head_io.c ocfs2: Take the inode out of the metadata read/write paths. 2009-09-04 16:07:48 -07:00
buffer_head_io.h ocfs2: Take the inode out of the metadata read/write paths. 2009-09-04 16:07:48 -07:00
dcache.c ocfs2: invalidate dentry if its dentry_lock isn't initialized. 2009-08-27 18:10:54 -07:00
dcache.h ocfs2: Fix deadlock on umount 2009-07-21 15:47:55 -07:00
dir.c ocfs2: Pass ocfs2_caching_info into ocfs_init_*_extent_tree(). 2009-09-04 16:08:13 -07:00
dir.h ocfs2: Introduce dir free space list 2009-04-03 11:39:16 -07:00
dlmglue.c ocfs2: Add new refcount tree lock resource in dlmglue. 2009-09-22 20:09:28 -07:00
dlmglue.h ocfs2: Add new refcount tree lock resource in dlmglue. 2009-09-22 20:09:28 -07:00
export.c ocfs2: Fix some printk() warnings. 2009-04-21 16:31:20 -07:00
export.h
extent_map.c ocfs2: Add support for incrementing refcount in the tree. 2009-09-22 20:09:33 -07:00
extent_map.h ocfs2: Add support for incrementing refcount in the tree. 2009-09-22 20:09:33 -07:00
file.c ocfs2: Pass ocfs2_caching_info into ocfs_init_*_extent_tree(). 2009-09-04 16:08:13 -07:00
file.h
heartbeat.c
heartbeat.h
inode.c ocfs2: Drop struct inode from ocfs2_extent_tree_operations. 2009-09-04 16:07:57 -07:00
inode.h ocfs2: Drop struct inode from ocfs2_extent_tree_operations. 2009-09-04 16:07:57 -07:00
ioctl.c
ioctl.h
journal.c ocfs2: Add metaecc for ocfs2_refcount_block. 2009-09-22 20:09:26 -07:00
journal.h ocfs2: Decrement refcount when truncating refcounted extents. 2009-09-22 20:09:35 -07:00
Kconfig
localalloc.c ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
localalloc.h
locks.c
locks.h
Makefile ocfs2: Add ocfs2_read_refcount_block. 2009-09-22 20:09:26 -07:00
mmap.c mm: page_mkwrite change prototype to match fault 2009-04-01 08:59:14 -07:00
mmap.h
namei.c ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
namei.h
ocfs1_fs_compat.h
ocfs2_fs.h ocfs2: Add support for incrementing refcount in the tree. 2009-09-22 20:09:33 -07:00
ocfs2_lockid.h ocfs2: Add new refcount tree lock resource in dlmglue. 2009-09-22 20:09:28 -07:00
ocfs2_lockingver.h
ocfs2.h ocfs2: Add functions for extents refcounted. 2009-09-22 20:09:34 -07:00
quota_global.c ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
quota_local.c ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
quota.h ocfs2: Remove syncjiff field from quota info 2009-07-23 10:59:27 -07:00
refcounttree.c ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
refcounttree.h ocfs2: Add CoW support. 2009-09-22 20:09:36 -07:00
resize.c ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
resize.h
slot_map.c ocfs2: Take the inode out of the metadata read/write paths. 2009-09-04 16:07:48 -07:00
slot_map.h
stack_o2cb.c ocfs2: keep index within status_map[] 2009-08-07 13:16:50 -07:00
stack_user.c ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API. 2009-06-22 14:24:30 -07:00
stackglue.c ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API. 2009-06-22 14:24:30 -07:00
stackglue.h ocfs2: Provide the ocfs2_dlm_lvb_valid() stack API. 2009-06-22 14:24:30 -07:00
suballoc.c ocfs2: Pass ocfs2_caching_info to ocfs2_read_extent_block(). 2009-09-04 16:07:52 -07:00
suballoc.h ocfs2: fix rare stale inode errors when exporting via nfs 2009-04-03 11:39:25 -07:00
super.c ocfs2: Add refcount tree lock mechanism. 2009-09-22 20:09:29 -07:00
super.h
symlink.c ocfs2: Use nd_set_link(). 2009-05-09 10:49:40 -04:00
symlink.h
sysfile.c ocfs2/trivial: Wrap ocfs2_sysfile_cluster_lock_key within define. 2009-06-22 14:34:29 -07:00
sysfile.h
uptodate.c ocfs2: move ip_created_trans to struct ocfs2_caching_info 2009-09-04 16:07:49 -07:00
uptodate.h ocfs2: Pass struct ocfs2_caching_info to the journal functions. 2009-09-04 16:07:50 -07:00
ver.c
ver.h
xattr.c ocfs2: Pass ocfs2_caching_info into ocfs_init_*_extent_tree(). 2009-09-04 16:08:13 -07:00
xattr.h ocfs2: Add a name indexed b-tree to directory inodes 2009-04-03 11:39:15 -07:00