memcg uncharge page counter mismatch

From: Minchan Kim
Date: Tue Dec 01 2015 - 08:34:40 EST


With new test on mmotm-2015-11-25-17-08, I saw below WARNING message
several times. I couldn't see it with reverting new THP refcount
redesign.

I will try to make reproducer when I have a time but not sure.
Before that, I hope someone catches it up.

------------[ cut here ]------------
WARNING: CPU: 0 PID: 1340 at mm/page_counter.c:26 page_counter_cancel+0x34/0x40()
Modules linked in:
CPU: 0 PID: 1340 Comm: madvise_test Not tainted 4.4.0-rc2-mm1-kirill+ #12
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
ffffffff81782eeb ffff880072b97be8 ffffffff8126f476 0000000000000000
ffff880072b97c20 ffffffff8103e476 ffff88006b35d0b0 00000000000001fe
0000000000000000 00000000000001fe ffff88006b35d000 ffff880072b97c30
Call Trace:
[<ffffffff8126f476>] dump_stack+0x44/0x5e
[<ffffffff8103e476>] warn_slowpath_common+0x86/0xc0
[<ffffffff8103e56a>] warn_slowpath_null+0x1a/0x20
[<ffffffff8114c754>] page_counter_cancel+0x34/0x40
[<ffffffff8114c852>] page_counter_uncharge+0x22/0x30
[<ffffffff8114fe17>] uncharge_batch+0x47/0x140
[<ffffffff81150033>] uncharge_list+0x123/0x190
[<ffffffff8115222b>] mem_cgroup_uncharge_list+0x1b/0x20
[<ffffffff810fe9bb>] release_pages+0xdb/0x350
[<ffffffff8113044d>] free_pages_and_swap_cache+0x9d/0x120
[<ffffffff8111a546>] tlb_flush_mmu_free+0x36/0x60
[<ffffffff8111b63c>] tlb_finish_mmu+0x1c/0x50
[<ffffffff81125f38>] exit_mmap+0xd8/0x130
[<ffffffff8103bd56>] mmput+0x56/0xe0
[<ffffffff8103ff4d>] do_exit+0x1fd/0xaa0
[<ffffffff8104086f>] do_group_exit+0x3f/0xb0
[<ffffffff810408f4>] SyS_exit_group+0x14/0x20
[<ffffffff8142b617>] entry_SYSCALL_64_fastpath+0x12/0x6a
---[ end trace 7864cf719fb83e12 ]---

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/