Ah, sorry, I should be comparing against the superblock, not the
group_desc.

uint16_t s_ninodes;
uint16_t s_nzones;
uint32_t                s_inodes_count;

uint16_t s_imap_blocks;
uint16_t s_zmap_blocks;
uint32_t                s_blocks_count;

uint16_t s_firstdatazone;
uint16_t s_log_zone_size;
uint32_t                s_r_blocks_count;

uint32_t s_max_size;
uint32_t                s_free_blocks_count;

uint16_t s_magic;
uint32_t                s_free_inodes_count;

for "sb->s_imap_blocks == 0 || sb->s_zmap_blocks == 0" to fail, the low
32bits of the ext4 max block count must be >65536 and not a multiple of
65536, so adjust the "dd" in comment 3 to:

dd if=/dev/zero of=test.ext4 bs=1 count=1 seek=1026M

this will result in non-zero values for both s_imap_blocks and
s_zmap_blocks:

$ hexdump -s 0x404 -n 4 -e '2/2 "%d " "\n"' /tmp/test.ext4
512 4

-- 
mount ext fileystem fails, booting fails, blkid produces no output
https://bugs.launchpad.net/bugs/518582
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to