Re: [PATCHv4 31/39] thp: consolidate code between handle_mm_fault() and do_huge_pmd_anonymous_page()

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

 



On 05/11/2013 06:23 PM, Kirill A. Shutemov wrote:
> From: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
> 
> do_huge_pmd_anonymous_page() has copy-pasted piece of handle_mm_fault()
> to handle fallback path.
> 
> Let's consolidate code back by introducing VM_FAULT_FALLBACK return
> code.
> 
> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
> ---
>  include/linux/huge_mm.h |    3 ---
>  include/linux/mm.h      |    3 ++-
>  mm/huge_memory.c        |   31 +++++--------------------------
>  mm/memory.c             |    9 ++++++---
>  4 files changed, 13 insertions(+), 33 deletions

Wow, nice diffstat!

This and the previous patch can go in the cleanups pile, no?

> @@ -3788,9 +3788,12 @@ retry:
>  	if (!pmd)
>  		return VM_FAULT_OOM;
>  	if (pmd_none(*pmd) && transparent_hugepage_enabled(vma)) {
> +		int ret = 0;
>  		if (!vma->vm_ops)
> -			return do_huge_pmd_anonymous_page(mm, vma, address,
> -							  pmd, flags);
> +			ret = do_huge_pmd_anonymous_page(mm, vma, address,
> +					pmd, flags);
> +		if ((ret & VM_FAULT_FALLBACK) == 0)
> +			return ret;

This could use a small comment about where the code flow is going, when
and why.  FWIW, I vastly prefer the '!' form in these:

	if (!(ret & VM_FAULT_FALLBACK))
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux