From: Kay Sievers Date: Sun, 23 Oct 2005 16:54:34 +0000 (+0200) Subject: volume_id: move blocksize validation to fix jbd recognition X-Git-Tag: 174~2519 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=f3c14c68499d318b2beb56cee7c5f88f2c04dc62 volume_id: move blocksize validation to fix jbd recognition Signed-off-by: Kay Sievers --- diff --git a/extras/volume_id/volume_id/ext.c b/extras/volume_id/volume_id/ext.c index 7080f1dd3..e80ac90ad 100644 --- a/extras/volume_id/volume_id/ext.c +++ b/extras/volume_id/volume_id/ext.c @@ -86,13 +86,6 @@ int volume_id_probe_ext(struct volume_id *id, uint64_t off) if (es->s_magic != cpu_to_le16(EXT_SUPER_MAGIC)) return -1; - bsize = 0x200 << le32_to_cpu(es->s_log_block_size); - dbg("ext blocksize 0x%zx", bsize); - if (bsize < EXT3_MIN_BLOCK_SIZE || bsize > EXT3_MAX_BLOCK_SIZE) { - dbg("invalid ext blocksize"); - return -1; - } - volume_id_set_label_raw(id, es->s_volume_name, 16); volume_id_set_label_string(id, es->s_volume_name, 16); volume_id_set_uuid(id, es->s_uuid, UUID_DCE); @@ -106,6 +99,13 @@ int volume_id_probe_ext(struct volume_id *id, uint64_t off) return 0; } + bsize = 0x200 << le32_to_cpu(es->s_log_block_size); + dbg("ext blocksize 0x%zx", bsize); + if (bsize < EXT3_MIN_BLOCK_SIZE || bsize > EXT3_MAX_BLOCK_SIZE) { + dbg("invalid ext blocksize"); + return -1; + } + /* check for ext2 / ext3 */ volume_id_set_usage(id, VOLUME_ID_FILESYSTEM); if ((le32_to_cpu(es->s_feature_compat) & EXT3_FEATURE_COMPAT_HAS_JOURNAL) != 0)