2022-07-23 22:41:28

by Sweet Tea Dorminy

[permalink] [raw]
Subject: [PATCH] btrfs: change btrfs_insert_file_extent() to btrfs_insert_hole_extent()

From: Omar Sandoval <[email protected]>

btrfs_insert_file_extent() is only ever used to insert holes, so rename
it and remove the redundant parameters.

Signed-off-by: Omar Sandoval <[email protected]>
Signed-off-by: Sweet Tea Dorminy <[email protected]>
---
fs/btrfs/ctree.h | 9 +++------
fs/btrfs/file-item.c | 21 +++++++++------------
fs/btrfs/file.c | 4 ++--
fs/btrfs/inode.c | 4 ++--
fs/btrfs/tree-log.c | 13 +++++--------
5 files changed, 21 insertions(+), 30 deletions(-)

diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index 4db85b9dc7ed..3482eea0f1b8 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -3258,12 +3258,9 @@ int btrfs_find_orphan_item(struct btrfs_root *root, u64 offset);
int btrfs_del_csums(struct btrfs_trans_handle *trans,
struct btrfs_root *root, u64 bytenr, u64 len);
blk_status_t btrfs_lookup_bio_sums(struct inode *inode, struct bio *bio, u8 *dst);
-int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
- struct btrfs_root *root,
- u64 objectid, u64 pos,
- u64 disk_offset, u64 disk_num_bytes,
- u64 num_bytes, u64 offset, u64 ram_bytes,
- u8 compression, u8 encryption, u16 other_encoding);
+int btrfs_insert_hole_extent(struct btrfs_trans_handle *trans,
+ struct btrfs_root *root, u64 objectid, u64 pos,
+ u64 num_bytes);
int btrfs_lookup_file_extent(struct btrfs_trans_handle *trans,
struct btrfs_root *root,
struct btrfs_path *path, u64 objectid,
diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c
index c828f971a346..29999686d234 100644
--- a/fs/btrfs/file-item.c
+++ b/fs/btrfs/file-item.c
@@ -129,12 +129,9 @@ static inline u32 max_ordered_sum_bytes(struct btrfs_fs_info *fs_info,
return ncsums * fs_info->sectorsize;
}

-int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
+int btrfs_insert_hole_extent(struct btrfs_trans_handle *trans,
struct btrfs_root *root,
- u64 objectid, u64 pos,
- u64 disk_offset, u64 disk_num_bytes,
- u64 num_bytes, u64 offset, u64 ram_bytes,
- u8 compression, u8 encryption, u16 other_encoding)
+ u64 objectid, u64 pos, u64 num_bytes)
{
int ret = 0;
struct btrfs_file_extent_item *item;
@@ -157,16 +154,16 @@ int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
leaf = path->nodes[0];
item = btrfs_item_ptr(leaf, path->slots[0],
struct btrfs_file_extent_item);
- btrfs_set_file_extent_disk_bytenr(leaf, item, disk_offset);
- btrfs_set_file_extent_disk_num_bytes(leaf, item, disk_num_bytes);
- btrfs_set_file_extent_offset(leaf, item, offset);
+ btrfs_set_file_extent_disk_bytenr(leaf, item, 0);
+ btrfs_set_file_extent_disk_num_bytes(leaf, item, 0);
+ btrfs_set_file_extent_offset(leaf, item, 0);
btrfs_set_file_extent_num_bytes(leaf, item, num_bytes);
- btrfs_set_file_extent_ram_bytes(leaf, item, ram_bytes);
+ btrfs_set_file_extent_ram_bytes(leaf, item, num_bytes);
btrfs_set_file_extent_generation(leaf, item, trans->transid);
btrfs_set_file_extent_type(leaf, item, BTRFS_FILE_EXTENT_REG);
- btrfs_set_file_extent_compression(leaf, item, compression);
- btrfs_set_file_extent_encryption(leaf, item, encryption);
- btrfs_set_file_extent_other_encoding(leaf, item, other_encoding);
+ btrfs_set_file_extent_compression(leaf, item, 0);
+ btrfs_set_file_extent_encryption(leaf, item, 0);
+ btrfs_set_file_extent_other_encoding(leaf, item, 0);

btrfs_mark_buffer_dirty(leaf);
out:
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 687fb372093f..d199275adfa4 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -2520,8 +2520,8 @@ static int fill_holes(struct btrfs_trans_handle *trans,
}
btrfs_release_path(path);

- ret = btrfs_insert_file_extent(trans, root, btrfs_ino(inode),
- offset, 0, 0, end - offset, 0, end - offset, 0, 0, 0);
+ ret = btrfs_insert_hole_extent(trans, root, btrfs_ino(inode), offset,
+ end - offset);
if (ret)
return ret;

diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index ecc5fa3343fc..f2c83ef8d4aa 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -5022,8 +5022,8 @@ static int maybe_insert_hole(struct btrfs_root *root, struct btrfs_inode *inode,
return ret;
}

- ret = btrfs_insert_file_extent(trans, root, btrfs_ino(inode),
- offset, 0, 0, len, 0, len, 0, 0, 0);
+ ret = btrfs_insert_hole_extent(trans, root, btrfs_ino(inode), offset,
+ len);
if (ret) {
btrfs_abort_transaction(trans, ret);
} else {
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index dcf75a8daa20..f99fd0a08902 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -5219,10 +5219,9 @@ static int btrfs_log_holes(struct btrfs_trans_handle *trans,
* leafs from the log root.
*/
btrfs_release_path(path);
- ret = btrfs_insert_file_extent(trans, root->log_root,
- ino, prev_extent_end, 0,
- 0, hole_len, 0, hole_len,
- 0, 0, 0);
+ ret = btrfs_insert_hole_extent(trans, root->log_root,
+ ino, prev_extent_end,
+ hole_len);
if (ret < 0)
return ret;

@@ -5251,10 +5250,8 @@ static int btrfs_log_holes(struct btrfs_trans_handle *trans,

btrfs_release_path(path);
hole_len = ALIGN(i_size - prev_extent_end, fs_info->sectorsize);
- ret = btrfs_insert_file_extent(trans, root->log_root,
- ino, prev_extent_end, 0, 0,
- hole_len, 0, hole_len,
- 0, 0, 0);
+ ret = btrfs_insert_hole_extent(trans, root->log_root, ino,
+ prev_extent_end, hole_len);
if (ret < 0)
return ret;
}
--
2.35.1


2022-07-24 00:14:34

by Qu Wenruo

[permalink] [raw]
Subject: Re: [PATCH] btrfs: change btrfs_insert_file_extent() to btrfs_insert_hole_extent()



On 2022/7/24 06:25, Sweet Tea Dorminy wrote:
> From: Omar Sandoval <[email protected]>
>
> btrfs_insert_file_extent() is only ever used to insert holes, so rename
> it and remove the redundant parameters.
>
> Signed-off-by: Omar Sandoval <[email protected]>
> Signed-off-by: Sweet Tea Dorminy <[email protected]>

Reviewed-by: Qu Wenruo <[email protected]>

Thanks,
Qu
> ---
> fs/btrfs/ctree.h | 9 +++------
> fs/btrfs/file-item.c | 21 +++++++++------------
> fs/btrfs/file.c | 4 ++--
> fs/btrfs/inode.c | 4 ++--
> fs/btrfs/tree-log.c | 13 +++++--------
> 5 files changed, 21 insertions(+), 30 deletions(-)
>
> diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
> index 4db85b9dc7ed..3482eea0f1b8 100644
> --- a/fs/btrfs/ctree.h
> +++ b/fs/btrfs/ctree.h
> @@ -3258,12 +3258,9 @@ int btrfs_find_orphan_item(struct btrfs_root *root, u64 offset);
> int btrfs_del_csums(struct btrfs_trans_handle *trans,
> struct btrfs_root *root, u64 bytenr, u64 len);
> blk_status_t btrfs_lookup_bio_sums(struct inode *inode, struct bio *bio, u8 *dst);
> -int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
> - struct btrfs_root *root,
> - u64 objectid, u64 pos,
> - u64 disk_offset, u64 disk_num_bytes,
> - u64 num_bytes, u64 offset, u64 ram_bytes,
> - u8 compression, u8 encryption, u16 other_encoding);
> +int btrfs_insert_hole_extent(struct btrfs_trans_handle *trans,
> + struct btrfs_root *root, u64 objectid, u64 pos,
> + u64 num_bytes);
> int btrfs_lookup_file_extent(struct btrfs_trans_handle *trans,
> struct btrfs_root *root,
> struct btrfs_path *path, u64 objectid,
> diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c
> index c828f971a346..29999686d234 100644
> --- a/fs/btrfs/file-item.c
> +++ b/fs/btrfs/file-item.c
> @@ -129,12 +129,9 @@ static inline u32 max_ordered_sum_bytes(struct btrfs_fs_info *fs_info,
> return ncsums * fs_info->sectorsize;
> }
>
> -int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
> +int btrfs_insert_hole_extent(struct btrfs_trans_handle *trans,
> struct btrfs_root *root,
> - u64 objectid, u64 pos,
> - u64 disk_offset, u64 disk_num_bytes,
> - u64 num_bytes, u64 offset, u64 ram_bytes,
> - u8 compression, u8 encryption, u16 other_encoding)
> + u64 objectid, u64 pos, u64 num_bytes)
> {
> int ret = 0;
> struct btrfs_file_extent_item *item;
> @@ -157,16 +154,16 @@ int btrfs_insert_file_extent(struct btrfs_trans_handle *trans,
> leaf = path->nodes[0];
> item = btrfs_item_ptr(leaf, path->slots[0],
> struct btrfs_file_extent_item);
> - btrfs_set_file_extent_disk_bytenr(leaf, item, disk_offset);
> - btrfs_set_file_extent_disk_num_bytes(leaf, item, disk_num_bytes);
> - btrfs_set_file_extent_offset(leaf, item, offset);
> + btrfs_set_file_extent_disk_bytenr(leaf, item, 0);
> + btrfs_set_file_extent_disk_num_bytes(leaf, item, 0);
> + btrfs_set_file_extent_offset(leaf, item, 0);
> btrfs_set_file_extent_num_bytes(leaf, item, num_bytes);
> - btrfs_set_file_extent_ram_bytes(leaf, item, ram_bytes);
> + btrfs_set_file_extent_ram_bytes(leaf, item, num_bytes);
> btrfs_set_file_extent_generation(leaf, item, trans->transid);
> btrfs_set_file_extent_type(leaf, item, BTRFS_FILE_EXTENT_REG);
> - btrfs_set_file_extent_compression(leaf, item, compression);
> - btrfs_set_file_extent_encryption(leaf, item, encryption);
> - btrfs_set_file_extent_other_encoding(leaf, item, other_encoding);
> + btrfs_set_file_extent_compression(leaf, item, 0);
> + btrfs_set_file_extent_encryption(leaf, item, 0);
> + btrfs_set_file_extent_other_encoding(leaf, item, 0);
>
> btrfs_mark_buffer_dirty(leaf);
> out:
> diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
> index 687fb372093f..d199275adfa4 100644
> --- a/fs/btrfs/file.c
> +++ b/fs/btrfs/file.c
> @@ -2520,8 +2520,8 @@ static int fill_holes(struct btrfs_trans_handle *trans,
> }
> btrfs_release_path(path);
>
> - ret = btrfs_insert_file_extent(trans, root, btrfs_ino(inode),
> - offset, 0, 0, end - offset, 0, end - offset, 0, 0, 0);
> + ret = btrfs_insert_hole_extent(trans, root, btrfs_ino(inode), offset,
> + end - offset);
> if (ret)
> return ret;
>
> diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
> index ecc5fa3343fc..f2c83ef8d4aa 100644
> --- a/fs/btrfs/inode.c
> +++ b/fs/btrfs/inode.c
> @@ -5022,8 +5022,8 @@ static int maybe_insert_hole(struct btrfs_root *root, struct btrfs_inode *inode,
> return ret;
> }
>
> - ret = btrfs_insert_file_extent(trans, root, btrfs_ino(inode),
> - offset, 0, 0, len, 0, len, 0, 0, 0);
> + ret = btrfs_insert_hole_extent(trans, root, btrfs_ino(inode), offset,
> + len);
> if (ret) {
> btrfs_abort_transaction(trans, ret);
> } else {
> diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
> index dcf75a8daa20..f99fd0a08902 100644
> --- a/fs/btrfs/tree-log.c
> +++ b/fs/btrfs/tree-log.c
> @@ -5219,10 +5219,9 @@ static int btrfs_log_holes(struct btrfs_trans_handle *trans,
> * leafs from the log root.
> */
> btrfs_release_path(path);
> - ret = btrfs_insert_file_extent(trans, root->log_root,
> - ino, prev_extent_end, 0,
> - 0, hole_len, 0, hole_len,
> - 0, 0, 0);
> + ret = btrfs_insert_hole_extent(trans, root->log_root,
> + ino, prev_extent_end,
> + hole_len);
> if (ret < 0)
> return ret;
>
> @@ -5251,10 +5250,8 @@ static int btrfs_log_holes(struct btrfs_trans_handle *trans,
>
> btrfs_release_path(path);
> hole_len = ALIGN(i_size - prev_extent_end, fs_info->sectorsize);
> - ret = btrfs_insert_file_extent(trans, root->log_root,
> - ino, prev_extent_end, 0, 0,
> - hole_len, 0, hole_len,
> - 0, 0, 0);
> + ret = btrfs_insert_hole_extent(trans, root->log_root, ino,
> + prev_extent_end, hole_len);
> if (ret < 0)
> return ret;
> }

2022-08-04 15:57:13

by David Sterba

[permalink] [raw]
Subject: Re: [PATCH] btrfs: change btrfs_insert_file_extent() to btrfs_insert_hole_extent()

On Sat, Jul 23, 2022 at 06:25:29PM -0400, Sweet Tea Dorminy wrote:
> From: Omar Sandoval <[email protected]>
>
> btrfs_insert_file_extent() is only ever used to insert holes, so rename
> it and remove the redundant parameters.
>
> Signed-off-by: Omar Sandoval <[email protected]>
> Signed-off-by: Sweet Tea Dorminy <[email protected]>

Added to misc-next, thanks. The patch is from long ago so there was
probably intention to do more than just inserting hole but I don't
remember any pending feature that would use the helper. If we need it it
can be extended again.