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:0.537 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site