[<prev] [next>] [day] [month] [year] [list]
Message-ID: <53962C4D.30600@intel.com>
Date: Mon, 09 Jun 2014 14:51:09 -0700
From: Dave Hansen <dave.hansen@...el.com>
To: Naoya Horiguchi <n-horiguchi@...jp.nec.com>
CC: linux-mm@...ck.org, Andrew Morton <akpm@...ux-foundation.org>,
Hugh Dickins <hughd@...gle.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/7] mm/pagewalk: replace mm_walk->skip with more general
mm_walk->control
On 06/09/2014 02:29 PM, Naoya Horiguchi wrote:
> static int subpage_walk_pmd_entry(pmd_t *pmd, unsigned long addr,
> unsigned long end, struct mm_walk *walk)
> {
> struct vm_area_struct *vma = walk->vma;
> + spin_unlock(walk->ptl);
> split_huge_page_pmd(vma, addr, pmd);
> + spin_lock(walk->ptl);
> return 0;
> }
>
> I thought it's straightforward but dirty, but my workaround in this patch
> was dirty too. So I'm fine to give up the control stuff and take this one.
I think there's essentially no way to fix this with the current
handlers. This needs the locks to not be held, and everything else
needs them held so that they don't have to do it themselves.
Instead of a flag to control the walk directly, we could have one that
controls whether the locks are held, although that seems quite prone to
breakage.
I think this is rare-enough code that we can live with the hack that
you've got above, although we need to run it by the ppc folks.
--
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