================================
WARNING: inconsistent lock state
syzkaller #0 Not tainted
--------------------------------
inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
syz-executor/5846 [HC0[0]:SC1[1]:HE1:SE0] takes:
ffff8880387930a8 (&p->tcfa_lock){+.?.}-{3:3}, at: est_timer+0xd4/0x9f0
{SOFTIRQ-ON-W} state was registered at:
  lock_acquire+0x120/0x360
  _raw_spin_lock+0x2e/0x40
  tcf_skbedit_init+0xaf4/0xff0
  tcf_action_init_1+0x463/0x6d0
  tcf_action_init+0x2cf/0xab0
  tc_ctl_action+0x430/0xbd0
  rtnetlink_rcv_msg+0x77c/0xb70
  netlink_rcv_skb+0x208/0x470
  netlink_unicast+0x82f/0x9e0
  netlink_sendmsg+0x805/0xb30
  __sock_sendmsg+0x21c/0x270
  ____sys_sendmsg+0x505/0x830
  ___sys_sendmsg+0x21f/0x2a0
  __x64_sys_sendmsg+0x19b/0x260
  do_syscall_64+0xfa/0x3b0
  entry_SYSCALL_64_after_hwframe+0x77/0x7f
irq event stamp: 2005716
hardirqs last  enabled at (2005716): [<ffffffff8b7cceb3>] _raw_spin_unlock_irq+0x23/0x50
hardirqs last disabled at (2005715): [<ffffffff8b7ccc2d>] _raw_spin_lock_irq+0x7d/0xf0
softirqs last  enabled at (2005430): [<ffffffff8168c2ab>] fpu__restore_sig+0x4ab/0x1100
softirqs last disabled at (2005713): [<ffffffff8184f4da>] __irq_exit_rcu+0xca/0x1f0

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

       CPU0
       ----
  lock(&p->tcfa_lock);
  <Interrupt>
    lock(&p->tcfa_lock);

 *** DEADLOCK ***

3 locks held by syz-executor/5846:
 #0: ffffffff8e139ee0 (rcu_read_lock){....}-{1:3}, at: dput+0x37/0x2b0
 #1: ffff88803d0819c8 (&lockref->lock){+.+.}-{3:3}, at: fast_dput+0xdd/0x430
 #2: ffffc90000007be0 ((&est->timer)){+.-.}-{0:0}, at: call_timer_fn+0xbe/0x5f0

stack backtrace:
CPU: 0 UID: 0 PID: 5846 Comm: syz-executor 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:
 <IRQ>
 dump_stack_lvl+0x189/0x250
 print_usage_bug+0x297/0x2e0
 valid_state+0xc3/0xf0
 mark_lock_irq+0x36/0x390
 mark_lock+0x11b/0x190
 __lock_acquire+0x680/0xd20
 lock_acquire+0x120/0x360
 _raw_spin_lock+0x2e/0x40
 est_timer+0xd4/0x9f0
 call_timer_fn+0x17e/0x5f0
 __run_timer_base+0x61a/0x860
 run_timer_softirq+0xb7/0x180
 handle_softirqs+0x286/0x870
 __irq_exit_rcu+0xca/0x1f0
 irq_exit_rcu+0x9/0x30
 sysvec_apic_timer_interrupt+0xa6/0xc0
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20
RIP: 0010:lock_acquire+0x175/0x360
Code: 00 00 00 00 9c 8f 44 24 30 f7 44 24 30 00 02 00 00 0f 85 cd 00 00 00 f7 44 24 08 00 02 00 00 74 01 fb 65 48 8b 05 3b 64 03 11 <48> 3b 44 24 58 0f 85 f2 00 00 00 48 83 c4 60 5b 41 5c 41 5d 41 5e
RSP: 0018:ffffc90003ae7c80 EFLAGS: 00000206
RAX: 217823fb6b3f9a00 RBX: 0000000000000000 RCX: 217823fb6b3f9a00
RDX: 0000000000000000 RSI: ffffffff8dba8adc RDI: ffffffff8be33800
RBP: ffffffff823a0afd R08: 0000000000000000 R09: ffffffff823a0afd
R10: dffffc0000000000 R11: ffffed1020002420 R12: 0000000000000000
R13: ffff88803d0819c8 R14: 0000000000000001 R15: 0000000000000246
 _raw_spin_lock+0x2e/0x40
 fast_dput+0xdd/0x430
 dput+0xe8/0x2b0
 path_umount+0x1e2/0xb70
 __x64_sys_umount+0x122/0x160
 do_syscall_64+0xfa/0x3b0
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f00bf58ff17
Code: a8 ff ff ff f7 d8 64 89 01 48 83 c8 ff c3 0f 1f 44 00 00 31 f6 e9 09 00 00 00 66 0f 1f 84 00 00 00 00 00 b8 a6 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 c7 c2 a8 ff ff ff f7 d8 64 89 02 b8
RSP: 002b:00007ffda738ba88 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f00bf58ff17
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007ffda738bb40
RBP: 00007ffda738bb40 R08: 0000000000000000 R09: 0000000000000000
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007ffda738cbd0
R13: 00007f00bf611c05 R14: 000000000002c019 R15: 00007ffda738cc10
 </TASK>
