From: Alexey Lyashkov Date: Thu, 25 May 2023 07:45:29 +0000 (+0300) Subject: LU-16847 ldiskfs: do not copy ldiskfs_chunk_trans_blocks X-Git-Tag: 2.15.57~104 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=9e5040a304a995dd4c501c8804da1f768f8c2386;p=fs%2Flustre-release.git LU-16847 ldiskfs: do not copy ldiskfs_chunk_trans_blocks Do not make a copy of ldiskfs_chunk_trans_blocks() function. Instead, export existing function from the ldiskfs module. HPe-bug-id: LUS-11645 Signed-off-by: Alexey Lyashkov Change-Id: Ic5d4a8e82b0284241b0e8e2a167271a6dc6fc297 Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/51138 Reviewed-by: Oleg Drokin Reviewed-by: Alex Zhuravlev Reviewed-by: Andreas Dilger Reviewed-by: Andrew Perepechko Tested-by: jenkins Tested-by: Maloo --- diff --git a/ldiskfs/kernel_patches/patches/linux-5.10/ext4-misc.patch b/ldiskfs/kernel_patches/patches/linux-5.10/ext4-misc.patch index b694fd4..6816f87 100644 --- a/ldiskfs/kernel_patches/patches/linux-5.10/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/linux-5.10/ext4-misc.patch @@ -81,7 +81,7 @@ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index ea9976b..e3630b0 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6206,3 +6206,19 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) +@@ -6206,3 +6206,20 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) return ret; } @@ -101,6 +101,7 @@ index ea9976b..e3630b0 100644 +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index f09b60b..ff6c251 100644 --- a/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/linux-5.16/ext4-misc.patch b/ldiskfs/kernel_patches/patches/linux-5.16/ext4-misc.patch index dfb353b..8786f01 100644 --- a/ldiskfs/kernel_patches/patches/linux-5.16/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/linux-5.16/ext4-misc.patch @@ -73,7 +73,7 @@ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index f0206e2..88e82d6 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6145,3 +6145,19 @@ out_error: +@@ -6145,3 +6145,20 @@ out_error: ext4_journal_stop(handle); goto out; } @@ -93,6 +93,7 @@ index f0206e2..88e82d6 100644 +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index 249836e..627b9eb 100644 --- a/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/linux-5.8/ext4-misc.patch b/ldiskfs/kernel_patches/patches/linux-5.8/ext4-misc.patch index 3766f07..511e4c3 100644 --- a/ldiskfs/kernel_patches/patches/linux-5.8/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/linux-5.8/ext4-misc.patch @@ -90,7 +90,7 @@ diff -ur a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c diff -ur a/fs/ext4/inode.c b/fs/ext4/inode.c --- a/fs/ext4/inode.c 2021-06-28 08:45:39.069955021 -0600 +++ b/fs/ext4/inode.c 2021-06-28 08:46:06.921523449 -0600 -@@ -6088,3 +6088,18 @@ +@@ -6088,3 +6088,19 @@ return ret; } @@ -109,6 +109,7 @@ diff -ur a/fs/ext4/inode.c b/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff -ur a/fs/ext4/namei.c b/fs/ext4/namei.c --- a/fs/ext4/namei.c 2021-06-28 08:45:39.093954644 -0600 +++ b/fs/ext4/namei.c 2021-06-28 08:46:06.921523449 -0600 diff --git a/ldiskfs/kernel_patches/patches/oe2203/ext4-misc.patch b/ldiskfs/kernel_patches/patches/oe2203/ext4-misc.patch index 0e1528f..126bffc 100644 --- a/ldiskfs/kernel_patches/patches/oe2203/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/oe2203/ext4-misc.patch @@ -73,7 +73,7 @@ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index e868b33ed8f5..70f3bb4ef5eb 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6215,3 +6215,19 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) +@@ -6215,3 +6215,20 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) return ret; } @@ -93,6 +93,7 @@ index e868b33ed8f5..70f3bb4ef5eb 100644 +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index f4dd3a7ee965..708822bdbfc1 100644 --- a/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/rhel7.6/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel7.6/ext4-misc.patch index bbcfc7e..3385494 100644 --- a/ldiskfs/kernel_patches/patches/rhel7.6/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel7.6/ext4-misc.patch @@ -100,7 +100,7 @@ Index: linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/inode.c =================================================================== --- linux-3.10.0-123.13.2.el7.x86_64.orig/fs/ext4/inode.c +++ linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/inode.c -@@ -5281,3 +5281,18 @@ out: +@@ -5281,3 +5281,19 @@ out: sb_end_pagefault(inode->i_sb); return ret; } diff --git a/ldiskfs/kernel_patches/patches/rhel7.7/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel7.7/ext4-misc.patch index 20fcf26..36ae900 100644 --- a/ldiskfs/kernel_patches/patches/rhel7.7/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel7.7/ext4-misc.patch @@ -99,7 +99,7 @@ Index: linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/inode.c =================================================================== --- linux-3.10.0-123.13.2.el7.x86_64.orig/fs/ext4/inode.c +++ linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/inode.c -@@ -5281,3 +5281,18 @@ out: +@@ -5281,3 +5281,19 @@ out: sb_end_pagefault(inode->i_sb); return ret; } @@ -118,6 +118,7 @@ Index: linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-3.10.0-123.13.2.el7.x86_64/fs/ext4/mballoc.c =================================================================== --- linux-3.10.0-123.13.2.el7.x86_64.orig/fs/ext4/mballoc.c diff --git a/ldiskfs/kernel_patches/patches/rhel8.1/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel8.1/ext4-misc.patch index baeff91..85a02bf 100644 --- a/ldiskfs/kernel_patches/patches/rhel8.1/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel8.1/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.18.0-147.0.3.el8/fs/ext4/inode.c =================================================================== --- linux-4.18.0-147.0.3.el8.orig/fs/ext4/inode.c +++ linux-4.18.0-147.0.3.el8/fs/ext4/inode.c -@@ -6284,3 +6284,18 @@ vm_fault_t ext4_filemap_fault(struct vm_ +@@ -6284,3 +6284,19 @@ vm_fault_t ext4_filemap_fault(struct vm_ return ret; } @@ -92,6 +92,7 @@ Index: linux-4.18.0-147.0.3.el8/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c =================================================================== --- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/rhel8.3/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel8.3/ext4-misc.patch index 47e6bb6..04c9b15 100644 --- a/ldiskfs/kernel_patches/patches/rhel8.3/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel8.3/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c =================================================================== --- linux-4.18.0-240.1.1.el8.orig/fs/ext4/inode.c +++ linux-4.18.0-240.1.1.el8/fs/ext4/inode.c -@@ -6343,3 +6343,19 @@ vm_fault_t ext4_filemap_fault(struct vm_ +@@ -6343,3 +6343,20 @@ vm_fault_t ext4_filemap_fault(struct vm_ return ret; } @@ -93,10 +93,11 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); -Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); +Index: linux-stage/fs/ext4/namei.c =================================================================== ---- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/namei.c -+++ linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c +--- linux-stage.orig/fs/ext4/namei.c ++++ linux-stage/fs/ext4/namei.c @@ -49,7 +49,7 @@ #define NAMEI_RA_BLOCKS 4 #define NAMEI_RA_SIZE (NAMEI_RA_CHUNKS * NAMEI_RA_BLOCKS) diff --git a/ldiskfs/kernel_patches/patches/rhel8.7/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel8.7/ext4-misc.patch index d8a8649..df6d180 100644 --- a/ldiskfs/kernel_patches/patches/rhel8.7/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel8.7/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c =================================================================== --- linux-4.18.0-240.1.1.el8.orig/fs/ext4/inode.c +++ linux-4.18.0-240.1.1.el8/fs/ext4/inode.c -@@ -6343,3 +6343,19 @@ vm_fault_t ext4_filemap_fault(struct vm_ +@@ -6343,3 +6343,20 @@ vm_fault_t ext4_filemap_fault(struct vm_ return ret; } @@ -93,6 +93,7 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c =================================================================== --- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/rhel8/ext4-misc.patch b/ldiskfs/kernel_patches/patches/rhel8/ext4-misc.patch index 90d4626..602f4ef 100644 --- a/ldiskfs/kernel_patches/patches/rhel8/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/rhel8/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/inode.c =================================================================== --- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/inode.c +++ linux-4.18.0-80.1.2.el8_0/fs/ext4/inode.c -@@ -6267,3 +6267,18 @@ int ext4_filemap_fault(struct vm_fault * +@@ -6267,3 +6267,19 @@ int ext4_filemap_fault(struct vm_fault * return err; } @@ -92,6 +92,7 @@ Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c =================================================================== --- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/sles15sp1/ext4-misc.patch b/ldiskfs/kernel_patches/patches/sles15sp1/ext4-misc.patch index 7f94909..7b1fcc5 100644 --- a/ldiskfs/kernel_patches/patches/sles15sp1/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/sles15sp1/ext4-misc.patch @@ -75,7 +75,7 @@ * NOTE! When we get the inode, we're the only people --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6253,3 +6253,18 @@ int ext4_get_next_extent(struct inode *i +@@ -6253,3 +6253,19 @@ int ext4_get_next_extent(struct inode *i result->es_len = 0; return 0; } @@ -94,6 +94,7 @@ +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); --- a/fs/ext4/namei.c +++ b/fs/ext4/namei.c @@ -48,7 +48,7 @@ diff --git a/ldiskfs/kernel_patches/patches/sles15sp4/ext4-misc.patch b/ldiskfs/kernel_patches/patches/sles15sp4/ext4-misc.patch index f157bc2..d2b0c25 100644 --- a/ldiskfs/kernel_patches/patches/sles15sp4/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/sles15sp4/ext4-misc.patch @@ -84,7 +84,7 @@ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 06ee22e..bb109d9 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6204,3 +6204,19 @@ out_error: +@@ -6204,3 +6204,20 @@ out_error: ext4_journal_stop(handle); goto out; } @@ -104,6 +104,7 @@ index 06ee22e..bb109d9 100644 +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index 0d5b8ea..f207dd5 100644 --- a/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/suse15/ext4-misc.patch b/ldiskfs/kernel_patches/patches/suse15/ext4-misc.patch index 7f2b6d3..b2ae379 100644 --- a/ldiskfs/kernel_patches/patches/suse15/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/suse15/ext4-misc.patch @@ -75,7 +75,7 @@ * NOTE! When we get the inode, we're the only people --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6253,3 +6253,18 @@ int ext4_get_next_extent(struct inode *i +@@ -6253,3 +6253,19 @@ int ext4_get_next_extent(struct inode *i result->es_len = 0; return 0; } @@ -94,6 +94,7 @@ +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); --- a/fs/ext4/namei.c +++ b/fs/ext4/namei.c @@ -48,7 +48,7 @@ diff --git a/ldiskfs/kernel_patches/patches/ubuntu18/ext4-misc.patch b/ldiskfs/kernel_patches/patches/ubuntu18/ext4-misc.patch index 77591ab..1d0c967 100644 --- a/ldiskfs/kernel_patches/patches/ubuntu18/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/ubuntu18/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.15.0/fs/ext4/inode.c =================================================================== --- linux-4.15.0.orig/fs/ext4/inode.c +++ linux-4.15.0/fs/ext4/inode.c -@@ -6179,3 +6179,18 @@ int ext4_filemap_fault(struct vm_fault * +@@ -6179,3 +6179,19 @@ int ext4_filemap_fault(struct vm_fault * return err; } @@ -92,6 +92,7 @@ Index: linux-4.15.0/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-4.15.0/fs/ext4/mballoc.c =================================================================== --- linux-4.15.0.orig/fs/ext4/mballoc.c diff --git a/ldiskfs/kernel_patches/patches/ubuntu19/ext4-misc.patch b/ldiskfs/kernel_patches/patches/ubuntu19/ext4-misc.patch index 3076c803..da2b6c4 100644 --- a/ldiskfs/kernel_patches/patches/ubuntu19/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/ubuntu19/ext4-misc.patch @@ -73,7 +73,7 @@ diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 306d64b..890aa90 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -6325,3 +6325,18 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) +@@ -6325,3 +6325,19 @@ vm_fault_t ext4_filemap_fault(struct vm_fault *vmf) return ret; } @@ -92,6 +92,7 @@ index 306d64b..890aa90 100644 +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index 41aa6d9..88a84ec 100644 --- a/fs/ext4/namei.c diff --git a/ldiskfs/kernel_patches/patches/ubuntu20.04.3/ext4-misc.patch b/ldiskfs/kernel_patches/patches/ubuntu20.04.3/ext4-misc.patch index 35b12da..6dd16c4 100644 --- a/ldiskfs/kernel_patches/patches/ubuntu20.04.3/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/ubuntu20.04.3/ext4-misc.patch @@ -70,7 +70,7 @@ diff -ur a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c diff -ur a/fs/ext4/inode.c b/fs/ext4/inode.c --- a/fs/ext4/inode.c 2022-03-24 16:23:11.721060900 -0600 +++ b/fs/ext4/inode.c 2022-03-24 16:24:35.412642805 -0600 -@@ -6222,3 +6222,19 @@ +@@ -6222,3 +6222,20 @@ return ret; } @@ -90,6 +90,7 @@ diff -ur a/fs/ext4/inode.c b/fs/ext4/inode.c +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); +EXPORT_SYMBOL(__ext4_journal_ensure_credits); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); diff -ur a/fs/ext4/namei.c b/fs/ext4/namei.c --- a/fs/ext4/namei.c 2022-03-24 16:23:11.725060881 -0600 +++ b/fs/ext4/namei.c 2022-03-24 16:24:35.420642764 -0600 diff --git a/ldiskfs/kernel_patches/patches/ubuntu2004/ext4-misc.patch b/ldiskfs/kernel_patches/patches/ubuntu2004/ext4-misc.patch index c6fe6a5..94ccf1e 100644 --- a/ldiskfs/kernel_patches/patches/ubuntu2004/ext4-misc.patch +++ b/ldiskfs/kernel_patches/patches/ubuntu2004/ext4-misc.patch @@ -73,7 +73,7 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c =================================================================== --- linux-4.18.0-240.1.1.el8.orig/fs/ext4/inode.c +++ linux-4.18.0-240.1.1.el8/fs/ext4/inode.c -@@ -6343,3 +6343,18 @@ vm_fault_t ext4_filemap_fault(struct vm_ +@@ -6343,3 +6343,19 @@ vm_fault_t ext4_filemap_fault(struct vm_ return ret; } @@ -92,6 +92,7 @@ Index: linux-4.18.0-240.1.1.el8/fs/ext4/inode.c +EXPORT_SYMBOL(__ext4_std_error); +EXPORT_SYMBOL(ext4fs_dirhash); +EXPORT_SYMBOL(ext4_get_inode_loc); ++EXPORT_SYMBOL(ext4_chunk_trans_blocks); Index: linux-4.18.0-80.1.2.el8_0/fs/ext4/namei.c =================================================================== --- linux-4.18.0-80.1.2.el8_0.orig/fs/ext4/namei.c diff --git a/lustre/osd-ldiskfs/osd_io.c b/lustre/osd-ldiskfs/osd_io.c index e0338e9..1d4703f 100644 --- a/lustre/osd-ldiskfs/osd_io.c +++ b/lustre/osd-ldiskfs/osd_io.c @@ -974,37 +974,6 @@ cleanup: osd_bufs_put(env, dt, lnb - i, i); return rc; } -/* Borrow @ext4_chunk_trans_blocks */ -static int osd_chunk_trans_blocks(struct inode *inode, int nrblocks) -{ - ldiskfs_group_t groups; - int gdpblocks; - int idxblocks; - int depth; - int ret; - - depth = ext_depth(inode); - idxblocks = depth * 2; - - /* - * Now let's see how many group bitmaps and group descriptors need - * to account. - */ - groups = idxblocks + 1; - gdpblocks = groups; - if (groups > LDISKFS_SB(inode->i_sb)->s_groups_count) - groups = LDISKFS_SB(inode->i_sb)->s_groups_count; - if (gdpblocks > LDISKFS_SB(inode->i_sb)->s_gdb_count) - gdpblocks = LDISKFS_SB(inode->i_sb)->s_gdb_count; - - /* bitmaps and block group descriptor blocks */ - ret = idxblocks + groups + gdpblocks; - - /* Blocks for super block, inode, quota and xattr blocks */ - ret += LDISKFS_META_TRANS_BLOCKS(inode->i_sb); - - return ret; -} #ifdef HAVE_LDISKFS_JOURNAL_ENSURE_CREDITS static int osd_extend_restart_trans(handle_t *handle, int needed, @@ -2442,7 +2411,7 @@ static int osd_fallocate_preallocate(const struct lu_env *env, /* * credits to insert 1 extent into extent tree. */ - credits = osd_chunk_trans_blocks(inode, blen); + credits = ldiskfs_chunk_trans_blocks(inode, blen); depth = ext_depth(inode); while (rc >= 0 && blen) { @@ -2452,7 +2421,7 @@ static int osd_fallocate_preallocate(const struct lu_env *env, * Recalculate credits when extent tree depth changes. */ if (depth != ext_depth(inode)) { - credits = osd_chunk_trans_blocks(inode, blen); + credits = ldiskfs_chunk_trans_blocks(inode, blen); depth = ext_depth(inode); }