Naoya Horiguchi 641844f561 mm/hugetlb: introduce minimum hugepage order
Currently the initial value of order in dissolve_free_huge_page is 64 or
32, which leads to the following warning in static checker:

  mm/hugetlb.c:1203 dissolve_free_huge_pages()
  warn: potential right shift more than type allows '9,18,64'

This is a potential risk of infinite loop, because 1 << order (== 0) is used
in for-loop like this:

  for (pfn =3D start_pfn; pfn < end_pfn; pfn +=3D 1 << order)
      ...

So this patch fixes it by using global minimum_order calculated at boot time.

    text    data     bss     dec     hex filename
   28313     469   84236  113018   1b97a mm/hugetlb.o
   28256     473   84236  112965   1b945 mm/hugetlb.o (patched)

Fixes: c8721bbbdd36 ("mm: memory-hotplug: enable memory hotplug to handle hugepage")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-06-24 17:49:42 -07:00
..
2015-04-14 16:49:00 -07:00
2015-02-16 17:56:03 -08:00
2012-01-03 22:54:56 -05:00
2015-04-15 16:35:18 -07:00
2015-04-14 16:49:00 -07:00
2015-05-14 17:55:51 -07:00
2015-04-15 16:35:18 -07:00
2015-02-16 17:56:03 -08:00
2015-04-14 16:49:06 -07:00
2015-04-15 16:35:19 -07:00
2015-02-11 17:06:02 -08:00
2015-06-24 17:49:41 -07:00
2015-04-11 22:27:56 -04:00
2015-04-15 16:35:16 -07:00
2015-03-24 13:41:54 -04:00