[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LSU.2.11.1405151048250.4797@eggly.anvils>
Date: Thu, 15 May 2014 10:58:16 -0700 (PDT)
From: Hugh Dickins <hughd@...gle.com>
To: Sasha Levin <sasha.levin@...cle.com>
cc: Hugh Dickins <hughd@...gle.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Andrew Morton <akpm@...ux-foundation.org>,
David Rientjes <rientjes@...gle.com>,
Andrea Arcangeli <aarcange@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, Mel Gorman <mgorman@...e.de>,
Dave Jones <davej@...hat.com>, linux-mm <linux-mm@...ck.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Josh Boyer <jwboyer@...oraproject.org>
Subject: Re: mm: BUG in do_huge_pmd_wp_page
On Thu, 15 May 2014, Sasha Levin wrote:
> On 05/15/2014 01:37 PM, Hugh Dickins wrote:
> > On Thu, 15 May 2014, Sasha Levin wrote:
> >> On 04/07/2014 04:11 PM, Kirill A. Shutemov wrote:
> >>> On Mon, Apr 07, 2014 at 03:40:46PM -0400, Sasha Levin wrote:
> >>>>> It also breaks fairly quickly under testing because:
> >>>>>
> >>>>> On 04/07/2014 10:48 AM, Kirill A. Shutemov wrote:
> >>>>>>> + if (IS_ENABLED(CONFIG_DEBUG_PAGEALLOC)) {
> >>>>>>> + spin_lock(ptl);
> >>>>>
> >>>>> ^ We go into atomic
> >>>>>
> >>>>>>> + if (unlikely(!pmd_same(*pmd, orig_pmd)))
> >>>>>>> + goto out_race;
> >>>>>>> + }
> >>>>>>> +
> >>>>>>> if (!page)
> >>>>>>> clear_huge_page(new_page, haddr, HPAGE_PMD_NR);
> >>>>>>> else
> >>>>>>> copy_user_huge_page(new_page, page, haddr, vma, HPAGE_PMD_NR);
> >>>>>
> >>>>> copy_user_huge_page() doesn't like running in atomic state,
> >>>>> and asserts might_sleep().
> >>> Okay, I'll try something else.
> >>
> >> I've Cc'ed Josh Boyer to this since it just occurred to me that Fedora
> >> is running with CONFIG_DEBUG_VM set, where this bug is rather easy to
> >> trigger.
> >>
> >> This issue was neglected because it triggers only on CONFIG_DEBUG_VM builds,
> >> but with Fedora running that, maybe it shouldn't be?
> >
> > But it triggers only on CONFIG_DEBUG_PAGEALLOC builds, doesn't it?
> > I hope Fedora doesn't go out with that enabled.
>
> Ow, it needs DEBUG_PAGEALLOC too? I forgot about that one.
Yes. And furthermore, whereas many DEBUG_PAGEALLOC reports are early
warnings of real problems in non-DEBUG_PAGEALLOC kernels, this one is
not. It's a case where the non-DEBUG_PAGEALLOC kernel is correct, and
the DEBUG_PAGEALLOC kernel too strict. Fixable, but not yet in a way
that satisfied Kirill or me.
>
> No problem for Fedora then, sorry for the noise :(
Oh, this is much more welcome noise than your usual bug reports :)
Hugh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists