CMA, isolate: get warning in page_isolation.c:235 test_pages_isolated

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi guys,

After I back porting your patches:
mm/page_alloc: fix incorrect isolation behavior by rechecking migratetype
mm/page_alloc: add freepage on isolate pageblock to correct buddy list
mm/page_alloc: move freepage counting logic to __free_one_page()
mm/page_alloc: restrict max order of merging on isolated pageblock
mm: page_alloc: store updated page migratetype to avoid misusing stale value
mm: page_isolation: check pfn validity before access
to 3.10 linux kernel.
I also use the CMA_AGGRESSIVE patches in https://lkml.org/lkml/2014/10/15/623.

I got:
[68121.770699@2] ------------[ cut here ]------------
[68121.774592@2] WARNING: at /home/teawater/common/mm/page_isolation.c:235 test_pages_isolated+0x108/0x208()
[68121.793911@2] CPU: 2 PID: 2711 Comm: kthread_xxx Tainted: P           O 3.10.33-250644-gcfd93f8-dirty #184
[68121.803632@2] [<c0016de4>] (unwind_backtrace+0x0/0x128) from [<c0013360>] (show_stack+0x20/0x24)
[68121.812379@2] [<c0013360>] (show_stack+0x20/0x24) from [<c074553c>] (dump_stack+0x20/0x28)
[68121.820612@2] [<c074553c>] (dump_stack+0x20/0x28) from [<c002f2b8>] (warn_slowpath_common+0x5c/0x7c)
[68121.829712@2] [<c002f2b8>] (warn_slowpath_common+0x5c/0x7c) from [<c002f304>] (warn_slowpath_null+0x2c/0x34)
[68121.839508@2] [<c002f304>] (warn_slowpath_null+0x2c/0x34) from [<c011f324>] (test_pages_isolated+0x108/0x208)
[68121.849393@2] [<c011f324>] (test_pages_isolated+0x108/0x208) from [<c00e24d8>] (alloc_contig_range+0x208/0x2b0)
[68121.859447@2] [<c00e24d8>] (alloc_contig_range+0x208/0x2b0) from [<c0320d44>] (dma_alloc_from_contiguous+0x15c/0x24c)

Looks it has some race issue between page isolation and free path after these patches.
And I checked the free path but found nothing.

I worried that it still has some race issue between page isolation and something in upstream.  Or I missed some patches?
If we cannot handle this issue in a short time, I suggest add the "move_freepages" code back to __test_page_isolated_in_pageblock.

Thanks,
Hui

 ?韬{.n???檩jg???a?旃???)钋???骅w+h?璀?y/i?⒏??⒎???Щ??m???)钋???痂?^??觥??ザ?v???O璁?f??i?⒏?




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]