}
 
 /* Caller must hold page table lock. */
-static void set_huge_zero_page(pgtable_t pgtable, struct mm_struct *mm,
+static void set_huge_zero_folio(pgtable_t pgtable, struct mm_struct *mm,
                struct vm_area_struct *vma, unsigned long haddr, pmd_t *pmd,
-               struct page *zero_page)
+               struct folio *zero_folio)
 {
        pmd_t entry;
        if (!pmd_none(*pmd))
                return;
-       entry = mk_pmd(zero_page, vma->vm_page_prot);
+       entry = mk_pmd(&zero_folio->page, vma->vm_page_prot);
        entry = pmd_mkhuge(entry);
        pgtable_trans_huge_deposit(mm, pmd, pgtable);
        set_pmd_at(mm, haddr, pmd, entry);
                        !mm_forbids_zeropage(vma->vm_mm) &&
                        transparent_hugepage_use_zero_page()) {
                pgtable_t pgtable;
-               struct page *zero_page;
+               struct folio *zero_folio;
                vm_fault_t ret;
+
                pgtable = pte_alloc_one(vma->vm_mm);
                if (unlikely(!pgtable))
                        return VM_FAULT_OOM;
-               zero_page = mm_get_huge_zero_page(vma->vm_mm);
-               if (unlikely(!zero_page)) {
+               zero_folio = mm_get_huge_zero_folio(vma->vm_mm);
+               if (unlikely(!zero_folio)) {
                        pte_free(vma->vm_mm, pgtable);
                        count_vm_event(THP_FAULT_FALLBACK);
                        return VM_FAULT_FALLBACK;
                                ret = handle_userfault(vmf, VM_UFFD_MISSING);
                                VM_BUG_ON(ret & VM_FAULT_FALLBACK);
                        } else {
-                               set_huge_zero_page(pgtable, vma->vm_mm, vma,
-                                                  haddr, vmf->pmd, zero_page);
+                               set_huge_zero_folio(pgtable, vma->vm_mm, vma,
+                                                  haddr, vmf->pmd, zero_folio);
                                update_mmu_cache_pmd(vma, vmf->address, vmf->pmd);
                                spin_unlock(vmf->ptl);
                        }
         */
        if (is_huge_zero_pmd(pmd)) {
                /*
-                * get_huge_zero_page() will never allocate a new page here,
-                * since we already have a zero page to copy. It just takes a
-                * reference.
+                * mm_get_huge_zero_folio() will never allocate a new
+                * folio here, since we already have a zero page to
+                * copy. It just takes a reference.
                 */
                mm_get_huge_zero_folio(dst_mm);
                goto out_zero_page;