Re: [4.15-rc9] fs_reclaim lockdep trace

From: Dave Jones
Date: Sat Jan 27 2018 - 17:24:57 EST


On Tue, Jan 23, 2018 at 08:36:51PM -0500, Dave Jones wrote:
> Just triggered this on a server I was rsync'ing to.

Actually, I can trigger this really easily, even with an rsync from one
disk to another. Though that also smells a little like networking in
the traces. Maybe netdev has ideas.


The first instance:

> ============================================
> WARNING: possible recursive locking detected
> 4.15.0-rc9-backup-debug+ #1 Not tainted
> --------------------------------------------
> sshd/24800 is trying to acquire lock:
> (fs_reclaim){+.+.}, at: [<0000000084f438c2>] fs_reclaim_acquire.part.102+0x5/0x30
>
> but task is already holding lock:
> (fs_reclaim){+.+.}, at: [<0000000084f438c2>] fs_reclaim_acquire.part.102+0x5/0x30
>
> other info that might help us debug this:
> Possible unsafe locking scenario:
>
> CPU0
> ----
> lock(fs_reclaim);
> lock(fs_reclaim);
>
> *** DEADLOCK ***
>
> May be due to missing lock nesting notation
>
> 2 locks held by sshd/24800:
> #0: (sk_lock-AF_INET6){+.+.}, at: [<000000001a069652>] tcp_sendmsg+0x19/0x40
> #1: (fs_reclaim){+.+.}, at: [<0000000084f438c2>] fs_reclaim_acquire.part.102+0x5/0x30
>
> stack backtrace:
> CPU: 3 PID: 24800 Comm: sshd Not tainted 4.15.0-rc9-backup-debug+ #1
> Call Trace:
> dump_stack+0xbc/0x13f
> ? _atomic_dec_and_lock+0x101/0x101
> ? fs_reclaim_acquire.part.102+0x5/0x30
> ? print_lock+0x54/0x68
> __lock_acquire+0xa09/0x2040
> ? debug_show_all_locks+0x2f0/0x2f0
> ? mutex_destroy+0x120/0x120
> ? hlock_class+0xa0/0xa0
> ? kernel_text_address+0x5c/0x90
> ? __kernel_text_address+0xe/0x30
> ? unwind_get_return_address+0x2f/0x50
> ? __save_stack_trace+0x92/0x100
> ? graph_lock+0x8d/0x100
> ? check_noncircular+0x20/0x20
> ? __lock_acquire+0x616/0x2040
> ? debug_show_all_locks+0x2f0/0x2f0
> ? __lock_acquire+0x616/0x2040
> ? debug_show_all_locks+0x2f0/0x2f0
> ? print_irqtrace_events+0x110/0x110
> ? active_load_balance_cpu_stop+0x7b0/0x7b0
> ? debug_show_all_locks+0x2f0/0x2f0
> ? mark_lock+0x1b1/0xa00
> ? lock_acquire+0x12e/0x350
> lock_acquire+0x12e/0x350
> ? fs_reclaim_acquire.part.102+0x5/0x30
> ? lockdep_rcu_suspicious+0x100/0x100
> ? set_next_entity+0x20e/0x10d0
> ? mark_lock+0x1b1/0xa00
> ? match_held_lock+0x8d/0x440
> ? mark_lock+0x1b1/0xa00
> ? save_trace+0x1e0/0x1e0
> ? print_irqtrace_events+0x110/0x110
> ? alloc_extent_state+0xa7/0x410
> fs_reclaim_acquire.part.102+0x29/0x30
> ? fs_reclaim_acquire.part.102+0x5/0x30
> kmem_cache_alloc+0x3d/0x2c0
> ? rb_erase+0xe63/0x1240
> alloc_extent_state+0xa7/0x410
> ? lock_extent_buffer_for_io+0x3f0/0x3f0
> ? find_held_lock+0x6d/0xd0
> ? test_range_bit+0x197/0x210
> ? lock_acquire+0x350/0x350
> ? do_raw_spin_unlock+0x147/0x220
> ? do_raw_spin_trylock+0x100/0x100
> ? iotree_fs_info+0x30/0x30
> __clear_extent_bit+0x3ea/0x570
> ? clear_state_bit+0x270/0x270
> ? count_range_bits+0x2f0/0x2f0
> ? lock_acquire+0x350/0x350
> ? rb_prev+0x21/0x90
> try_release_extent_mapping+0x21a/0x260
> __btrfs_releasepage+0xb0/0x1c0
> ? btrfs_submit_direct+0xca0/0xca0
> ? check_new_page_bad+0x1f0/0x1f0
> ? match_held_lock+0xa5/0x440
> ? debug_show_all_locks+0x2f0/0x2f0
> btrfs_releasepage+0x161/0x170
> ? __btrfs_releasepage+0x1c0/0x1c0
> ? page_rmapping+0xd0/0xd0
> ? rmap_walk+0x100/0x100
> try_to_release_page+0x162/0x1c0
> ? generic_file_write_iter+0x3c0/0x3c0
> ? page_evictable+0xcc/0x110
> ? lookup_address_in_pgd+0x107/0x190
> shrink_page_list+0x1d5a/0x2fb0
> ? putback_lru_page+0x3f0/0x3f0
> ? save_trace+0x1e0/0x1e0
> ? _lookup_address_cpa.isra.13+0x40/0x60
> ? debug_show_all_locks+0x2f0/0x2f0
> ? kmem_cache_free+0x8c/0x280
> ? free_extent_state+0x1c8/0x3b0
> ? mark_lock+0x1b1/0xa00
> ? page_rmapping+0xd0/0xd0
> ? print_irqtrace_events+0x110/0x110
> ? shrink_node_memcg.constprop.88+0x4c9/0x5e0
> ? shrink_node+0x12d/0x260
> ? try_to_free_pages+0x418/0xaf0
> ? __alloc_pages_slowpath+0x976/0x1790
> ? __alloc_pages_nodemask+0x52c/0x5c0
> ? delete_node+0x28d/0x5c0
> ? find_held_lock+0x6d/0xd0
> ? free_pcppages_bulk+0x381/0x570
> ? lock_acquire+0x350/0x350
> ? do_raw_spin_unlock+0x147/0x220
> ? do_raw_spin_trylock+0x100/0x100
> ? __lock_is_held+0x51/0xc0
> ? _raw_spin_unlock+0x24/0x30
> ? free_pcppages_bulk+0x381/0x570
> ? mark_lock+0x1b1/0xa00
> ? free_compound_page+0x30/0x30
> ? print_irqtrace_events+0x110/0x110
> ? __kernel_map_pages+0x2c9/0x310
> ? mark_lock+0x1b1/0xa00
> ? print_irqtrace_events+0x110/0x110
> ? __delete_from_page_cache+0x2e7/0x4e0
> ? save_trace+0x1e0/0x1e0
> ? __add_to_page_cache_locked+0x680/0x680
> ? find_held_lock+0x6d/0xd0
> ? __list_add_valid+0x29/0xa0
> ? free_unref_page_commit+0x198/0x270
> ? drain_local_pages_wq+0x20/0x20
> ? stop_critical_timings+0x210/0x210
> ? mark_lock+0x1b1/0xa00
> ? mark_lock+0x1b1/0xa00
> ? print_irqtrace_events+0x110/0x110
> ? __lock_acquire+0x616/0x2040
> ? mark_lock+0x1b1/0xa00
> ? mark_lock+0x1b1/0xa00
> ? print_irqtrace_events+0x110/0x110
> ? __phys_addr_symbol+0x23/0x40
> ? __change_page_attr_set_clr+0xe86/0x1640
> ? __btrfs_releasepage+0x1c0/0x1c0
> ? mark_lock+0x1b1/0xa00
> ? mark_lock+0x1b1/0xa00
> ? print_irqtrace_events+0x110/0x110
> ? mark_lock+0x1b1/0xa00
> ? __lock_acquire+0x616/0x2040
> ? __lock_acquire+0x616/0x2040
> ? debug_show_all_locks+0x2f0/0x2f0
> ? swiotlb_free_coherent+0x60/0x60
> ? __phys_addr+0x32/0x80
> ? igb_xmit_frame_ring+0xad7/0x1890
> ? stack_access_ok+0x35/0x80
> ? deref_stack_reg+0xa1/0xe0
> ? __read_once_size_nocheck.constprop.6+0x10/0x10
> ? __orc_find+0x6b/0xc0
> ? unwind_next_frame+0x407/0xa20
> ? __save_stack_trace+0x5e/0x100
> ? stack_access_ok+0x35/0x80
> ? deref_stack_reg+0xa1/0xe0
> ? __read_once_size_nocheck.constprop.6+0x10/0x10
> ? __lock_acquire+0x616/0x2040
> ? debug_lockdep_rcu_enabled.part.37+0x16/0x30
> ? is_ftrace_trampoline+0x112/0x190
> ? ftrace_profile_pages_init+0x130/0x130
> ? unwind_next_frame+0x407/0xa20
> ? rcu_is_watching+0x88/0xd0
> ? unwind_get_return_address_ptr+0x50/0x50
> ? kernel_text_address+0x5c/0x90
> ? __kernel_text_address+0xe/0x30
> ? unwind_get_return_address+0x2f/0x50
> ? __save_stack_trace+0x92/0x100
> ? __list_add_valid+0x29/0xa0
> ? add_lock_to_list.isra.26+0x1d0/0x21f
> ? print_lockdep_cache.isra.29+0xd8/0xd8
> ? save_trace+0x106/0x1e0
> ? __isolate_lru_page+0x2dc/0x3c0
> ? remove_mapping+0x1b0/0x1b0
> ? match_held_lock+0xa5/0x440
> ? __lock_acquire+0x616/0x2040
> ? __mod_zone_page_state+0x1a/0x70
> ? isolate_lru_pages.isra.83+0x888/0xae0
> ? __isolate_lru_page+0x3c0/0x3c0
> ? check_usage+0x174/0x790
> ? mark_lock+0x1b1/0xa00
> ? print_irqtrace_events+0x110/0x110
> ? check_usage_forwards+0x2b0/0x2b0
> ? class_equal+0x11/0x20
> ? __bfs+0xed/0x430
> ? __phys_addr_symbol+0x23/0x40
> ? mutex_destroy+0x120/0x120
> ? match_held_lock+0x8d/0x440
> ? hlock_class+0xa0/0xa0
> ? mark_lock+0x1b1/0xa00
> ? save_trace+0x1e0/0x1e0
> ? print_irqtrace_events+0x110/0x110
> ? lock_acquire+0x350/0x350
> ? __zone_watermark_ok+0xd8/0x280
> ? graph_lock+0x8d/0x100
> ? check_noncircular+0x20/0x20
> ? find_held_lock+0x6d/0xd0
> ? shrink_inactive_list+0x3b4/0x940
> ? lock_acquire+0x350/0x350
> ? do_raw_spin_unlock+0x147/0x220
> ? do_raw_spin_trylock+0x100/0x100
> ? stop_critical_timings+0x210/0x210
> ? mark_held_locks+0x6e/0x90
> ? _raw_spin_unlock_irq+0x29/0x40
> shrink_inactive_list+0x451/0x940
> ? save_trace+0x180/0x1e0
> ? putback_inactive_pages+0x9f0/0x9f0
> ? dev_queue_xmit_nit+0x548/0x660
> ? __kernel_map_pages+0x2c9/0x310
> ? set_pages_rw+0xe0/0xe0
> ? get_page_from_freelist+0x1ea5/0x2ca0
> ? match_held_lock+0x8d/0x440
> ? blk_start_plug+0x17d/0x1e0
> ? kblockd_schedule_delayed_work_on+0x20/0x20
> ? print_irqtrace_events+0x110/0x110
> ? cpumask_next+0x1d/0x20
> ? zone_reclaimable_pages+0x25b/0x470
> ? mark_held_locks+0x6e/0x90
> ? __remove_mapping+0x4e0/0x4e0
> shrink_node_memcg.constprop.88+0x4c9/0x5e0
> ? __delayacct_freepages_start+0x28/0x40
> ? lock_acquire+0x311/0x350
> ? shrink_active_list+0x9c0/0x9c0
> ? stop_critical_timings+0x210/0x210
> ? allow_direct_reclaim.part.82+0xea/0x220
> ? mark_held_locks+0x6e/0x90
> ? ktime_get+0x1f0/0x3e0
> ? shrink_node+0x12d/0x260
> shrink_node+0x12d/0x260
> ? shrink_node_memcg.constprop.88+0x5e0/0x5e0
> ? __lock_is_held+0x51/0xc0
> try_to_free_pages+0x418/0xaf0
> ? shrink_node+0x260/0x260
> ? lock_acquire+0x12e/0x350
> ? lock_acquire+0x12e/0x350
> ? fs_reclaim_acquire.part.102+0x5/0x30
> ? lockdep_rcu_suspicious+0x100/0x100
> ? rcu_note_context_switch+0x520/0x520
> ? wake_all_kswapds+0x10a/0x150
> __alloc_pages_slowpath+0x976/0x1790
> ? __zone_watermark_ok+0x280/0x280
> ? warn_alloc+0x250/0x250
> ? __lock_acquire+0x616/0x2040
> ? match_held_lock+0x8d/0x440
> ? save_trace+0x1e0/0x1e0
> ? debug_show_all_locks+0x2f0/0x2f0
> ? match_held_lock+0xa5/0x440
> ? stack_access_ok+0x35/0x80
> ? save_trace+0x1e0/0x1e0
> ? __read_once_size_nocheck.constprop.6+0x10/0x10
> ? __lock_acquire+0x616/0x2040
> ? match_held_lock+0xa5/0x440
> ? find_held_lock+0x6d/0xd0
> ? __lock_is_held+0x51/0xc0
> ? rcu_note_context_switch+0x520/0x520
> ? perf_trace_sched_switch+0x560/0x560
> ? __might_sleep+0x58/0xe0
> __alloc_pages_nodemask+0x52c/0x5c0
> ? gfp_pfmemalloc_allowed+0xc0/0xc0
> ? kernel_text_address+0x5c/0x90
> ? __kernel_text_address+0xe/0x30
> ? unwind_get_return_address+0x2f/0x50
> ? memcmp+0x45/0x70
> ? match_held_lock+0x8d/0x440
> ? depot_save_stack+0x12e/0x480
> ? match_held_lock+0xa5/0x440
> ? stop_critical_timings+0x210/0x210
> ? sk_stream_alloc_skb+0xb8/0x340
> ? mark_held_locks+0x6e/0x90
> ? new_slab+0x2f3/0x3f0
> new_slab+0x374/0x3f0
> ___slab_alloc.constprop.81+0x47e/0x5a0
> ? __alloc_skb+0xee/0x390
> ? __alloc_skb+0xee/0x390
> ? __alloc_skb+0xee/0x390
> ? __slab_alloc.constprop.80+0x32/0x60
> __slab_alloc.constprop.80+0x32/0x60
> ? __alloc_skb+0xee/0x390
> __kmalloc_track_caller+0x267/0x310
> __kmalloc_reserve.isra.40+0x29/0x80
> __alloc_skb+0xee/0x390
> ? __skb_splice_bits+0x3e0/0x3e0
> ? ip6_mtu+0x1d9/0x290
> ? ip6_link_failure+0x3c0/0x3c0
> ? tcp_current_mss+0x1d8/0x2f0
> ? tcp_sync_mss+0x520/0x520
> sk_stream_alloc_skb+0xb8/0x340
> ? tcp_ioctl+0x280/0x280
> tcp_sendmsg_locked+0x8e6/0x1d30
> ? match_held_lock+0x8d/0x440
> ? mark_lock+0x1b1/0xa00
> ? tcp_set_state+0x450/0x450
> ? debug_show_all_locks+0x2f0/0x2f0
> ? match_held_lock+0x8d/0x440
> ? save_trace+0x1e0/0x1e0
> ? find_held_lock+0x6d/0xd0
> ? lock_acquire+0x12e/0x350
> ? lock_acquire+0x12e/0x350
> ? tcp_sendmsg+0x19/0x40
> ? lockdep_rcu_suspicious+0x100/0x100
> ? do_raw_spin_trylock+0x100/0x100
> ? stop_critical_timings+0x210/0x210
> ? mark_held_locks+0x6e/0x90
> ? __local_bh_enable_ip+0x94/0x100
> ? lock_sock_nested+0x51/0xb0
> tcp_sendmsg+0x27/0x40
> inet_sendmsg+0xd0/0x310
> ? inet_recvmsg+0x360/0x360
> ? match_held_lock+0x8d/0x440
> ? inet_recvmsg+0x360/0x360
> sock_write_iter+0x17a/0x240
> ? sock_ioctl+0x290/0x290
> ? find_held_lock+0x6d/0xd0
> __vfs_write+0x2ab/0x380
> ? kernel_read+0xa0/0xa0
> ? __context_tracking_exit.part.4+0xe7/0x290
> ? lock_acquire+0x350/0x350
> ? __fdget_pos+0x7f/0x110
> ? __fdget_raw+0x10/0x10
> vfs_write+0xfb/0x260
> SyS_write+0xb6/0x140
> ? SyS_read+0x140/0x140
> ? SyS_clock_settime+0x120/0x120
> ? mark_held_locks+0x1c/0x90
> ? do_syscall_64+0x110/0xc05
> ? SyS_read+0x140/0x140
> do_syscall_64+0x1e5/0xc05
> ? syscall_return_slowpath+0x5b0/0x5b0
> ? lock_acquire+0x350/0x350
> ? lockdep_rcu_suspicious+0x100/0x100
> ? get_vtime_delta+0x15/0xf0
> ? get_vtime_delta+0x8b/0xf0
> ? vtime_user_enter+0x7f/0x90
> ? __context_tracking_enter+0x13c/0x2b0
> ? __context_tracking_enter+0x13c/0x2b0
> ? context_tracking_exit.part.5+0x40/0x40
> ? rcu_is_watching+0x88/0xd0
> ? time_hardirqs_on+0x220/0x220
> ? prepare_exit_to_usermode+0x1d0/0x2a0
> ? enter_from_user_mode+0x30/0x30
> ? entry_SYSCALL_64_after_hwframe+0x18/0x2e
> ? trace_hardirqs_off_caller+0xc2/0x110
> ? trace_hardirqs_off_thunk+0x1a/0x1c
> entry_SYSCALL64_slow_path+0x25/0x25


And now I can hit..



============================================
WARNING: possible recursive locking detected
4.15.0-rc9-backup-debug+ #7 Not tainted
--------------------------------------------
snmpd/892 is trying to acquire lock:
(fs_reclaim){+.+.}, at: [<0000000002e4c185>] fs_reclaim_acquire.part.101+0x5/0x30

but task is already holding lock:
(fs_reclaim){+.+.}, at: [<0000000002e4c185>] fs_reclaim_acquire.part.101+0x5/0x30

other info that might help us debug this:
Possible unsafe locking scenario:

CPU0
----
lock(fs_reclaim);
lock(fs_reclaim);

*** DEADLOCK ***

May be due to missing lock nesting notation

2 locks held by snmpd/892:
#0: (rtnl_mutex){+.+.}, at: [<00000000dcd3ba2f>] netlink_dump+0x89/0x520
#1: (fs_reclaim){+.+.}, at: [<0000000002e4c185>] fs_reclaim_acquire.part.101+0x5/0x30

stack backtrace:
CPU: 5 PID: 892 Comm: snmpd Not tainted 4.15.0-rc9-backup-debug+ #7
Call Trace:
dump_stack+0xbc/0x13f
? _atomic_dec_and_lock+0x101/0x101
? fs_reclaim_acquire.part.101+0x5/0x30
? print_lock+0x54/0x68
__lock_acquire+0xa09/0x2040
? debug_show_all_locks+0x2f0/0x2f0
? __save_stack_trace+0x92/0x100
? __list_add_valid+0x29/0xa0
? add_lock_to_list.isra.26+0x1d0/0x21f
? print_lockdep_cache.isra.29+0xd8/0xd8
? save_trace+0x106/0x1e0
? graph_lock+0x100/0x100
? graph_lock+0x8d/0x100
? check_noncircular+0x20/0x20
? __lock_acquire+0x616/0x2040
? debug_show_all_locks+0x2f0/0x2f0
? lock_acquire+0x12e/0x350
lock_acquire+0x12e/0x350
? fs_reclaim_acquire.part.101+0x5/0x30
? lockdep_rcu_suspicious+0x100/0x100
? match_held_lock+0x8d/0x440
? save_trace+0x1e0/0x1e0
? alloc_extent_state+0xa7/0x410
fs_reclaim_acquire.part.101+0x29/0x30
? fs_reclaim_acquire.part.101+0x5/0x30
kmem_cache_alloc+0x3d/0x2c0
alloc_extent_state+0xa7/0x410
? lock_extent_buffer_for_io+0x3f0/0x3f0
? find_held_lock+0x6d/0xd0
? test_range_bit+0x197/0x210
? lock_acquire+0x350/0x350
? do_raw_spin_unlock+0x147/0x220
? do_raw_spin_trylock+0x100/0x100
? iotree_fs_info+0x30/0x30
__clear_extent_bit+0x3ea/0x570
? clear_state_bit+0x270/0x270
? count_range_bits+0x2f0/0x2f0
try_release_extent_mapping+0x21a/0x260
__btrfs_releasepage+0xb0/0x1c0
? btrfs_submit_direct+0xca0/0xca0
? check_usage+0x257/0x790
? match_held_lock+0xa5/0x440
? print_irqtrace_events+0x110/0x110
btrfs_releasepage+0x161/0x170
? __btrfs_releasepage+0x1c0/0x1c0
? page_rmapping+0xd0/0xd0
? rmap_walk+0x100/0x100
try_to_release_page+0x162/0x1c0
? generic_file_write_iter+0x3c0/0x3c0
? page_evictable+0xcc/0x110
? debug_show_all_locks+0x2f0/0x2f0
shrink_page_list+0x1d5a/0x2fb0
? putback_lru_page+0x3f0/0x3f0
? match_held_lock+0x8d/0x440
? save_trace+0x1e0/0x1e0
? update_curr+0xd0/0x670
? __lock_is_held+0x71/0xc0
? update_cfs_group+0x86/0x290
? __list_add_valid+0x29/0xa0
? account_entity_dequeue+0x230/0x230
? nohz_balance_exit_idle.part.92+0x60/0x60
? __update_load_avg_se.isra.28+0x352/0x360
? __update_load_avg_se.isra.28+0x1f4/0x360
? __accumulate_pelt_segments+0x47/0xd0
? __enqueue_entity+0x93/0xc0
? match_held_lock+0x8d/0x440
? mark_lock+0x1b1/0xa00
? save_trace+0x1e0/0x1e0
? print_irqtrace_events+0x110/0x110
? check_preempt_wakeup+0x410/0x410
? mark_lock+0x1b1/0xa00
? __kernel_map_pages+0x2c9/0x310
? set_pages_rw+0xe0/0xe0
? lock_acquire+0x350/0x350
? lockdep_rcu_suspicious+0x100/0x100
? mark_held_locks+0x6e/0x90
? trace_hardirqs_on_caller+0x187/0x260
? mark_lock+0x1b1/0xa00
? print_irqtrace_events+0x110/0x110
? mark_held_locks+0x6e/0x90
? mark_lock+0x1b1/0xa00
? kasan_unpoison_shadow+0x30/0x40
? print_irqtrace_events+0x110/0x110
? mutex_destroy+0x120/0x120
? hlock_class+0xa0/0xa0
? __kernel_map_pages+0x2c9/0x310
? __lock_acquire+0x616/0x2040
? __lock_acquire+0x616/0x2040
? debug_show_all_locks+0x2f0/0x2f0
? mark_lock+0x1b1/0xa00
? print_irqtrace_events+0x110/0x110
? debug_show_all_locks+0x2f0/0x2f0
? debug_show_all_locks+0x2f0/0x2f0
? mark_held_locks+0x6e/0x90
? mark_lock+0x1b1/0xa00
? print_irqtrace_events+0x110/0x110
? check_usage+0x174/0x790
? mark_lock+0x1b1/0xa00
? print_irqtrace_events+0x110/0x110
? mark_lock+0x1b1/0xa00
? usage_match+0x1e/0x30
? print_irqtrace_events+0x110/0x110
? __bfs+0x2a2/0x430
? noop_count+0x20/0x20
? __lock_acquire+0x616/0x2040
? stack_access_ok+0x35/0x80
? deref_stack_reg+0xa1/0xe0
? __read_once_size_nocheck.constprop.6+0x10/0x10
? __orc_find+0x6b/0xc0
? unwind_next_frame+0x39c/0x9d0
? __save_stack_trace+0x5e/0x100
? save_trace+0xbd/0x1e0
? stack_access_ok+0x35/0x80
? deref_stack_reg+0xa1/0xe0
? __read_once_size_nocheck.constprop.6+0x10/0x10
? debug_lockdep_rcu_enabled.part.37+0x16/0x30
? ftrace_ops_trampoline+0x111/0x190
? ftrace_profile_pages_init+0x130/0x130
? unwind_next_frame+0x39c/0x9d0
? rcu_is_watching+0x88/0xd0
? rcu_nmi_exit+0x130/0x130
? is_ftrace_trampoline+0x5/0x10
? kernel_text_address+0x5c/0x90
? __kernel_text_address+0xe/0x30
? unwind_get_return_address+0x2f/0x50
? __save_stack_trace+0x92/0x100
? __list_add_valid+0x29/0xa0
? add_lock_to_list.isra.26+0x1d0/0x21f
? print_lockdep_cache.isra.29+0xd8/0xd8
? save_trace+0x106/0x1e0
? __isolate_lru_page+0x2dc/0x3c0
? remove_mapping+0x1b0/0x1b0
? match_held_lock+0xa5/0x440
? __lock_acquire+0x616/0x2040
? __mod_zone_page_state+0x1a/0x70
? isolate_lru_pages.isra.79+0x888/0xae0
? __isolate_lru_page+0x3c0/0x3c0
? noop_count+0x20/0x20
? hlock_class+0xa0/0xa0
? print_irqtrace_events+0x110/0x110
? check_usage+0x174/0x790
? mark_lock+0x1b1/0xa00
? rb_next+0x90/0x90
? match_held_lock+0x8d/0x440
? mark_lock+0x1b1/0xa00
? save_trace+0x1e0/0x1e0
? print_irqtrace_events+0x110/0x110
? class_equal+0x11/0x20
? __bfs+0xed/0x430
? __kernel_map_pages+0x2c9/0x310
? mutex_destroy+0x120/0x120
? find_held_lock+0x6d/0xd0
? shrink_inactive_list+0x3b4/0x940
? lock_acquire+0x350/0x350
? do_raw_spin_unlock+0x147/0x220
? do_raw_spin_trylock+0x100/0x100
? stop_critical_timings+0x210/0x210
? mark_held_locks+0x6e/0x90
? _raw_spin_unlock_irq+0x29/0x40
shrink_inactive_list+0x451/0x940
? putback_inactive_pages+0x9f0/0x9f0
? isolate_migratepages_range+0x120/0x120
? mark_lock+0x1b1/0xa00
? update_curr+0x2d9/0x670
? compact_zone+0x1d3/0x14c0
? blk_start_plug+0x17d/0x1e0
? kblockd_schedule_delayed_work_on+0x20/0x20
? save_trace+0x1e0/0x1e0
? update_curr+0x15c/0x670
? active_load_balance_cpu_stop+0x7b0/0x7b0
? compaction_suitable+0x350/0x350
? update_cfs_group+0x23a/0x290
? match_held_lock+0x8d/0x440
shrink_node_memcg.constprop.84+0x4c9/0x5e0
? shrink_active_list+0x9c0/0x9c0
? __delayacct_freepages_start+0x28/0x40
? lockdep_rcu_suspicious+0x100/0x100
? shrink_node+0x1c2/0x510
shrink_node+0x1c2/0x510
? trace_hardirqs_on_caller+0x187/0x260
? shrink_node_memcg.constprop.84+0x5e0/0x5e0
? getnstimeofday64+0x20/0x20
? allow_direct_reclaim.part.78+0x220/0x220
? mark_lock+0x1b1/0xa00
? mark_lock+0x1b1/0xa00
? __lock_is_held+0x51/0xc0
try_to_free_pages+0x425/0xb90
? shrink_node+0x510/0x510
? try_to_compact_pages+0x1f4/0x6b0
? compaction_zonelist_suitable+0x2f0/0x2f0
? lock_acquire+0x12e/0x350
? lock_acquire+0x12e/0x350
? fs_reclaim_acquire.part.101+0x5/0x30
? lockdep_rcu_suspicious+0x100/0x100
? rcu_note_context_switch+0x520/0x520
? wake_all_kswapds+0x10a/0x150
__alloc_pages_slowpath+0x955/0x1a00
? __lock_acquire+0x616/0x2040
? warn_alloc+0x250/0x250
? __lock_acquire+0x616/0x2040
? match_held_lock+0x8d/0x440
? save_trace+0x1e0/0x1e0
? debug_show_all_locks+0x2f0/0x2f0
? match_held_lock+0xa5/0x440
? save_trace+0x1e0/0x1e0
? __read_once_size_nocheck.constprop.6+0x10/0x10
? __orc_find+0x6b/0xc0
? match_held_lock+0xa5/0x440
? find_held_lock+0x6d/0xd0
? __lock_is_held+0x51/0xc0
? rcu_note_context_switch+0x520/0x520
? perf_trace_sched_switch+0x560/0x560
? __might_sleep+0x58/0xe0
__alloc_pages_nodemask+0x52c/0x5c0
? gfp_pfmemalloc_allowed+0xc0/0xc0
? __kernel_text_address+0xe/0x30
? unwind_get_return_address+0x2f/0x50
? __save_stack_trace+0x92/0x100
? match_held_lock+0x8d/0x440
? depot_save_stack+0x12e/0x480
? match_held_lock+0xa5/0x440
? stop_critical_timings+0x210/0x210
? __netlink_dump_start+0x201/0x280
? mark_held_locks+0x6e/0x90
? new_slab+0x2f3/0x3f0
new_slab+0x374/0x3f0
___slab_alloc.constprop.81+0x47e/0x5a0
? __lock_is_held+0x51/0xc0
? __alloc_skb+0xee/0x390
? __alloc_skb+0xee/0x390
? __alloc_skb+0xee/0x390
? __slab_alloc.constprop.80+0x32/0x60
__slab_alloc.constprop.80+0x32/0x60
? __alloc_skb+0xee/0x390
__kmalloc_track_caller+0x267/0x310
__kmalloc_reserve.isra.40+0x29/0x80
__alloc_skb+0xee/0x390
? __skb_splice_bits+0x3e0/0x3e0
? netlink_connect+0x1d0/0x1d0
? __netlink_dump_start+0x1f9/0x280
? __mutex_unlock_slowpath+0x121/0x460
? wait_for_completion_killable_timeout+0x450/0x450
? find_held_lock+0x6d/0xd0
netlink_dump+0x2e1/0x520
? refcount_inc_not_zero+0x74/0x110
? __nlmsg_put+0xb0/0xb0
? rcu_is_watching+0x88/0xd0
__netlink_dump_start+0x201/0x280
? inet6_dump_ifmcaddr+0x10/0x10
rtnetlink_rcv_msg+0x6d6/0xa90
? validate_linkmsg+0x540/0x540
? inet6_dump_ifmcaddr+0x10/0x10
? find_held_lock+0x6d/0xd0
? netlink_lookup.isra.42+0x428/0x730
? lock_acquire+0x350/0x350
? find_held_lock+0x6d/0xd0
? inet6_dump_ifmcaddr+0x10/0x10
? netlink_deliver_tap+0x124/0x5c0
? lock_acquire+0x350/0x350
? lockdep_rcu_suspicious+0x100/0x100
? netlink_lookup.isra.42+0x447/0x730
? rcu_is_watching+0x88/0xd0
? netlink_connect+0x1d0/0x1d0
? netlink_deliver_tap+0x143/0x5c0
? __might_fault+0x7d/0xe0
? iov_iter_advance+0x176/0x7d0
? netlink_getname+0x150/0x150
netlink_rcv_skb+0xb6/0x1d0
? validate_linkmsg+0x540/0x540
? netlink_ack+0x4a0/0x4a0
? netlink_trim+0xda/0x1b0
netlink_unicast+0x298/0x320
? netlink_detachskb+0x30/0x30
? __fget+0x410/0x410
netlink_sendmsg+0x57e/0x630
? netlink_broadcast_filtered+0x8f0/0x8f0
? netlink_broadcast_filtered+0x8f0/0x8f0
SYSC_sendto+0x296/0x320
? SYSC_connect+0x200/0x200
? __context_tracking_exit.part.4+0xe7/0x290
? cyc2ns_read_end+0x10/0x10
? lockdep_rcu_suspicious+0x100/0x100
? rcu_read_lock_sched_held+0x90/0xa0
? __context_tracking_exit.part.4+0x223/0x290
? stop_critical_timings+0x210/0x210
? SyS_socket+0xd6/0x120
? sock_create_kern+0x10/0x10
? mark_held_locks+0x1c/0x90
? do_syscall_64+0x110/0xc05
? SyS_getpeername+0x10/0x10
do_syscall_64+0x1e5/0xc05
? syscall_return_slowpath+0x5b0/0x5b0
? lock_acquire+0x350/0x350
? lockdep_rcu_suspicious+0x100/0x100
? get_vtime_delta+0x15/0xf0
? get_vtime_delta+0x8b/0xf0
? vtime_user_enter+0x7f/0x90
? __context_tracking_enter+0x13c/0x2b0
? __context_tracking_enter+0x13c/0x2b0
? context_tracking_exit.part.5+0x40/0x40
? do_page_fault+0xb0/0x4d0
? rcu_is_watching+0x88/0xd0
? vmalloc_sync_all+0x20/0x20
? time_hardirqs_on+0x220/0x220
? prepare_exit_to_usermode+0x1d0/0x2a0
? enter_from_user_mode+0x30/0x30
? entry_SYSCALL_64_after_hwframe+0x18/0x2e
? trace_hardirqs_off_caller+0xc2/0x110
? trace_hardirqs_off_thunk+0x1a/0x1c
entry_SYSCALL64_slow_path+0x25/0x25
RIP: 0033:0x7f204299f54d
RSP: 002b:00007ffc49024fd8 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 000000000000000a RCX: 00007f204299f54d
RDX: 0000000000000018 RSI: 00007ffc49025010 RDI: 0000000000000012
RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000012
R13: 00007ffc49029550 R14: 000055e31307a250 R15: 00007ffc49029530