mirror of
https://github.com/kdave/btrfs-progs
synced 2025-02-06 04:41:58 +00:00
btrfs-progs: check: Move check_dev_size_alignment to check/common.c
Reviewed-by: Su Yue <suy.fnst@cn.fujitsu.com> Signed-off-by: Qu Wenruo <wqu@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
4e84c8251a
commit
d0b191b880
@ -237,3 +237,18 @@ out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* Extra (optional) check for dev_item size to report possbile problem on a new
|
||||
* kernel.
|
||||
*/
|
||||
void check_dev_size_alignment(u64 devid, u64 total_bytes, u32 sectorsize)
|
||||
{
|
||||
if (!IS_ALIGNED(total_bytes, sectorsize)) {
|
||||
warning(
|
||||
"unaligned total_bytes detected for devid %llu, have %llu should be aligned to %u",
|
||||
devid, total_bytes, sectorsize);
|
||||
warning(
|
||||
"this is OK for older kernel, but may cause kernel warning for newer kernels");
|
||||
warning("this can be fixed by 'btrfs rescue fix-device-size'");
|
||||
}
|
||||
}
|
||||
|
@ -90,5 +90,6 @@ int link_inode_to_lostfound(struct btrfs_trans_handle *trans,
|
||||
struct btrfs_path *path,
|
||||
u64 ino, char *namebuf, u32 name_len,
|
||||
u8 filetype, u64 *ref_count);
|
||||
void check_dev_size_alignment(u64 devid, u64 total_bytes, u32 sectorsize);
|
||||
|
||||
#endif
|
||||
|
16
check/main.c
16
check/main.c
@ -10714,22 +10714,6 @@ static int check_device_used(struct device_record *dev_rec,
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Extra (optional) check for dev_item size to report possbile problem on a new
|
||||
* kernel.
|
||||
*/
|
||||
static void check_dev_size_alignment(u64 devid, u64 total_bytes, u32 sectorsize)
|
||||
{
|
||||
if (!IS_ALIGNED(total_bytes, sectorsize)) {
|
||||
warning(
|
||||
"unaligned total_bytes detected for devid %llu, have %llu should be aligned to %u",
|
||||
devid, total_bytes, sectorsize);
|
||||
warning(
|
||||
"this is OK for older kernel, but may cause kernel warning for newer kernels");
|
||||
warning("this can be fixed by 'btrfs rescue fix-device-size'");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Unlike device size alignment check above, some super total_bytes check
|
||||
* failure can lead to mount failure for newer kernel.
|
||||
|
Loading…
Reference in New Issue
Block a user