Re: hugetlb oops on 3.1.0-rc8-devel

From: Andy Lutomirski
Date: Wed Nov 02 2011 - 13:19:12 EST


On Wed, Nov 2, 2011 at 5:06 AM, Hillf Danton <dhillf@xxxxxxxxx> wrote:
> On Wed, Nov 2, 2011 at 6:20 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>> The line that crashed is BUG_ON(page_count(old_page) != 1) in hugetlb_cow.
>>
>
> Hello Andy
>
> Would you please try the following patch?
>
> Thanks
>        Hillf
>
>
> --- a/mm/hugetlb.c      Sat Aug 13 11:45:14 2011
> +++ b/mm/hugetlb.c      Wed Nov  2 20:12:00 2011
> @@ -2422,6 +2422,8 @@ retry_avoidcopy:
>         * anon_vma prepared.
>         */
>        if (unlikely(anon_vma_prepare(vma))) {
> +               page_cache_release(new_page);
> +               page_cache_release(old_page);
>                /* Caller expects lock to be held */
>                spin_lock(&mm->page_table_lock);
>                return VM_FAULT_OOM;
>

I'll patch it in. My test case took over a week to hit it once, so I
can't guarantee I'll spot it.

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/