Re: [PATCHv4 33/39] thp, mm: implement do_huge_linear_fault()

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

 



Hillf Danton wrote:
> On Sun, May 12, 2013 at 9:23 AM, Kirill A. Shutemov
> <kirill.shutemov@xxxxxxxxxxxxxxx> wrote:
> > @@ -3301,12 +3335,23 @@ static int __do_fault(struct mm_struct *mm, struct vm_area_struct *vma,
> >  {
> >         pte_t *page_table;
> >         spinlock_t *ptl;
> > +       pgtable_t pgtable = NULL;
> >         struct page *page, *cow_page, *dirty_page = NULL;
> > -       pte_t entry;
> >         bool anon = false, page_mkwrite = false;
> >         bool write = flags & FAULT_FLAG_WRITE;
> > +       bool thp = flags & FAULT_FLAG_TRANSHUGE;
> > +       unsigned long addr_aligned;
> >         struct vm_fault vmf;
> > -       int ret;
> > +       int nr, ret;
> > +
> > +       if (thp) {
> > +               if (!transhuge_vma_suitable(vma, address))
> > +                       return VM_FAULT_FALLBACK;
> > +               if (unlikely(khugepaged_enter(vma)))
> 
> vma->vm_mm now is under the care of khugepaged, why?

Because it has at least once VMA suitable for huge pages.

Yes, we can't collapse pages in file-backed VMAs yet, but It's better to
be consistent to avoid issues when collapsing will be implemented.

-- 
 Kirill A. Shutemov

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




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