Re: [PATCH -next 2/7] mm: memory: convert do_anonymous_page() to use a folio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2023/1/13 23:33, Matthew Wilcox wrote:
On Thu, Jan 12, 2023 at 04:30:01PM +0800, Kefeng Wang wrote:
Convert do_anonymous_page() to use a folio and replace related functions
to folio functions.

I think this patch has a prerequisite of sorting out
alloc_zeroed_user_highpage_movable().  That way we can get rid of
the 'page' variable inside this function altogether.

How about provide a wrapper like folio_alloc_zeroed_user_highmem_movable(), but the is a little bit long.

static inline struct folio *
folio_alloc_zeroed_user_highmem_movable(struct vm_area_struct *vma,
                                       unsigned long vaddr)
{
       struct folio *folio = NULL;
       struct page *page;

       page = alloc_zeroed_user_highpage_movable(vma, vaddr);
       if (page)
               folio = page_folio(page);

       return folio;
}



  	inc_mm_counter(vma->vm_mm, MM_ANONPAGES);
  	page_add_new_anon_rmap(page, vma, vmf->address);

folio_add_new_anon-rmap().

ok, will update.


-	lru_cache_add_inactive_or_unevictable(page, vma);
+	folio_add_lru_vma(folio, vma);




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux