Re: kernel BUG at mm/huge_memory.c:1187!

From: Kirill A. Shutemov
Date: Sun Oct 09 2016 - 18:32:46 EST


On Sun, Oct 09, 2016 at 03:24:27PM +0800, Wenwei Tao wrote:
> Hi,
>
> I open the Transparent huge page and run the system and hit the bug
> in huge_memory.c:
>
> static void __split_huge_page_refcount(struct page *page)
> .
> .
> .
>
> /* tail_page->_mapcount cannot change */
> BUG_ON(page_mapcount(page_tail) < 0);
> .
> .
>
> In my understanding, the THP's tail page's mapcount is initialized to
> -1, page_mapcout(page_tail) should be 0.
> Did anyone meet the same issue?
>
> Thanks.
>
> 2016-09-28 02:12:08 [810422.485203] ------------[ cut here ]------------
> 2016-09-28 02:12:08 [810422.489974] kernel BUG at mm/huge_memory.c:1187!
> 2016-09-28 02:12:08 [810422.494742] invalid opcode: 0000 [#1] SMP
> 2016-09-28 02:12:08 [810422.499034] last sysfs file:
> /sys/devices/system/cpu/online
> 2016-09-28 02:12:08 [810422.504757] CPU 31
> 2016-09-28 02:12:08 [810422.506775] Modules linked in: 8021q garp
> bridge stp llc dell_rbu ipmi_devintf ipmi_si ipmi_msghandler bonding
> ipv6 microcode dca power_meter ext4 mbcache jbd2 ahci wmi dm_mirror
> dm_region_hash dm_log dm_mod
> 2016-09-28 02:12:08 [810422.571439]
> 2016-09-28 02:12:08 [810422.573088] Pid: 10729, comm: observer
> Tainted: G W ---------------- 2.6.32-220.23.2.el6.x86_64

The kernel is already tianted with warning.

And that is way to old kernel -- from RHEL 6.2, almost 5 years old.
Contact your OS vendor.

--
Kirill A. Shutemov