between commits d7d170a8e357 and 22051d9c4a57 begins issue page allocation failure in gnome-shell process

Mikhail Gavrilov mikhail.v.gavrilov at gmail.com
Sun Jul 28 22:24:38 UTC 2019


On Mon, 22 Jul 2019 at 13:14, Mikhail Gavrilov
<mikhail.v.gavrilov at gmail.com> wrote:
>
> Hi folks,
> I suppose this problem in amdgpu code (nothing more changed in the system).
> The screen goes out as in energy saving.
> And it is impossible to wake the computer in a few minutes.
> Please, anybody, look this.
>
> In kernel logs I found follow lines:
>
> [ 5044.088380] gnome-shell: page allocation failure: order:4,
> mode:0x40cc0(GFP_KERNEL|__GFP_COMP),
> nodemask=(null),cpuset=/,mems_allowed=0
> [ 5044.088509] CPU: 1 PID: 1944 Comm: gnome-shell Not tainted
> 5.3.0-0.rc0.git7.1.fc31.x86_64 #1
> [ 5044.088512] Hardware name: System manufacturer System Product
> Name/ROG STRIX X470-I GAMING, BIOS 2406 06/21/2019
> [ 5044.088514] Call Trace:
> [ 5044.088520]  dump_stack+0x85/0xc0
> [ 5044.088526]  warn_alloc.cold+0x7b/0xfb
> [ 5044.088532]  ? _cond_resched+0x15/0x30
> [ 5044.088535]  ? __alloc_pages_direct_compact+0x181/0x1a0
> [ 5044.088541]  __alloc_pages_slowpath+0xfe1/0x1020
> [ 5044.088546]  ? __lock_acquire+0x247/0x1910
> [ 5044.088557]  __alloc_pages_nodemask+0x37f/0x400
> [ 5044.088563]  kmalloc_order+0x20/0x60
> [ 5044.088566]  kmalloc_order_trace+0x1d/0x120
> [ 5044.088571]  kmemdup+0x18/0x40
> [ 5044.088640]  dc_copy_state+0x1a/0xf0 [amdgpu]
> [ 5044.088710]  dm_atomic_duplicate_state+0x52/0x80 [amdgpu]
> [ 5044.088723]  drm_atomic_get_private_obj_state+0xcf/0x150 [drm]
> [ 5044.088778]  dm_determine_update_type_for_commit+0x3ad/0x420 [amdgpu]
> [ 5044.088847]  amdgpu_dm_atomic_check+0x3d9/0x6f0 [amdgpu]
> [ 5044.088860]  drm_atomic_check_only+0x565/0x7b0 [drm]
> [ 5044.088870]  ? drm_mode_object_put.part.0+0x31/0x50 [drm]
> [ 5044.088879]  ? drm_atomic_set_fb_for_plane+0x58/0x80 [drm]
> [ 5044.088890]  drm_atomic_nonblocking_commit+0x13/0x50 [drm]
> [ 5044.088897]  drm_atomic_helper_page_flip+0x5c/0x90 [drm_kms_helper]
> [ 5044.088907]  drm_mode_page_flip_ioctl+0x564/0x5e0 [drm]
> [ 5044.088923]  ? drm_mode_cursor2_ioctl+0x10/0x10 [drm]
> [ 5044.088931]  drm_ioctl_kernel+0xaa/0xf0 [drm]
> [ 5044.088941]  drm_ioctl+0x208/0x390 [drm]
> [ 5044.088950]  ? drm_mode_cursor2_ioctl+0x10/0x10 [drm]
> [ 5044.088954]  ? sched_clock_cpu+0xc/0xc0
> [ 5044.088959]  ? lockdep_hardirqs_on+0xf0/0x180
> [ 5044.088992]  amdgpu_drm_ioctl+0x49/0x80 [amdgpu]
> [ 5044.088996]  do_vfs_ioctl+0x400/0x740
> [ 5044.089002]  ksys_ioctl+0x5e/0x90
> [ 5044.089005]  __x64_sys_ioctl+0x16/0x20
> [ 5044.089008]  do_syscall_64+0x5c/0xb0
> [ 5044.089011]  entry_SYSCALL_64_after_hwframe+0x49/0xbe
> [ 5044.089014] RIP: 0033:0x7f136d3ed07b
> [ 5044.089016] Code: 0f 1e fa 48 8b 05 0d 7e 0c 00 64 c7 00 26 00 00
> 00 48 c7 c0 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa b8 10 00 00
> 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d dd 7d 0c 00 f7 d8 64 89
> 01 48
> [ 5044.089018] RSP: 002b:00007fff11f75458 EFLAGS: 00000246 ORIG_RAX:
> 0000000000000010
> [ 5044.089021] RAX: ffffffffffffffda RBX: 00007fff11f75490 RCX: 00007f136d3ed07b
> [ 5044.089022] RDX: 00007fff11f75490 RSI: 00000000c01864b0 RDI: 0000000000000009
> [ 5044.089024] RBP: 00000000c01864b0 R08: 000055c1fb3cab50 R09: 000000000000004d
> [ 5044.089026] R10: 000055c1f7647080 R11: 0000000000000246 R12: 000055c1fb3cab50
> [ 5044.089027] R13: 0000000000000009 R14: 000055c1f6edbab0 R15: 000055c1f6ed5160
> [ 5044.089440] Mem-Info:
> [ 5044.089445] active_anon:4119388 inactive_anon:685984 isolated_anon:0
>                 active_file:1724021 inactive_file:844926 isolated_file:0
>                 unevictable:28 dirty:386 writeback:0 unstable:0
>                 slab_reclaimable:431008 slab_unreclaimable:129915
>                 mapped:640605 shmem:487834 pagetables:43325 bounce:0
>                 free:74913 free_pcp:188 free_cma:0
> [ 5044.089449] Node 0 active_anon:16477552kB inactive_anon:2743936kB
> active_file:6896084kB inactive_file:3379704kB unevictable:112kB
> isolated(anon):0kB isolated(file):0kB mapped:2562420kB dirty:1544kB
> writeback:0kB shmem:1951336kB shmem_thp: 0kB shmem_pmdmapped: 0kB
> anon_thp: 2222080kB writeback_tmp:0kB unstable:0kB all_unreclaimable?
> no
> [ 5044.089451] Node 0 DMA free:15892kB min:32kB low:44kB high:56kB
> active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB
> unevictable:0kB writepending:0kB present:15996kB managed:15896kB
> mlocked:0kB kernel_stack:0kB pagetables:0kB bounce:0kB free_pcp:0kB
> local_pcp:0kB free_cma:0kB
> [ 5044.089455] lowmem_reserve[]: 0 3393 31872 31872 31872
> [ 5044.089458] Node 0 DMA32 free:126624kB min:7192kB low:10664kB
> high:14136kB active_anon:1433624kB inactive_anon:144788kB
> active_file:1182896kB inactive_file:524756kB unevictable:0kB
> writepending:952kB present:3575784kB managed:3575596kB mlocked:0kB
> kernel_stack:352kB pagetables:2648kB bounce:0kB free_pcp:684kB
> local_pcp:376kB free_cma:0kB
> [ 5044.089462] lowmem_reserve[]: 0 0 28479 28479 28479
> [ 5044.089465] Node 0 Normal free:157136kB min:154564kB low:183724kB
> high:212884kB active_anon:15043452kB inactive_anon:2599148kB
> active_file:5713272kB inactive_file:2854832kB unevictable:112kB
> writepending:592kB present:29871616kB managed:29173404kB mlocked:112kB
> kernel_stack:44768kB pagetables:170652kB bounce:0kB free_pcp:68kB
> local_pcp:20kB free_cma:0kB
> [ 5044.089468] lowmem_reserve[]: 0 0 0 0 0
> [ 5044.089471] Node 0 DMA: 1*4kB (U) 0*8kB 1*16kB (U) 0*32kB 2*64kB
> (U) 1*128kB (U) 1*256kB (U) 0*512kB 1*1024kB (U) 1*2048kB (M) 3*4096kB
> (M) = 15892kB
> [ 5044.089480] Node 0 DMA32: 1927*4kB (UME) 1582*8kB (UME) 737*16kB
> (UME) 319*32kB (UME) 368*64kB (UME) 70*128kB (UME) 15*256kB (UME)
> 3*512kB (UE) 2*1024kB (UM) 4*2048kB (UM) 9*4096kB (U) = 127356kB
> [ 5044.089489] Node 0 Normal: 3933*4kB (UMEH) 2268*8kB (UMEH)
> 2708*16kB (UMEH) 2331*32kB (UMEH) 126*64kB (UMEH) 0*128kB 0*256kB
> 0*512kB 0*1024kB 0*2048kB 0*4096kB = 159860kB
> [ 5044.089497] Node 0 hugepages_total=0 hugepages_free=0
> hugepages_surp=0 hugepages_size=1048576kB
> [ 5044.089499] Node 0 hugepages_total=0 hugepages_free=0
> hugepages_surp=0 hugepages_size=2048kB
> [ 5044.089500] 3056877 total pagecache pages
> [ 5044.089507] 231 pages in swap cache
> [ 5044.089509] Swap cache stats: add 5029, delete 4798, find 128/252
> [ 5044.089510] Free swap  = 67086844kB
> [ 5044.089512] Total swap = 67108860kB
> [ 5044.089513] 8365849 pages RAM
> [ 5044.089515] 0 pages HighMem/MovableOnly
> [ 5044.089516] 174625 pages reserved
> [ 5044.089518] 0 pages cma reserved
> [ 5044.089519] 0 pages hwpoisoned
>
> Needs bisecting or problem already known?
> I hope to get any feedback thanks.
>

Harry,
I bisected issue and your commit was first bad commit.
Did you hear about this issue?
If you already fix this please let me know.
Thanks.

$ git bisect bad
476e955dd679673c81c35f383ffff8f7dbd70d97 is the first bad commit
commit 476e955dd679673c81c35f383ffff8f7dbd70d97
Author: Harry Wentland <harry.wentland at amd.com>
Date:   Fri Feb 22 16:52:52 2019 -0500

    drm/amd/display: Hook DCN2 into amdgpu_dm and expose as config (v2)

    Enable DCN2 support in DM (Display Manager).

    v2: fix spurious raven change (Alex)

    Signed-off-by: Harry Wentland <harry.wentland at amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher at amd.com>

 drivers/gpu/drm/amd/display/Kconfig                     |  9 +++++++++
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c       | 14 ++++++++++++++
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c |  2 +-
 3 files changed, 24 insertions(+), 1 deletion(-)

$ git bisect log
git bisect start
# good: [d7d170a8e357bd9926cc6bfea5c2385c2eac65b2] Merge tag
'tag-chrome-platform-for-v5.3' of
git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux
git bisect good d7d170a8e357bd9926cc6bfea5c2385c2eac65b2
# bad: [22051d9c4a57d3b4a8b5a7407efc80c71c7bfb16] Merge tag
'platform-drivers-x86-v5.3-2' of
git://git.infradead.org/linux-platform-drivers-x86
git bisect bad 22051d9c4a57d3b4a8b5a7407efc80c71c7bfb16
# bad: [3729fe2bc2a01f4cc1aa88be8f64af06084c87d6] Revert "Merge branch
'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux into
drm-next"
git bisect bad 3729fe2bc2a01f4cc1aa88be8f64af06084c87d6
# skip: [4009b9b589aa11d812d40b92b1f825e45efb853f] drm/amd/powerplay:
move bootup value before read pptable from vbios
git bisect skip 4009b9b589aa11d812d40b92b1f825e45efb853f
# good: [f41c615310d2f4f20f6259ae254bc058f61ced6d] drm/i915/bios: add
an enum for BDB block IDs
git bisect good f41c615310d2f4f20f6259ae254bc058f61ced6d
# good: [6f6a7bba696118ea440116f7c09dc93e18d8e78b] drm/amd/powerplay:
fix deadlock issue for smu_force_performance_level
git bisect good 6f6a7bba696118ea440116f7c09dc93e18d8e78b
# good: [b22342ea07e6b9d867c39c84d3d774add88079c1] Merge tag
'for-airlie-tda998x' of git://git.armlinux.org.uk/~rmk/linux-arm into
drm-next
git bisect good b22342ea07e6b9d867c39c84d3d774add88079c1
# good: [6116b892bd4fd0ddc5f30566a556218bb2e1a9b6] vga_switcheroo:
Depend upon fbcon being built-in, if enabled
git bisect good 6116b892bd4fd0ddc5f30566a556218bb2e1a9b6
# bad: [1a7d296d162ede31d170fdb9205ce07c8cb7dfac] drm/amd/display: Add
Underflow Asserts to dc
git bisect bad 1a7d296d162ede31d170fdb9205ce07c8cb7dfac
# bad: [0ba37b20ef1c587a24f0f8060f32a4d56f4d65df] drm/amd/display: fix
dsc validation
git bisect bad 0ba37b20ef1c587a24f0f8060f32a4d56f4d65df
# good: [f789b0b82bf0aee36ce2bb4270aad617d16c3b6b] drm/amd/display: Add DCN2 MPC
git bisect good f789b0b82bf0aee36ce2bb4270aad617d16c3b6b
# bad: [98b5b65eb8b7136489ba42ae4598f5ed799fa936] drm/amd/display:
disable PSR/ABM before destroy DMCU struct
git bisect bad 98b5b65eb8b7136489ba42ae4598f5ed799fa936
# good: [79a7b060d8dc23069ef487f650eff4adc2336a12] drm/amd/display:
hook navi10 pplib functions
git bisect good 79a7b060d8dc23069ef487f650eff4adc2336a12
# bad: [b4f199c7b00c87183f10c0a8f635f26ba2ede3eb] drm/amdgpu: Enable
DC support for Navi10
git bisect bad b4f199c7b00c87183f10c0a8f635f26ba2ede3eb
# good: [5b1b2f209f0d9085df5f34712d004ddf792c2be5] drm/amd/display:
update dcn2 dc_plane_cap
git bisect good 5b1b2f209f0d9085df5f34712d004ddf792c2be5
# bad: [476e955dd679673c81c35f383ffff8f7dbd70d97] drm/amd/display:
Hook DCN2 into amdgpu_dm and expose as config (v2)
git bisect bad 476e955dd679673c81c35f383ffff8f7dbd70d97
# first bad commit: [476e955dd679673c81c35f383ffff8f7dbd70d97]
drm/amd/display: Hook DCN2 into amdgpu_dm and expose as config (v2)

All kernel logs ar here: https://mega.nz/#F!kgYFxAIb!v1tcHANPy2ns1lh4LQLeIg


--
Best Regards,
Mike Gavrilov.


More information about the amd-gfx mailing list