Thread (4 messages) 4 messages, 2 authors, 2008-08-19

Re: [PATCH] ext4: Code cleanups

From: Mingming Cao <hidden>
Date: 2008-08-19 18:29:37

在 2008-08-19二的 12:18 +0530,Aneesh Kumar K.V写道:
a) rename num to nrblocks to clearly indicate we expecting block count as argument.
b) renmae ext4_writepages_trans_blocks to ext4_da_writepages_trans_blocks to
indicate it is the delayed allocation writepages transaction credit.
c) Add some comments. remove some stale comments.

Signed-off-by: Aneesh Kumar K.V <redacted>
Acked-by: Mingming Cao <redacted>
quoted hunk ↗ jump to hunk
---
 fs/ext4/extents.c |    8 ++++----
 fs/ext4/inode.c   |   14 ++++++++------
 2 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index 73bb308..bf612a7 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -1893,7 +1893,7 @@ static int ext4_ext_rm_idx(handle_t *handle, struct inode *inode,
  * When pass the actual path, the caller should calculate credits
  * under i_data_sem.
  */
-int ext4_ext_calc_credits_for_single_extent(struct inode *inode, int num,
+int ext4_ext_calc_credits_for_single_extent(struct inode *inode, int nrblocks,
 						struct ext4_ext_path *path)
 {
 	if (path) {
@@ -1912,12 +1912,12 @@ int ext4_ext_calc_credits_for_single_extent(struct inode *inode, int num,
 			 *  and other metadat blocks still need to be
 			 *  accounted.
 			 */
-			/* 1 one bitmap, 1 block group descriptor */
+			/* 1 bitmap, 1 block group descriptor */
 			ret = 2 + EXT4_META_TRANS_BLOCKS(inode->i_sb);
 		}
 	}

-	return ext4_chunk_trans_blocks(inode, num);
+	return ext4_chunk_trans_blocks(inode, nrblocks);
 }

 /*
@@ -1931,7 +1931,7 @@ int ext4_ext_calc_credits_for_single_extent(struct inode *inode, int num,
  * If the nrblocks are discontiguous, they could cause
  * the whole tree split more than once, but this is really rare.
  */
-int ext4_ext_index_trans_blocks(struct inode *inode, int num, int chunk)
+int ext4_ext_index_trans_blocks(struct inode *inode, int nrblocks, int chunk)
 {
 	int index;
 	int depth = ext_depth(inode);
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index a10f8e5..b32a723 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -2321,16 +2321,18 @@ static int ext4_da_writepage(struct page *page,
  * a single extent allocation into a single transaction,
  * ext4_da_writpeages() will loop calling this before
  * the block allocation.
- *
- * The page vector size limited the max number of pages could
- * be writeout at a time. Based on this, the max blocks to pass to
- * get_block is calculated
  */

-static int ext4_writepages_trans_blocks(struct inode *inode)
+static int ext4_da_writepages_trans_blocks(struct inode *inode)
 {
 	int max_blocks = EXT4_I(inode)->i_reserved_data_blocks;

+	/*
+	 * With noextent format the journal credit needed to
+	 * insert nrblocks contiguous block is dependent on
+	 * number of contiguous block. So we will limit
+	 * number of contiguous block to a sane value
+	 */
 	if (!(inode->i_flags & EXT4_EXTENTS_FL) &&
 	    (max_blocks > EXT4_MAX_TRANS_DATA))
 		max_blocks = EXT4_MAX_TRANS_DATA;
@@ -2387,7 +2389,7 @@ static int ext4_da_writepages(struct address_space *mapping,
 		 * by delalloc
 		 */
 		BUG_ON(ext4_should_journal_data(inode));
-		needed_blocks = ext4_writepages_trans_blocks(inode);
+		needed_blocks = ext4_da_writepages_trans_blocks(inode);

 		/* start a new transaction*/
 		handle = ext4_journal_start(inode, needed_blocks);
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help