On Fri, 2 Jun 2017 20:54:13 -0400 "Liam R. Howlett" <Liam.Howlett@xxxxxxxxxx> wrote: > When the user specifies too many hugepages or an invalid > default_hugepagesz the communication to the user is implicit in the > allocation message. This patch adds a warning when the desired page > count is not allocated and prints an error when the default_hugepagesz > is invalid on boot. > > --- a/mm/hugetlb.c > +++ b/mm/hugetlb.c > @@ -70,6 +70,7 @@ struct mutex *hugetlb_fault_mutex_table ____cacheline_aligned_in_smp; > > /* Forward declaration */ > static int hugetlb_acct_memory(struct hstate *h, long delta); > +static char * __init memfmt(char *buf, unsigned long n); It's better to just move memfmt() to the right place. After all, you have revealed that it was in the wrong place, no? (Am a bit surprised that something as general as memfmt is private to hugetlb.c) --- a/mm/hugetlb.c~mm-hugetlb-warn-the-user-when-issues-arise-on-boot-due-to-hugepages-fix +++ a/mm/hugetlb.c @@ -69,7 +69,17 @@ struct mutex *hugetlb_fault_mutex_table /* Forward declaration */ static int hugetlb_acct_memory(struct hstate *h, long delta); -static char * __init memfmt(char *buf, unsigned long n); + +static char * __init memfmt(char *buf, unsigned long n) +{ + if (n >= (1UL << 30)) + sprintf(buf, "%lu GB", n >> 30); + else if (n >= (1UL << 20)) + sprintf(buf, "%lu MB", n >> 20); + else + sprintf(buf, "%lu KB", n >> 10); + return buf; +} static inline void unlock_or_release_subpool(struct hugepage_subpool *spool) { @@ -2238,17 +2248,6 @@ static void __init hugetlb_init_hstates( VM_BUG_ON(minimum_order == UINT_MAX); } -static char * __init memfmt(char *buf, unsigned long n) -{ - if (n >= (1UL << 30)) - sprintf(buf, "%lu GB", n >> 30); - else if (n >= (1UL << 20)) - sprintf(buf, "%lu MB", n >> 20); - else - sprintf(buf, "%lu KB", n >> 10); - return buf; -} - static void __init report_hugepages(void) { struct hstate *h; _ -- 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>