linux-sg2042/arch
Mike Kravetz 3823783088 hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate
hugetlb_add_hstate() prints a warning if the hstate already exists.  This
was originally done as part of kernel command line parsing.  If
'hugepagesz=' was specified more than once, the warning

	pr_warn("hugepagesz= specified twice, ignoring\n");

would be printed.

Some architectures want to enable all huge page sizes.  They would call
hugetlb_add_hstate for all supported sizes.  However, this was done after
command line processing and as a result hstates could have already been
created for some sizes.  To make sure no warning were printed, there would
often be code like:

	if (!size_to_hstate(size)
		hugetlb_add_hstate(ilog2(size) - PAGE_SHIFT)

The only time we want to print the warning is as the result of command
line processing.  So, remove the warning from hugetlb_add_hstate and add
it to the single arch independent routine processing "hugepagesz=".  After
this, calls to size_to_hstate() in arch specific code can be removed and
hugetlb_add_hstate can be called without worrying about warning messages.

[mike.kravetz@oracle.com: fix hugetlb initialization]
  Link: http://lkml.kernel.org/r/4c36c6ce-3774-78fa-abc4-b7346bf24348@oracle.com
  Link: http://lkml.kernel.org/r/20200428205614.246260-5-mike.kravetz@oracle.com
Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Tested-by: Anders Roxell <anders.roxell@linaro.org>
Acked-by: Mina Almasry <almasrymina@google.com>
Acked-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>	[s390]
Acked-by: Will Deacon <will@kernel.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Christophe Leroy <christophe.leroy@c-s.fr>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Longpeng <longpeng2@huawei.com>
Cc: Nitesh Narayan Lal <nitesh@redhat.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Paul Walmsley <paul.walmsley@sifive.com>
Cc: Peter Xu <peterx@redhat.com>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
Cc: Qian Cai <cai@lca.pw>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Link: http://lkml.kernel.org/r/20200417185049.275845-4-mike.kravetz@oracle.com
Link: http://lkml.kernel.org/r/20200428205614.246260-4-mike.kravetz@oracle.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-06-03 20:09:46 -07:00
..
alpha alpha: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
arc mm: free_area_init: allow defining max_zone_pfn in descending order 2020-06-03 20:09:44 -07:00
arm arm: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
arm64 hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate 2020-06-03 20:09:46 -07:00
c6x mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
csky csky: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
h8300 mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
hexagon mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
ia64 mm: use free_area_init() instead of free_area_init_nodes() 2020-06-03 20:09:43 -07:00
m68k m68k: mm: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
microblaze mm: use free_area_init() instead of free_area_init_nodes() 2020-06-03 20:09:43 -07:00
mips mm: use free_area_init() instead of free_area_init_nodes() 2020-06-03 20:09:43 -07:00
nds32 mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
nios2 mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
openrisc mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
parisc parisc: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
powerpc hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate 2020-06-03 20:09:46 -07:00
riscv hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate 2020-06-03 20:09:46 -07:00
s390 hugetlbfs: move hugepagesz= parsing to arch independent code 2020-06-03 20:09:46 -07:00
sh mm: use free_area_init() instead of free_area_init_nodes() 2020-06-03 20:09:43 -07:00
sparc hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate 2020-06-03 20:09:46 -07:00
um mm: free_area_init: use maximal zone PFNs rather than zone sizes 2020-06-03 20:09:43 -07:00
unicore32 unicore32: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
x86 hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate 2020-06-03 20:09:46 -07:00
xtensa xtensa: simplify detection of memory zone boundaries 2020-06-03 20:09:43 -07:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
Kconfig scs: Remove references to asm/scs.h from core code 2020-05-18 17:47:45 +01:00