mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 05:34:13 +08:00
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: Jan Kara <jack@suse.cz>
This commit is contained in:
parent
e57191a8d4
commit
b316c443b4
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user