Messages in this thread | | | Date | Tue, 05 Apr 2016 19:25:07 -0400 (EDT) | Subject | Re: [PATCH 10/10] arch: fix has_transparent_hugepage() | From | David Miller <> |
| |
From: Hugh Dickins <hughd@google.com> Date: Tue, 5 Apr 2016 14:02:49 -0700 (PDT)
> I've just discovered that the useful-sounding has_transparent_hugepage() > is actually an architecture-dependent minefield: on some arches it only > builds if CONFIG_TRANSPARENT_HUGEPAGE=y, on others it's also there when > not, but on some of those (arm and arm64) it then gives the wrong answer; > and on mips alone it's marked __init, which would crash if called later > (but so far it has not been called later). > > Straighten this out: make it available to all configs, with a sensible > default in asm-generic/pgtable.h, removing its definitions from those > arches (arc, arm, arm64, sparc, tile) which are served by the default, > adding #define has_transparent_hugepage has_transparent_hugepage to those > (mips, powerpc, s390, x86) which need to override the default at runtime, > and removing the __init from mips (but maybe that kind of code should be > avoided after init: set a static variable the first time it's called). > > Signed-off-by: Hugh Dickins <hughd@google.com>
Acked-by: David S. Miller <davem@davemloft.net>
| |