/*
  * Returns the number of collected folios. Return value is always >= 0.
  */
-static unsigned long collect_longterm_unpinnable_folios(
+static void collect_longterm_unpinnable_folios(
                struct list_head *movable_folio_list,
                struct pages_or_folios *pofs)
 {
-       unsigned long i, collected = 0;
        struct folio *prev_folio = NULL;
        bool drain_allow = true;
+       unsigned long i;
 
        for (i = 0; i < pofs->nr_entries; i++) {
                struct folio *folio = pofs_get_folio(pofs, i);
                if (folio_is_longterm_pinnable(folio))
                        continue;
 
-               collected++;
-
                if (folio_is_device_coherent(folio))
                        continue;
 
                                    NR_ISOLATED_ANON + folio_is_file_lru(folio),
                                    folio_nr_pages(folio));
        }
-
-       return collected;
 }
 
 /*
 check_and_migrate_movable_pages_or_folios(struct pages_or_folios *pofs)
 {
        LIST_HEAD(movable_folio_list);
-       unsigned long collected;
 
-       collected = collect_longterm_unpinnable_folios(&movable_folio_list,
-                                                      pofs);
-       if (!collected)
+       collect_longterm_unpinnable_folios(&movable_folio_list, pofs);
+       if (list_empty(&movable_folio_list))
                return 0;
 
        return migrate_longterm_unpinnable_folios(&movable_folio_list, pofs);