|
@@ -788,14 +788,22 @@ static int sanity_check_raw_super(struct super_block *sb,
|
|
return 1;
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
|
|
- if (le32_to_cpu(raw_super->log_sectorsize) !=
|
|
|
|
- F2FS_LOG_SECTOR_SIZE) {
|
|
|
|
- f2fs_msg(sb, KERN_INFO, "Invalid log sectorsize");
|
|
|
|
|
|
+ /* Currently, support 512/1024/2048/4096 bytes sector size */
|
|
|
|
+ if (le32_to_cpu(raw_super->log_sectorsize) >
|
|
|
|
+ F2FS_MAX_LOG_SECTOR_SIZE ||
|
|
|
|
+ le32_to_cpu(raw_super->log_sectorsize) <
|
|
|
|
+ F2FS_MIN_LOG_SECTOR_SIZE) {
|
|
|
|
+ f2fs_msg(sb, KERN_INFO, "Invalid log sectorsize (%u)",
|
|
|
|
+ le32_to_cpu(raw_super->log_sectorsize));
|
|
return 1;
|
|
return 1;
|
|
}
|
|
}
|
|
- if (le32_to_cpu(raw_super->log_sectors_per_block) !=
|
|
|
|
- F2FS_LOG_SECTORS_PER_BLOCK) {
|
|
|
|
- f2fs_msg(sb, KERN_INFO, "Invalid log sectors per block");
|
|
|
|
|
|
+ if (le32_to_cpu(raw_super->log_sectors_per_block) +
|
|
|
|
+ le32_to_cpu(raw_super->log_sectorsize) !=
|
|
|
|
+ F2FS_MAX_LOG_SECTOR_SIZE) {
|
|
|
|
+ f2fs_msg(sb, KERN_INFO,
|
|
|
|
+ "Invalid log sectors per block(%u) log sectorsize(%u)",
|
|
|
|
+ le32_to_cpu(raw_super->log_sectors_per_block),
|
|
|
|
+ le32_to_cpu(raw_super->log_sectorsize));
|
|
return 1;
|
|
return 1;
|
|
}
|
|
}
|
|
return 0;
|
|
return 0;
|