================================
WARNING: inconsistent lock state
syzkaller #0 Not tainted
--------------------------------
inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
kworker/u8:4/8965 [HC0[0]:SC1[1]:HE1:SE0] takes:
ffff88816fe34260 (sk_lock-AF_X25){+.?.}-{0:0}, at: x25_kill_by_neigh+0x10d/0x250
{SOFTIRQ-ON-W} state was registered at:
  lock_acquire+0x106/0x350
  lock_sock_nested+0x41/0x100
  x25_bind+0x209/0x450
  __sys_bind+0x2e3/0x410
  __x64_sys_bind+0x7a/0x90
  do_syscall_64+0x174/0x580
  entry_SYSCALL_64_after_hwframe+0x77/0x7f
irq event stamp: 87570
hardirqs last  enabled at (87570): [<ffffffff81887fb0>] __local_bh_enable_ip+0xd0/0x130
hardirqs last disabled at (87569): [<ffffffff81887f51>] __local_bh_enable_ip+0x71/0x130
softirqs last  enabled at (87480): [<ffffffff8b9d9fbe>] batadv_forw_packet_steal+0x14e/0x170
softirqs last disabled at (87481): [<ffffffff81888096>] do_softirq+0x76/0xd0

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

       CPU0
       ----
  lock(sk_lock-AF_X25);
  <Interrupt>
    lock(sk_lock-AF_X25);

 *** DEADLOCK ***

3 locks held by kworker/u8:4/8965:
 #0: ffff8881120bc940 ((wq_completion)bat_events){+.+.}-{0:0}, at: process_scheduled_works+0xa20/0x14e0
 #1: ffffc9000a0bfc40 ((work_completion)(&(&forw_packet_aggr->delayed_work)->work)){+.+.}-{0:0}, at: process_scheduled_works+0xa20/0x14e0
 #2: ffffffff8eb59c60 (rcu_read_lock){....}-{1:3}, at: netif_receive_skb_core+0x33/0x2b0

stack backtrace:
CPU: 1 UID: 0 PID: 8965 Comm: kworker/u8:4 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
Workqueue: bat_events batadv_iv_send_outstanding_bat_ogm_packet
Call Trace:
 <IRQ>
 dump_stack_lvl+0xe8/0x150
 print_usage_bug+0x28b/0x2e0
 mark_lock_irq+0x410/0x420
 mark_lock+0x115/0x190
 __lock_acquire+0x65c/0x2cf0
 lock_acquire+0x106/0x350
 lock_sock_nested+0x41/0x100
 x25_kill_by_neigh+0x10d/0x250
 x25_lapb_receive_frame+0x1b0/0xfb0
 netif_receive_skb_core+0x2a6/0x2b0
 lapbeth_napi_poll+0x42/0x90
 __napi_poll+0xaa/0x330
 net_rx_action+0x61d/0xf50
 handle_softirqs+0x225/0x840
 do_softirq+0x76/0xd0
 </IRQ>
 <TASK>
 __local_bh_enable_ip+0xf8/0x130
 batadv_forw_packet_steal+0x14e/0x170
 batadv_iv_send_outstanding_bat_ogm_packet+0x691/0x790
 process_scheduled_works+0xa8e/0x14e0
 worker_thread+0xa47/0xfb0
 kthread+0x388/0x470
 ret_from_fork+0x514/0xb70
 ret_from_fork_asm+0x1a/0x30
 </TASK>
BUG: sleeping function called from invalid context at net/core/sock.c:3829
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 8965, name: kworker/u8:4
preempt_count: 101, expected: 0
RCU nest depth: 1, expected: 0
INFO: lockdep is turned off.
Preemption disabled at:
[<0000000000000000>] 0x0
CPU: 1 UID: 0 PID: 8965 Comm: kworker/u8:4 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
Workqueue: bat_events batadv_iv_send_outstanding_bat_ogm_packet
Call Trace:
 <IRQ>
 dump_stack_lvl+0xe8/0x150
 __might_resched+0x378/0x4d0
 lock_sock_nested+0x56/0x100
 x25_kill_by_neigh+0x10d/0x250
 x25_lapb_receive_frame+0x1b0/0xfb0
 netif_receive_skb_core+0x2a6/0x2b0
 lapbeth_napi_poll+0x42/0x90
 __napi_poll+0xaa/0x330
 net_rx_action+0x61d/0xf50
 handle_softirqs+0x225/0x840
 do_softirq+0x76/0xd0
 </IRQ>
 <TASK>
 __local_bh_enable_ip+0xf8/0x130
 batadv_forw_packet_steal+0x14e/0x170
 batadv_iv_send_outstanding_bat_ogm_packet+0x691/0x790
 process_scheduled_works+0xa8e/0x14e0
 worker_thread+0xa47/0xfb0
 kthread+0x388/0x470
 ret_from_fork+0x514/0xb70
 ret_from_fork_asm+0x1a/0x30
 </TASK>
