diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 87ec615f0fd6943ee799b40a0205879d7fa2dcbc..e4b26faac5fff0e5425a9ea453ca2341b9221e68 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -4791,6 +4791,7 @@ int ext4_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf)
 			  PAGE_CACHE_SIZE, NULL, do_journal_get_write_access)) {
 			unlock_page(page);
 			ret = VM_FAULT_SIGBUS;
+			ext4_journal_stop(handle);
 			goto out;
 		}
 		ext4_set_inode_state(inode, EXT4_STATE_JDATA);