On Thu 09-01-14 13:15:54, David Rientjes wrote: > On Thu, 9 Jan 2014, Han Pingtian wrote: > > > min_free_kbytes may be raised during THP's initialization. Sometimes, > > this will change the value being set by user. Showing message will > > clarify this confusion. > > > > Only show this message when changing the value set by user according to > > Michal Hocko's suggestion. > > > > Showing the old value of min_free_kbytes according to Dave Hansen's > > suggestion. This will give user the chance to restore old value of > > min_free_kbytes. > > > > Signed-off-by: Han Pingtian <hanpt@xxxxxxxxxxxxxxxxxx> > > --- > > mm/huge_memory.c | 9 ++++++++- > > mm/page_alloc.c | 2 +- > > 2 files changed, 9 insertions(+), 2 deletions(-) > > > > diff --git a/mm/huge_memory.c b/mm/huge_memory.c > > index 7de1bf8..e0e4e29 100644 > > --- a/mm/huge_memory.c > > +++ b/mm/huge_memory.c > > @@ -100,6 +100,7 @@ static struct khugepaged_scan khugepaged_scan = { > > .mm_head = LIST_HEAD_INIT(khugepaged_scan.mm_head), > > }; > > > > +extern int user_min_free_kbytes; > > > > We don't add extern declarations to .c files. How many other examples of > this can you find in mm/? I have suggested this because general visibility is not needed. But if you think that it should then include/linux/mm.h sounds like a proper place. > > static int set_recommended_min_free_kbytes(void) > > { > > @@ -130,8 +131,14 @@ static int set_recommended_min_free_kbytes(void) > > (unsigned long) nr_free_buffer_pages() / 20); > > recommended_min <<= (PAGE_SHIFT-10); > > > > - if (recommended_min > min_free_kbytes) > > + if (recommended_min > min_free_kbytes) { > > + if (user_min_free_kbytes >= 0) > > + pr_info("raising min_free_kbytes from %d to %lu " > > + "to help transparent hugepage allocations\n", > > + min_free_kbytes, recommended_min); > > + > > min_free_kbytes = recommended_min; > > + } > > setup_per_zone_wmarks(); > > return 0; > > } > > Does this even ever trigger since set_recommended_min_free_kbytes() is > called via late_initcall()? This is called whenever THP is enabled so it might be called later after boot. The point is AFAIU to warn user that the admin decision about min_free_kbytes is overridden. -- Michal Hocko SUSE Labs -- 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>