diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index 4c37abe76851..9905720df924 100644 --- a/fs/ext4/namei.c +++ b/fs/ext4/namei.c @@ -2407,7 +2407,7 @@ static int ext4_dx_add_entry(handle_t *handle, struct ext4_filename *fname, goto journal_error; err = ext4_handle_dirty_dx_node(handle, dir, frame->bh); - if (err) + if (restart || err) goto journal_error; } else { struct dx_root *dxroot;