Re: amdgpu crashes on OOM

From: Michel Dänzer
Date: Mon Oct 26 2020 - 07:03:53 EST


On 2020-10-26 5:29 a.m., Alex Xu (Hello71) wrote:
Hi,

I frequently encounter OOM on my system, mostly due to my own fault.
Recently, I noticed that not only does a swap storm happen and OOM
killer gets invoked, but the graphics output freezes permanently.
Checking the kernel messages, I see:

kworker/u24:4: page allocation failure: order:5, mode:0x40dc0(GFP_KERNEL|__GFP_COMP|__GFP_ZERO), nodemask=(null)
CPU: 6 PID: 279469 Comm: kworker/u24:4 Tainted: G W 5.9.0-14732-g20b1adb60cf6 #2
Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./B450 Pro4, BIOS P4.20 06/18/2020
Workqueue: events_unbound commit_work
Call Trace:
? dump_stack+0x57/0x6a
? warn_alloc.cold+0x69/0xcd
? __alloc_pages_direct_compact+0xfb/0x116
? __alloc_pages_slowpath.constprop.0+0x9c2/0xc14
? __alloc_pages_nodemask+0x143/0x167
? kmalloc_order+0x24/0x64
? dc_create_state+0x1a/0x4d
? amdgpu_dm_atomic_commit_tail+0x1b19/0x227d

Looks like dc_create_state should use kvzalloc instead of kzalloc (dc_state_free already uses kvfree).

order:5 means it's trying to allocate 32 physically contiguous pages, which can be hard to fulfill even with lower memory pressure.


--
Earthling Michel Dänzer | https://redhat.com
Libre software enthusiast | Mesa and X developer