return rc;
 }
 
-static inline int try_split_thp(struct page *page, struct page **page2,
-                               struct list_head *from)
+static inline int try_split_thp(struct page *page, struct list_head *split_pages)
 {
-       int rc = 0;
+       int rc;
 
        lock_page(page);
-       rc = split_huge_page_to_list(page, from);
+       rc = split_huge_page_to_list(page, split_pages);
        unlock_page(page);
-       if (!rc)
-               list_safe_reset_next(page, *page2, lru);
 
        return rc;
 }
                                /* THP migration is unsupported */
                                if (is_thp) {
                                        nr_thp_failed++;
-                                       if (!try_split_thp(page, &page2, &thp_split_pages)) {
+                                       if (!try_split_thp(page, &thp_split_pages)) {
                                                nr_thp_split++;
                                                goto retry;
                                        }
                                 */
                                if (is_thp && !nosplit) {
                                        nr_thp_failed++;
-                                       if (!try_split_thp(page, &page2, &thp_split_pages)) {
+                                       if (!try_split_thp(page, &thp_split_pages)) {
                                                nr_thp_split++;
                                                goto retry;
                                        }