lkml.org 
[lkml]   [2013]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCHv3, RFC 31/34] thp: initial implementation of do_huge_linear_fault()
On 04/05/2013 04:59 AM, Kirill A. Shutemov wrote:
> + if (unlikely(khugepaged_enter(vma)))
> + return VM_FAULT_OOM;
...
> + ret = vma->vm_ops->huge_fault(vma, &vmf);
> + if (unlikely(ret & VM_FAULT_OOM))
> + goto uncharge_out_fallback;
> + if (unlikely(ret & (VM_FAULT_ERROR | VM_FAULT_NOPAGE | VM_FAULT_RETRY)))
> + goto uncharge_out;
> +
> + if (unlikely(PageHWPoison(vmf.page))) {
> + if (ret & VM_FAULT_LOCKED)
> + unlock_page(vmf.page);
> + ret = VM_FAULT_HWPOISON;
> + goto uncharge_out;
> + }

One note on all these patches, but especially this one is that I think
they're way too liberal with unlikely()s. You really don't need to do
this for every single error case. Please reserve them for places where
you _know_ there is a benefit, or that the compiler is doing things that
you _know_ are blatantly wrong.


\
 
 \ /
  Last update: 2013-04-08 21:49    [W:0.246 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site