Re: powerpc/perf: Add ___GFP_NOWARN flag to alloc_pages_node()

From: Michael Ellerman
Date: Fri Oct 13 2017 - 08:32:50 EST


On Wed, 2017-10-11 at 12:57:39 UTC, Anju T Sudhakar wrote:
> Stack trace output during a stress test:
> [ 4.310049] Freeing initrd memory: 22592K
> [ 4.310646] rtas_flash: no firmware flash support
> [ 4.313341] cpuhp/64: page allocation failure: order:0, mode:0x14480c0(GFP_KERNEL|__GFP_ZERO|__GFP_THISNODE), nodemask=(null)
> [ 4.313465] cpuhp/64 cpuset=/ mems_allowed=0
> [ 4.313521] CPU: 64 PID: 392 Comm: cpuhp/64 Not tainted 4.11.0-39.el7a.ppc64le #1
> [ 4.313588] Call Trace:
> [ 4.313622] [c000000f1fb1b8e0] [c000000000c09388] dump_stack+0xb0/0xf0 (unreliable)
> [ 4.313694] [c000000f1fb1b920] [c00000000030ef6c] warn_alloc+0x12c/0x1c0
> [ 4.313753] [c000000f1fb1b9c0] [c00000000030ff68] __alloc_pages_nodemask+0xea8/0x1000
> [ 4.313823] [c000000f1fb1bbb0] [c000000000113a8c] core_imc_mem_init+0xbc/0x1c0
> [ 4.313892] [c000000f1fb1bc00] [c000000000113cdc] ppc_core_imc_cpu_online+0x14c/0x170
> [ 4.313962] [c000000f1fb1bc90] [c000000000125758] cpuhp_invoke_callback+0x198/0x5d0
> [ 4.314031] [c000000f1fb1bd00] [c00000000012782c] cpuhp_thread_fun+0x8c/0x3d0
> [ 4.314101] [c000000f1fb1bd60] [c0000000001678d0] smpboot_thread_fn+0x290/0x2a0
> [ 4.314169] [c000000f1fb1bdc0] [c00000000015ee78] kthread+0x168/0x1b0
> [ 4.314229] [c000000f1fb1be30] [c00000000000b368] ret_from_kernel_thread+0x5c/0x74
> [ 4.314313] Mem-Info:
> [ 4.314356] active_anon:0 inactive_anon:0 isolated_anon:0
>
> core_imc_mem_init() at system boot use alloc_pages_node() to get memory
> and alloc_pages_node() throws this stack dump when tried to allocate
> memory from a node which has no memory behind it. Add a ___GFP_NOWARN
> flag in allocation request as a fix.
>
> Signed-off-by: Anju T Sudhakar <anju@xxxxxxxxxxxxxxxxxx>
> Reported-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Reported-by: Venkat R.B <venkatb3@xxxxxxxxxx>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/cd4f2b30e5ef7d4bde61eb515372d9

cheers