lkml.org 
[lkml]   [2013]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCHv4 33/39] thp, mm: implement do_huge_linear_fault()
    From
    On Sun, May 12, 2013 at 9:23 AM, Kirill A. Shutemov
    <kirill.shutemov@linux.intel.com> wrote:
    > @@ -3316,17 +3361,25 @@ static int __do_fault(struct mm_struct *mm, struct vm_area_struct *vma,
    > if (unlikely(anon_vma_prepare(vma)))
    > return VM_FAULT_OOM;
    >
    > - cow_page = alloc_page_vma(GFP_HIGHUSER_MOVABLE, vma, address);
    > + cow_page = alloc_fault_page_vma(vma, address, flags);
    > if (!cow_page)
    > - return VM_FAULT_OOM;
    > + return VM_FAULT_OOM | VM_FAULT_FALLBACK;
    >

    Fallback makes sense with !thp ?

    > if (mem_cgroup_newpage_charge(cow_page, mm, GFP_KERNEL)) {
    > page_cache_release(cow_page);
    > - return VM_FAULT_OOM;
    > + return VM_FAULT_OOM | VM_FAULT_FALLBACK;
    > }
    > } else
    > cow_page = NULL;


    \
     
     \ /
      Last update: 2013-05-22 15:41    [W:4.099 / U:0.264 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site