Skip to content

Commit 9bd1f44

Browse files
josefbacikkdave
authored andcommitted
btrfs: add stack helpers for a few btrfs items
We don't have these defined in the kernel because we don't have any users of these helpers. However we do use them in btrfs-progs, so define them to make keeping accessors.h in sync between progs and the kernel easier. Signed-off-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: David Sterba <dsterba@suse.com>
1 parent c806bc8 commit 9bd1f44

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

fs/btrfs/accessors.h

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,12 +221,26 @@ static inline u64 btrfs_stripe_offset_nr(const struct extent_buffer *eb,
221221
return btrfs_stripe_offset(eb, btrfs_stripe_nr(c, nr));
222222
}
223223

224+
static inline void btrfs_set_stripe_offset_nr(struct extent_buffer *eb,
225+
struct btrfs_chunk *c, int nr,
226+
u64 val)
227+
{
228+
btrfs_set_stripe_offset(eb, btrfs_stripe_nr(c, nr), val);
229+
}
230+
224231
static inline u64 btrfs_stripe_devid_nr(const struct extent_buffer *eb,
225232
struct btrfs_chunk *c, int nr)
226233
{
227234
return btrfs_stripe_devid(eb, btrfs_stripe_nr(c, nr));
228235
}
229236

237+
static inline void btrfs_set_stripe_devid_nr(struct extent_buffer *eb,
238+
struct btrfs_chunk *c, int nr,
239+
u64 val)
240+
{
241+
btrfs_set_stripe_devid(eb, btrfs_stripe_nr(c, nr), val);
242+
}
243+
230244
/* struct btrfs_block_group_item */
231245
BTRFS_SETGET_STACK_FUNCS(stack_block_group_used, struct btrfs_block_group_item,
232246
used, 64);
@@ -248,6 +262,8 @@ BTRFS_SETGET_FUNCS(free_space_flags, struct btrfs_free_space_info, flags, 32);
248262
/* struct btrfs_inode_ref */
249263
BTRFS_SETGET_FUNCS(inode_ref_name_len, struct btrfs_inode_ref, name_len, 16);
250264
BTRFS_SETGET_FUNCS(inode_ref_index, struct btrfs_inode_ref, index, 64);
265+
BTRFS_SETGET_STACK_FUNCS(stack_inode_ref_name_len, struct btrfs_inode_ref, name_len, 16);
266+
BTRFS_SETGET_STACK_FUNCS(stack_inode_ref_index, struct btrfs_inode_ref, index, 64);
251267

252268
/* struct btrfs_inode_extref */
253269
BTRFS_SETGET_FUNCS(inode_extref_parent, struct btrfs_inode_extref,
@@ -297,6 +313,14 @@ BTRFS_SETGET_FUNCS(dev_extent_chunk_objectid, struct btrfs_dev_extent,
297313
BTRFS_SETGET_FUNCS(dev_extent_chunk_offset, struct btrfs_dev_extent,
298314
chunk_offset, 64);
299315
BTRFS_SETGET_FUNCS(dev_extent_length, struct btrfs_dev_extent, length, 64);
316+
BTRFS_SETGET_STACK_FUNCS(stack_dev_extent_chunk_tree, struct btrfs_dev_extent,
317+
chunk_tree, 64);
318+
BTRFS_SETGET_STACK_FUNCS(stack_dev_extent_chunk_objectid, struct btrfs_dev_extent,
319+
chunk_objectid, 64);
320+
BTRFS_SETGET_STACK_FUNCS(stack_dev_extent_chunk_offset, struct btrfs_dev_extent,
321+
chunk_offset, 64);
322+
BTRFS_SETGET_STACK_FUNCS(stack_dev_extent_length, struct btrfs_dev_extent, length, 64);
323+
300324
BTRFS_SETGET_FUNCS(extent_refs, struct btrfs_extent_item, refs, 64);
301325
BTRFS_SETGET_FUNCS(extent_generation, struct btrfs_extent_item, generation, 64);
302326
BTRFS_SETGET_FUNCS(extent_flags, struct btrfs_extent_item, flags, 64);
@@ -479,6 +503,9 @@ BTRFS_SETGET_FUNCS(dir_log_end, struct btrfs_dir_log_item, end, 64);
479503
BTRFS_SETGET_FUNCS(root_ref_dirid, struct btrfs_root_ref, dirid, 64);
480504
BTRFS_SETGET_FUNCS(root_ref_sequence, struct btrfs_root_ref, sequence, 64);
481505
BTRFS_SETGET_FUNCS(root_ref_name_len, struct btrfs_root_ref, name_len, 16);
506+
BTRFS_SETGET_STACK_FUNCS(stack_root_ref_dirid, struct btrfs_root_ref, dirid, 64);
507+
BTRFS_SETGET_STACK_FUNCS(stack_root_ref_sequence, struct btrfs_root_ref, sequence, 64);
508+
BTRFS_SETGET_STACK_FUNCS(stack_root_ref_name_len, struct btrfs_root_ref, name_len, 16);
482509

483510
/* struct btrfs_dir_item */
484511
BTRFS_SETGET_FUNCS(dir_data_len, struct btrfs_dir_item, data_len, 16);
@@ -972,6 +999,16 @@ BTRFS_SETGET_FUNCS(qgroup_limit_rsv_rfer, struct btrfs_qgroup_limit_item,
972999
rsv_rfer, 64);
9731000
BTRFS_SETGET_FUNCS(qgroup_limit_rsv_excl, struct btrfs_qgroup_limit_item,
9741001
rsv_excl, 64);
1002+
BTRFS_SETGET_STACK_FUNCS(stack_qgroup_limit_flags,
1003+
struct btrfs_qgroup_limit_item, flags, 64);
1004+
BTRFS_SETGET_STACK_FUNCS(stack_qgroup_limit_max_rfer,
1005+
struct btrfs_qgroup_limit_item, max_rfer, 64);
1006+
BTRFS_SETGET_STACK_FUNCS(stack_qgroup_limit_max_excl,
1007+
struct btrfs_qgroup_limit_item, max_excl, 64);
1008+
BTRFS_SETGET_STACK_FUNCS(stack_qgroup_limit_rsv_rfer,
1009+
struct btrfs_qgroup_limit_item, rsv_rfer, 64);
1010+
BTRFS_SETGET_STACK_FUNCS(stack_qgroup_limit_rsv_excl,
1011+
struct btrfs_qgroup_limit_item, rsv_excl, 64);
9751012

9761013
/* btrfs_dev_replace_item */
9771014
BTRFS_SETGET_FUNCS(dev_replace_src_devid,

0 commit comments

Comments
 (0)