On Tue, 5 Apr 2016 14:02:49 -0700 (PDT) Hugh Dickins <hughd@xxxxxxxxxx> wrote: > 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@xxxxxxxxxx> > --- Acked-by: Gerald Schaefer <gerald.schaefer@xxxxxxxxxx> # for arch/s390 bits -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>