{
        unsigned long pfn;
 
-       for (pfn = start; pfn < end; pfn++) {
+       for_each_valid_pfn(pfn, start, end) {
                struct page *page;
                struct folio *folio;
 
-               if (!pfn_valid(pfn))
-                       continue;
                page = pfn_to_page(pfn);
                if (PageLRU(page))
                        goto found;
        static DEFINE_RATELIMIT_STATE(migrate_rs, DEFAULT_RATELIMIT_INTERVAL,
                                      DEFAULT_RATELIMIT_BURST);
 
-       for (pfn = start_pfn; pfn < end_pfn; pfn++) {
+       for_each_valid_pfn(pfn, start_pfn, end_pfn) {
                struct page *page;
 
-               if (!pfn_valid(pfn))
-                       continue;
                page = pfn_to_page(pfn);
                folio = page_folio(page);