BUG: sleeping function called from invalid context at mm/memory.c:2007
in_atomic(): 0, irqs_disabled(): 0, non_block: 0, pid: 5354, name: dhcpcd
preempt_count: 0, expected: 0
RCU nest depth: 1, expected: 0
2 locks held by dhcpcd/5354:
 #0: ffff888106f558f8 (&mm->mmap_lock){++++}-{4:4}, at: vms_complete_munmap_vmas+0x247/0xc60
 #1: ffffffff8e95cd60 (rcu_read_lock){....}-{1:3}, at: __pte_offset_map+0x29/0x240
CPU: 0 UID: 0 PID: 5354 Comm: dhcpcd Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150
 __might_resched+0x378/0x4d0
 __zap_vma_range+0x44bd/0x4b40
 unmap_vmas+0x379/0x530
 unmap_region+0x208/0x330
 vms_complete_munmap_vmas+0x493/0xc60
 do_vmi_align_munmap+0x3b7/0x4b0
 do_vmi_munmap+0x252/0x2d0
 __vm_munmap+0x22c/0x3d0
 __x64_sys_munmap+0x60/0x70
 do_syscall_64+0x15f/0xf80
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fc4f3cc0817
Code: ff ff 76 10 48 8b 15 10 36 0d 00 f7 d8 64 89 02 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 b8 0b 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e1 35 0d 00 f7 d8 64 89 01 48
RSP: 002b:00007ffe2e32fb98 EFLAGS: 00000246 ORIG_RAX: 000000000000000b
RAX: ffffffffffffffda RBX: 00007ffe2e32feb4 RCX: 00007fc4f3cc0817
RDX: 00007fc4f3cb8e12 RSI: 0000000000009000 RDI: 00007fc4f3b41000
RBP: 00007fc4f3b41000 R08: 00007ffe2e32fc20 R09: 0000000000000000
R10: 0000000000000008 R11: 0000000000000246 R12: 0000000000009000
R13: 0000000000000000 R14: 00000000000015be R15: 00007ffe2e32fc20
 </TASK>

=============================
[ BUG: Invalid wait context ]
syzkaller #0 Tainted: G        W          
-----------------------------
dhcpcd/5354 is trying to lock:
ffff88810676aee0 (&anon_vma->rwsem){++++}-{4:4}, at: unlink_anon_vmas+0x11b/0x730
other info that might help us debug this:
context-{5:5}
2 locks held by dhcpcd/5354:
 #0: ffff888106f558f8 (&mm->mmap_lock){++++}-{4:4}, at: vms_complete_munmap_vmas+0x247/0xc60
 #1: ffffffff8e95cd60 (rcu_read_lock){....}-{1:3}, at: __pte_offset_map+0x29/0x240
stack backtrace:
CPU: 0 UID: 0 PID: 5354 Comm: dhcpcd Tainted: G        W           syzkaller #0 PREEMPT(full) 
Tainted: [W]=WARN
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150
 __lock_acquire+0xec1/0x2cf0
 lock_acquire+0x106/0x350
 down_write+0x96/0x200
 unlink_anon_vmas+0x11b/0x730
 free_pgtables+0x663/0xb70
 unmap_region+0x29d/0x330
 vms_complete_munmap_vmas+0x493/0xc60
 do_vmi_align_munmap+0x3b7/0x4b0
 do_vmi_munmap+0x252/0x2d0
 __vm_munmap+0x22c/0x3d0
 __x64_sys_munmap+0x60/0x70
 do_syscall_64+0x15f/0xf80
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fc4f3cc0817
Code: ff ff 76 10 48 8b 15 10 36 0d 00 f7 d8 64 89 02 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 b8 0b 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e1 35 0d 00 f7 d8 64 89 01 48
RSP: 002b:00007ffe2e32fb98 EFLAGS: 00000246 ORIG_RAX: 000000000000000b
RAX: ffffffffffffffda RBX: 00007ffe2e32feb4 RCX: 00007fc4f3cc0817
RDX: 00007fc4f3cb8e12 RSI: 0000000000009000 RDI: 00007fc4f3b41000
RBP: 00007fc4f3b41000 R08: 00007ffe2e32fc20 R09: 0000000000000000
R10: 0000000000000008 R11: 0000000000000246 R12: 0000000000009000
R13: 0000000000000000 R14: 00000000000015be R15: 00007ffe2e32fc20
 </TASK>
------------[ cut here ]------------
Voluntary context switch within RCU read-side critical section!
WARNING: kernel/rcu/tree_plugin.h:332 at rcu_note_context_switch+0xcac/0xf40, CPU#0: dhcpcd/5354
Modules linked in:
CPU: 0 UID: 0 PID: 5354 Comm: dhcpcd Tainted: G        W           syzkaller #0 PREEMPT(full) 
Tainted: [W]=WARN
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
RIP: 0010:rcu_note_context_switch+0xcac/0xf40
Code: 00 41 c6 45 00 00 48 8b 3d b1 cc 84 0e 48 81 c4 b8 00 00 00 5b 41 5c 41 5d 41 5e 41 5f 5d e9 8b 60 ff ff 48 8d 3d 04 b0 88 0e <67> 48 0f b9 3a e9 1b f4 ff ff 90 0f 0b 90 45 84 e4 0f 84 ea f3 ff
RSP: 0018:ffffc90003a27370 EFLAGS: 00010002
RAX: 0000000000000000 RBX: ffff88810f541d80 RCX: 0000000080000002
RDX: 0000000000000000 RSI: ffffffff8c28aac0 RDI: ffffffff90342920
RBP: dffffc0000000000 R08: ffffffff903098f7 R09: 1ffffffff206131e
R10: dffffc0000000000 R11: fffffbfff206131f R12: 0000000000000000
R13: ffff88810f541d80 R14: ffff88812103be80 R15: ffff88810f542244
FS:  00007fc4f3bef740(0000) GS:ffff88818dc93000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffe2e34a1c8 CR3: 000000010b3d6000 CR4: 00000000000006f0
Call Trace:
 <TASK>
 __schedule+0x2e6/0x5680
 schedule+0x164/0x360
 schedule_hrtimeout_range_clock+0x1f2/0x330
 poll_schedule_timeout+0xd0/0x1a0
 do_sys_poll+0x7eb/0x10e0
 __se_sys_ppoll+0x209/0x2b0
 do_syscall_64+0x15f/0xf80
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fc4f3cbcad5
Code: 85 d2 74 0d 0f 10 02 48 8d 54 24 20 0f 11 44 24 20 64 8b 04 25 18 00 00 00 85 c0 75 27 41 b8 08 00 00 00 b8 0f 01 00 00 0f 05 <48> 3d 00 f0 ff ff 76 75 48 8b 15 24 73 0d 00 f7 d8 64 89 02 48 83
RSP: 002b:00007ffe2e350370 EFLAGS: 00000246 ORIG_RAX: 000000000000010f
RAX: ffffffffffffffda RBX: 000055fd48392dc0 RCX: 00007fc4f3cbcad5
RDX: 0000000000000000 RSI: 0000000000000003 RDI: 000055fd48392da0
RBP: 00007ffe2e3506c0 R08: 0000000000000008 R09: 6f42b087ff6cc882
R10: 00007ffe2e3506c0 R11: 0000000000000246 R12: 0000000000000000
R13: 000055fd3e6d6610 R14: 00000000ffffffff R15: 0000000000000000
 </TASK>
