Commit b316c443 authored by Jan Kara's avatar Jan Kara
Browse files

udf: Keep i_lenExtents consistent with the total length of extents



When rounding the last extent to blocksize in inode_getblk() we forgot
to update also i_lenExtents to match the new extent length. This
inconsistency can later confuse some assertion checks.

Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent e57191a8
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -677,6 +677,9 @@ static sector_t inode_getblk(struct inode *inode, sector_t block,
			elen = EXT_RECORDED_ALLOCATED |
				((elen + inode->i_sb->s_blocksize - 1) &
				 ~(inode->i_sb->s_blocksize - 1));
			iinfo->i_lenExtents =
				ALIGN(iinfo->i_lenExtents,
				      inode->i_sb->s_blocksize);
			udf_write_aext(inode, &cur_epos, &eloc, elen, 1);
		}
		newblock = udf_get_lb_pblock(inode->i_sb, &eloc, offset);