diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
index c37124bccf178aacff5c8a6dba776edecec0f994..69582d5b69d1f6064a77a409760a3ba1886b6d92 100644
--- a/fs/btrfs/ordered-data.c
+++ b/fs/btrfs/ordered-data.c
@@ -638,6 +638,7 @@ void btrfs_wait_ordered_roots(struct btrfs_fs_info *fs_info, int nr)
 			WARN_ON(nr < 0);
 		}
 	}
+	list_splice_tail(&splice, &fs_info->ordered_roots);
 	spin_unlock(&fs_info->ordered_root_lock);
 }