diff options
author | Zheng Liu <wenqing.lz@taobao.com> | 2012-11-09 00:18:54 +0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2012-11-09 00:18:54 +0400 |
commit | c0677e6d0f9d991adff972b8d06cb83de1f8ee8e (patch) | |
tree | f320c2fb163763f200d0126c90fcbd909bfbedf2 /fs/ext4/ext4.h | |
parent | 07aa2ea13814ea60d12f7330b6d5ccfdb0c3ba4d (diff) | |
download | linux-c0677e6d0f9d991adff972b8d06cb83de1f8ee8e.tar.xz |
ext4: add data structures for the extent status tree
This patch adds two structures that supports extent status tree, extent_status
and ext4_es_tree. Currently extent_status is used to track a delay extent for
an inode, which record the start block and the length of the delay extent.
ext4_es_tree is used to store all extent_status for an inode in memory.
Signed-off-by: Yongqiang Yang <xiaoqiangnk@gmail.com>
Signed-off-by: Allison Henderson <achender@linux.vnet.ibm.com>
Signed-off-by: Zheng Liu <wenqing.lz@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ext4.h')
-rw-r--r-- | fs/ext4/ext4.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h index 3c20de1d59d0..bcc634b26d46 100644 --- a/fs/ext4/ext4.h +++ b/fs/ext4/ext4.h @@ -811,6 +811,8 @@ struct ext4_ext_cache { __u32 ec_len; /* must be 32bit to return holes */ }; +#include "extents_status.h" + /* * fourth extended file system inode data in memory */ @@ -888,6 +890,10 @@ struct ext4_inode_info { struct list_head i_prealloc_list; spinlock_t i_prealloc_lock; + /* extents status tree */ + struct ext4_es_tree i_es_tree; + rwlock_t i_es_lock; + /* ialloc */ ext4_group_t i_last_alloc_group; |