summaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
Diffstat (limited to 'mm')
-rw-r--r--mm/hugetlb.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 786004514d10..8852b0b12270 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -3212,8 +3212,11 @@ static int __init hugetlb_init(void)
{
int i;
- if (!hugepages_supported())
+ if (!hugepages_supported()) {
+ if (hugetlb_max_hstate || default_hstate_max_huge_pages)
+ pr_warn("HugeTLB: huge pages not supported, ignoring associated command-line parameters\n");
return 0;
+ }
/*
* Make sure HPAGE_SIZE (HUGETLB_PAGE_ORDER) hstate exists. Some
@@ -3315,11 +3318,6 @@ static int __init hugepages_setup(char *s)
unsigned long *mhp;
static unsigned long *last_mhp;
- if (!hugepages_supported()) {
- pr_warn("HugeTLB: huge pages not supported, ignoring hugepages = %s\n", s);
- return 0;
- }
-
if (!parsed_valid_hugepagesz) {
pr_warn("HugeTLB: hugepages=%s does not follow a valid hugepagesz, ignoring\n", s);
parsed_valid_hugepagesz = true;
@@ -3372,11 +3370,6 @@ static int __init hugepagesz_setup(char *s)
struct hstate *h;
parsed_valid_hugepagesz = false;
- if (!hugepages_supported()) {
- pr_warn("HugeTLB: huge pages not supported, ignoring hugepagesz = %s\n", s);
- return 0;
- }
-
size = (unsigned long)memparse(s, NULL);
if (!arch_hugetlb_valid_size(size)) {
@@ -3424,11 +3417,6 @@ static int __init default_hugepagesz_setup(char *s)
unsigned long size;
parsed_valid_hugepagesz = false;
- if (!hugepages_supported()) {
- pr_warn("HugeTLB: huge pages not supported, ignoring default_hugepagesz = %s\n", s);
- return 0;
- }
-
if (parsed_default_hugepagesz) {
pr_err("HugeTLB: default_hugepagesz previously specified, ignoring %s\n", s);
return 0;