diff options
author | Qu Wenruo <quwenruo@cn.fujitsu.com> | 2017-01-24 11:03:06 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2017-03-08 13:00:45 +0100 |
commit | c92852205265cf8ed48671b2405b071fe5870a97 (patch) | |
tree | 1abc18acd0483005ca3cba352ce17666be6762ec | |
parent | a2203246ae483d09114329d5d1f898efb23d6168 (diff) |
btrfs-progs: Introduce macro to calculate backup superblock offset
Introduce a new macro, BTRFS_SB_OFFSET() to calculate backup superblock
offset, this is handy if one wants to initialize static array at
declaration time.
Suggested-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | disk-io.h | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -98,11 +98,17 @@ enum btrfs_read_sb_flags { SBREAD_PARTIAL = (1 << 1), }; +/* + * Use macro to define mirror super block position, + * so we can use it in static array initialization + */ +#define BTRFS_SB_MIRROR_OFFSET(mirror) ((u64)(SZ_16K) << \ + (BTRFS_SUPER_MIRROR_SHIFT * (mirror))) + static inline u64 btrfs_sb_offset(int mirror) { - u64 start = SZ_16K; if (mirror) - return start << (BTRFS_SUPER_MIRROR_SHIFT * mirror); + return BTRFS_SB_MIRROR_OFFSET(mirror); return BTRFS_SUPER_INFO_OFFSET; } |