On Fri, Apr 15, 2011 at 11:12:48AM +0100, Mel Gorman wrote:
> diff --git a/mm/memory.c b/mm/memory.c
> index 5823698..1659574 100644
> --- a/mm/memory.c
> +++ b/mm/memory.c
> @@ -3322,7 +3322,7 @@ int handle_mm_fault(struct mm_struct *mm, struct 
> vm_area_struct *vma,
>        * run pte_offset_map on the pmd, if an huge pmd could
>        * materialize from under us from a different thread.
>        */
> -     if (unlikely(__pte_alloc(mm, vma, pmd, address)))
> +     if (unlikely(pmd_none(*pmd)) && __pte_alloc(mm, vma, pmd, address))
>               return VM_FAULT_OOM;
>       /* if an huge pmd materialized from under us just retry later */
>       if (unlikely(pmd_trans_huge(*pmd)))

Reviewed-by: Andrea Arcangeli <[email protected]>

_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable

Reply via email to