ext4: mext_insert_extents should update extent block checksum
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:
parent
eb9cc7e16b
commit
2656497b26
|
@ -270,5 +270,10 @@ static inline void ext4_idx_store_pblock(struct ext4_extent_idx *ix,
|
|||
0xffff);
|
||||
}
|
||||
|
||||
#define ext4_ext_dirty(handle, inode, path) \
|
||||
__ext4_ext_dirty(__func__, __LINE__, (handle), (inode), (path))
|
||||
int __ext4_ext_dirty(const char *where, unsigned int line, handle_t *handle,
|
||||
struct inode *inode, struct ext4_ext_path *path);
|
||||
|
||||
#endif /* _EXT4_EXTENTS */
|
||||
|
||||
|
|
|
@ -157,11 +157,8 @@ static int ext4_ext_get_access(handle_t *handle, struct inode *inode,
|
|||
* - ENOMEM
|
||||
* - EIO
|
||||
*/
|
||||
#define ext4_ext_dirty(handle, inode, path) \
|
||||
__ext4_ext_dirty(__func__, __LINE__, (handle), (inode), (path))
|
||||
static int __ext4_ext_dirty(const char *where, unsigned int line,
|
||||
handle_t *handle, struct inode *inode,
|
||||
struct ext4_ext_path *path)
|
||||
int __ext4_ext_dirty(const char *where, unsigned int line, handle_t *handle,
|
||||
struct inode *inode, struct ext4_ext_path *path)
|
||||
{
|
||||
int err;
|
||||
if (path->p_bh) {
|
||||
|
|
|
@ -409,18 +409,7 @@ mext_insert_extents(handle_t *handle, struct inode *orig_inode,
|
|||
mext_insert_inside_block(o_start, o_end, start_ext, new_ext,
|
||||
end_ext, eh, range_to_move);
|
||||
|
||||
if (depth) {
|
||||
ret = ext4_handle_dirty_metadata(handle, orig_inode,
|
||||
orig_path->p_bh);
|
||||
if (ret)
|
||||
return ret;
|
||||
} else {
|
||||
ret = ext4_mark_inode_dirty(handle, orig_inode);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
return ext4_ext_dirty(handle, orig_inode, orig_path);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue