|
@@ -3622,7 +3622,7 @@ static void ext4_free_data(handle_t *handle, struct inode *inode,
|
|
|
* block pointed to itself, it would have been detached when
|
|
|
* the block was cleared. Check for this instead of OOPSing.
|
|
|
*/
|
|
|
- if (bh2jh(this_bh))
|
|
|
+ if ((EXT4_JOURNAL(inode) == NULL) || bh2jh(this_bh))
|
|
|
ext4_handle_dirty_metadata(handle, inode, this_bh);
|
|
|
else
|
|
|
ext4_error(inode->i_sb, __func__,
|