X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=lwext4%2Fext4_extent_full.c;h=b8347f7b54117f3b6edcd9d4beec0c19b87d25c9;hb=4e32e2da452116b1cc8f79902fb7ea704726557f;hp=e79bcaa58c922b3a3926bcaa33b48f2bd93e0972;hpb=765eb290a7700d817076ea633b1ea88ca0a21713;p=lwext4.git diff --git a/lwext4/ext4_extent_full.c b/lwext4/ext4_extent_full.c index e79bcaa..b8347f7 100644 --- a/lwext4/ext4_extent_full.c +++ b/lwext4/ext4_extent_full.c @@ -392,6 +392,7 @@ static int ext4_ext_check(struct ext4_inode_ref *inode_ref, ext4_fsblk_t pblk __unused) { struct ext4_extent_tail *tail; + struct ext4_sblock *sb = &inode_ref->fs->sb; const char *error_msg; (void)error_msg; @@ -413,10 +414,13 @@ static int ext4_ext_check(struct ext4_inode_ref *inode_ref, } tail = find_ext4_extent_tail(eh); - struct ext4_sblock *sb = &inode_ref->fs->sb; if (ext4_sb_feature_ro_com(sb, EXT4_FRO_COM_METADATA_CSUM)) { if (tail->et_checksum != to_le32(ext4_ext_block_csum(inode_ref, eh))) { - /* FIXME: Warning: extent checksum damaged? */ + ext4_dbg(DEBUG_EXTENT, + DBG_WARN "Extent block checksum failed." + "Blocknr: %" PRIu64"\n", + pblk); + } } @@ -1147,6 +1151,7 @@ static int ext4_ext_grow_indepth(struct ext4_inode_ref *inode_ref, to_le16(ext4_ext_space_block(inode_ref)); neh->magic = to_le16(EXT4_EXTENT_MAGIC); + ext4_extent_block_csum_set(inode_ref, neh); /* Update top-level index: num,max,pointer */ neh = ext_inode_hdr(inode_ref->inode); @@ -1161,7 +1166,6 @@ static int ext4_ext_grow_indepth(struct ext4_inode_ref *inode_ref, } neh->depth = to_le16(to_le16(neh->depth) + 1); - ext4_extent_block_csum_set(inode_ref, neh); bh.dirty = true; inode_ref->dirty = true; ext4_block_set(inode_ref->fs->bdev, &bh);