mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-08 23:26:28 -04:00
btrfs: mark extent buffer alignment checks as unlikely
We are not expecting to ever fail the extent buffer alignment checks, so mark them as unlikely to allow the compiler to potentially generate more optimized code. Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Filipe Manana <fdmanana@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
committed by
David Sterba
parent
6a9e1d1a65
commit
8f0534ec96
@@ -3228,25 +3228,25 @@ static bool check_eb_alignment(struct btrfs_fs_info *fs_info, u64 start)
|
||||
{
|
||||
const u32 nodesize = fs_info->nodesize;
|
||||
|
||||
if (!IS_ALIGNED(start, fs_info->sectorsize)) {
|
||||
if (unlikely(!IS_ALIGNED(start, fs_info->sectorsize))) {
|
||||
btrfs_err(fs_info, "bad tree block start %llu", start);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (nodesize < PAGE_SIZE && !IS_ALIGNED(start, nodesize)) {
|
||||
if (unlikely(nodesize < PAGE_SIZE && !IS_ALIGNED(start, nodesize))) {
|
||||
btrfs_err(fs_info,
|
||||
"tree block is not nodesize aligned, start %llu nodesize %u",
|
||||
start, nodesize);
|
||||
return true;
|
||||
}
|
||||
if (nodesize >= PAGE_SIZE && !PAGE_ALIGNED(start)) {
|
||||
if (unlikely(nodesize >= PAGE_SIZE && !PAGE_ALIGNED(start))) {
|
||||
btrfs_err(fs_info,
|
||||
"tree block is not page aligned, start %llu nodesize %u",
|
||||
start, nodesize);
|
||||
return true;
|
||||
}
|
||||
if (!IS_ALIGNED(start, nodesize) &&
|
||||
!test_and_set_bit(BTRFS_FS_UNALIGNED_TREE_BLOCK, &fs_info->flags)) {
|
||||
if (unlikely(!IS_ALIGNED(start, nodesize) &&
|
||||
!test_and_set_bit(BTRFS_FS_UNALIGNED_TREE_BLOCK, &fs_info->flags))) {
|
||||
btrfs_warn(fs_info,
|
||||
"tree block not nodesize aligned, start %llu nodesize %u, can be resolved by a full metadata balance",
|
||||
start, nodesize);
|
||||
|
||||
Reference in New Issue
Block a user