===================================================== WARNING: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected 6.9.0-rc2-syzkaller-00042-g3e92c1e6cd87 #0 Not tainted ----------------------------------------------------- sshd/5188 [HC0[0]:SC0[4]:HE0:SE0] is trying to acquire: ffff88805d1e3a00 (&stab->lock){+.-.}-{2:2}, at: spin_lock_bh include/linux/spinlock.h:356 [inline] ffff88805d1e3a00 (&stab->lock){+.-.}-{2:2}, at: __sock_map_delete net/core/sock_map.c:414 [inline] ffff88805d1e3a00 (&stab->lock){+.-.}-{2:2}, at: sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 and this task is already holding: ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: __iova_rcache_get drivers/iommu/iova.c:834 [inline] ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: iova_rcache_get drivers/iommu/iova.c:865 [inline] ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: alloc_iova_fast+0x6f3/0xa30 drivers/iommu/iova.c:391 which would create a new lock dependency: (&rcache->lock){..-.}-{2:2} -> (&stab->lock){+.-.}-{2:2} but this new dependency connects a HARDIRQ-irq-safe lock: (&host->lock){-.-.}-{2:2} ... which became HARDIRQ-irq-safe at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] ahci_single_level_irq_intr+0xc7/0x120 drivers/ata/libahci.c:2022 __handle_irq_event_percpu+0x229/0x7c0 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0xab/0x1e0 kernel/irq/handle.c:210 handle_edge_irq+0x263/0xd10 kernel/irq/chip.c:831 generic_handle_irq_desc include/linux/irqdesc.h:161 [inline] handle_irq arch/x86/kernel/irq.c:238 [inline] __common_interrupt+0xde/0x250 arch/x86/kernel/irq.c:257 common_interrupt+0xab/0xd0 arch/x86/kernel/irq.c:247 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 native_safe_halt arch/x86/include/asm/irqflags.h:48 [inline] arch_safe_halt arch/x86/include/asm/irqflags.h:86 [inline] default_idle+0xf/0x20 arch/x86/kernel/process.c:742 default_idle_call+0x6d/0xb0 kernel/sched/idle.c:117 cpuidle_idle_call kernel/sched/idle.c:191 [inline] do_idle+0x32c/0x3f0 kernel/sched/idle.c:332 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:430 start_secondary+0x220/0x2b0 arch/x86/kernel/smpboot.c:313 common_startup_64+0x13e/0x148 to a HARDIRQ-irq-unsafe lock: (&stab->lock){+.-.}-{2:2} ... which became HARDIRQ-irq-unsafe at: ... lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 kfree_skbmem+0x10e/0x200 net/core/skbuff.c:1159 __kfree_skb net/core/skbuff.c:1217 [inline] kfree_skb_reason+0x13a/0x210 net/core/skbuff.c:1252 packet_rcv+0x166/0x1510 net/packet/af_packet.c:2230 dev_queue_xmit_nit+0x846/0xba0 net/core/dev.c:2296 xmit_one net/core/dev.c:3527 [inline] dev_hard_start_xmit+0x56/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a other info that might help us debug this: Chain exists of: &host->lock --> &rcache->lock --> &stab->lock Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&stab->lock); local_irq_disable(); lock(&host->lock); lock(&rcache->lock); lock(&host->lock); *** DEADLOCK *** 9 locks held by sshd/5188: #0: ffff8880264fa718 (sk_lock-AF_INET){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1671 [inline] #0: ffff8880264fa718 (sk_lock-AF_INET){+.+.}-{0:0}, at: tcp_sendmsg+0x20/0x50 net/ipv4/tcp.c:1341 #1: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:329 [inline] #1: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:781 [inline] #1: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x72/0x1940 net/ipv4/ip_output.c:470 #2: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:329 [inline] #2: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:781 [inline] #2: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x364/0x2590 net/ipv4/ip_output.c:228 #3: ffffffff8d7b4bc0 (rcu_read_lock_bh){....}-{1:2}, at: local_bh_disable include/linux/bottom_half.h:20 [inline] #3: ffffffff8d7b4bc0 (rcu_read_lock_bh){....}-{1:2}, at: rcu_read_lock_bh include/linux/rcupdate.h:833 [inline] #3: ffffffff8d7b4bc0 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x244/0x3f20 net/core/dev.c:4260 #4: ffff88801be51258 (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+...}-{2:2}, at: spin_trylock include/linux/spinlock.h:361 [inline] #4: ffff88801be51258 (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+...}-{2:2}, at: qdisc_run_begin include/net/sch_generic.h:195 [inline] #4: ffff88801be51258 (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+...}-{2:2}, at: qdisc_run_begin include/net/sch_generic.h:192 [inline] #4: ffff88801be51258 (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+...}-{2:2}, at: __dev_xmit_skb net/core/dev.c:3747 [inline] #4: ffff88801be51258 (dev->qdisc_tx_busylock ?: &qdisc_tx_busylock){+...}-{2:2}, at: __dev_queue_xmit+0x109f/0x3f20 net/core/dev.c:4301 #5: ffff888015fb60d8 (_xmit_ETHER#2){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] #5: ffff888015fb60d8 (_xmit_ETHER#2){+.-.}-{2:2}, at: __netif_tx_lock include/linux/netdevice.h:4371 [inline] #5: ffff888015fb60d8 (_xmit_ETHER#2){+.-.}-{2:2}, at: sch_direct_xmit+0x337/0xc20 net/sched/sch_generic.c:341 #6: ffffe8ffad310658 (&cpu_rcache->lock){..-.}-{2:2}, at: __iova_rcache_get drivers/iommu/iova.c:826 [inline] #6: ffffe8ffad310658 (&cpu_rcache->lock){..-.}-{2:2}, at: iova_rcache_get drivers/iommu/iova.c:865 [inline] #6: ffffe8ffad310658 (&cpu_rcache->lock){..-.}-{2:2}, at: alloc_iova_fast+0xfa/0xa30 drivers/iommu/iova.c:391 #7: ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] #7: ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: __iova_rcache_get drivers/iommu/iova.c:834 [inline] #7: ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: iova_rcache_get drivers/iommu/iova.c:865 [inline] #7: ffff888019900018 (&rcache->lock){..-.}-{2:2}, at: alloc_iova_fast+0x6f3/0xa30 drivers/iommu/iova.c:391 #8: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:329 [inline] #8: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:781 [inline] #8: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: __bpf_trace_run kernel/trace/bpf_trace.c:2380 [inline] #8: ffffffff8d7b4c20 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run3+0xf8/0x440 kernel/trace/bpf_trace.c:2421 the dependencies between HARDIRQ-irq-safe lock and the holding lock: -> (&host->lock){-.-.}-{2:2} { IN-HARDIRQ-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] ahci_single_level_irq_intr+0xc7/0x120 drivers/ata/libahci.c:2022 __handle_irq_event_percpu+0x229/0x7c0 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0xab/0x1e0 kernel/irq/handle.c:210 handle_edge_irq+0x263/0xd10 kernel/irq/chip.c:831 generic_handle_irq_desc include/linux/irqdesc.h:161 [inline] handle_irq arch/x86/kernel/irq.c:238 [inline] __common_interrupt+0xde/0x250 arch/x86/kernel/irq.c:257 common_interrupt+0xab/0xd0 arch/x86/kernel/irq.c:247 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 native_safe_halt arch/x86/include/asm/irqflags.h:48 [inline] arch_safe_halt arch/x86/include/asm/irqflags.h:86 [inline] default_idle+0xf/0x20 arch/x86/kernel/process.c:742 default_idle_call+0x6d/0xb0 kernel/sched/idle.c:117 cpuidle_idle_call kernel/sched/idle.c:191 [inline] do_idle+0x32c/0x3f0 kernel/sched/idle.c:332 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:430 start_secondary+0x220/0x2b0 arch/x86/kernel/smpboot.c:313 common_startup_64+0x13e/0x148 IN-SOFTIRQ-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] ahci_single_level_irq_intr+0xc7/0x120 drivers/ata/libahci.c:2022 __handle_irq_event_percpu+0x229/0x7c0 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0xab/0x1e0 kernel/irq/handle.c:210 handle_edge_irq+0x263/0xd10 kernel/irq/chip.c:831 generic_handle_irq_desc include/linux/irqdesc.h:161 [inline] handle_irq arch/x86/kernel/irq.c:238 [inline] __common_interrupt+0xde/0x250 arch/x86/kernel/irq.c:257 common_interrupt+0x52/0xd0 arch/x86/kernel/irq.c:247 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 variable_ffs arch/x86/include/asm/bitops.h:321 [inline] __do_softirq+0x1dc/0x922 kernel/softirq.c:542 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0xb9/0x120 kernel/softirq.c:645 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0x95/0xb0 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 console_flush_all+0xa19/0xd70 kernel/printk/printk.c:2985 console_unlock+0xae/0x290 kernel/printk/printk.c:3048 vprintk_emit kernel/printk/printk.c:2348 [inline] vprintk_emit+0x11a/0x5a0 kernel/printk/printk.c:2303 dev_vprintk_emit+0x1bd/0x3b0 drivers/base/core.c:4930 dev_printk_emit+0xc8/0x100 drivers/base/core.c:4941 __dev_printk+0xf5/0x270 drivers/base/core.c:4953 _dev_printk+0xde/0x120 drivers/base/core.c:4970 sdev_prefix_printk+0x1a2/0x230 drivers/scsi/scsi_logging.c:78 sd_print_capacity drivers/scsi/sd.c:2824 [inline] sd_revalidate_disk.isra.0+0x2988/0x9d10 drivers/scsi/sd.c:3653 sd_probe+0x8d9/0xf80 drivers/scsi/sd.c:3907 call_driver_probe drivers/base/dd.c:578 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:656 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:798 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:828 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:956 bus_for_each_drv+0x157/0x1e0 drivers/base/bus.c:457 __device_attach_async_helper+0x1d3/0x290 drivers/base/dd.c:985 async_run_entry_fn+0x9c/0x530 kernel/async.c:129 process_one_work+0x902/0x1a30 kernel/workqueue.c:3254 process_scheduled_works kernel/workqueue.c:3335 [inline] worker_thread+0x6c8/0xf70 kernel/workqueue.c:3416 kthread+0x2c1/0x3a0 kernel/kthread.c:388 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162 ata_dev_init+0x1b4/0x410 drivers/ata/libata-core.c:5399 ata_link_init+0x19c/0x300 drivers/ata/libata-core.c:5444 ata_port_alloc+0x4a1/0x590 drivers/ata/libata-core.c:5519 ata_host_alloc+0x21c/0x2c0 drivers/ata/libata-core.c:5631 ata_host_alloc_pinfo+0x2b/0x3f0 drivers/ata/libata-core.c:5674 ahci_init_one+0x132a/0x2de0 drivers/ata/ahci.c:1885 local_pci_probe+0xde/0x1b0 drivers/pci/pci-driver.c:324 pci_call_probe drivers/pci/pci-driver.c:392 [inline] __pci_device_probe drivers/pci/pci-driver.c:417 [inline] pci_device_probe+0x29d/0x7b0 drivers/pci/pci-driver.c:451 call_driver_probe drivers/base/dd.c:578 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:656 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:798 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:828 __driver_attach+0x283/0x580 drivers/base/dd.c:1214 bus_for_each_dev+0x13c/0x1d0 drivers/base/bus.c:368 bus_add_driver+0x2ed/0x640 drivers/base/bus.c:673 driver_register+0x15c/0x4b0 drivers/base/driver.c:246 do_one_initcall+0x128/0x630 init/main.c:1238 do_initcall_level init/main.c:1300 [inline] do_initcalls init/main.c:1316 [inline] do_basic_setup init/main.c:1335 [inline] kernel_init_freeable+0x660/0xc50 init/main.c:1548 kernel_init+0x1c/0x2b0 init/main.c:1437 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 } ... key at: [] __key.5+0x0/0x40 -> (&cpu_rcache->lock){..-.}-{2:2} { IN-SOFTIRQ-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162 __iova_rcache_insert drivers/iommu/iova.c:772 [inline] iova_rcache_insert drivers/iommu/iova.c:809 [inline] free_iova_fast+0xd1/0x4a0 drivers/iommu/iova.c:426 fq_ring_free_locked+0x1ab/0x310 drivers/iommu/dma-iommu.c:160 fq_ring_free drivers/iommu/dma-iommu.c:173 [inline] fq_flush_timeout+0x199/0x2e0 drivers/iommu/dma-iommu.c:196 call_timer_fn+0x1a0/0x610 kernel/time/timer.c:1793 expire_timers kernel/time/timer.c:1844 [inline] __run_timers+0x74b/0xaf0 kernel/time/timer.c:2418 __run_timer_base kernel/time/timer.c:2429 [inline] __run_timer_base kernel/time/timer.c:2422 [inline] run_timer_base+0x111/0x190 kernel/time/timer.c:2438 run_timer_softirq+0x1a/0x40 kernel/time/timer.c:2448 __do_softirq+0x218/0x922 kernel/softirq.c:554 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0xb9/0x120 kernel/softirq.c:645 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0x95/0xb0 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 native_safe_halt arch/x86/include/asm/irqflags.h:48 [inline] arch_safe_halt arch/x86/include/asm/irqflags.h:86 [inline] default_idle+0xf/0x20 arch/x86/kernel/process.c:742 default_idle_call+0x6d/0xb0 kernel/sched/idle.c:117 cpuidle_idle_call kernel/sched/idle.c:191 [inline] do_idle+0x32c/0x3f0 kernel/sched/idle.c:332 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:430 start_secondary+0x220/0x2b0 arch/x86/kernel/smpboot.c:313 common_startup_64+0x13e/0x148 INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162 __iova_rcache_get drivers/iommu/iova.c:826 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0xfa/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x2e6/0x450 drivers/iommu/dma-iommu.c:795 __iommu_dma_alloc_noncontiguous.constprop.0+0x498/0x9c0 drivers/iommu/dma-iommu.c:978 iommu_dma_alloc_remap drivers/iommu/dma-iommu.c:1026 [inline] iommu_dma_alloc+0x3c9/0x5f0 drivers/iommu/dma-iommu.c:1621 dma_alloc_attrs+0x25a/0x2a0 kernel/dma/mapping.c:522 dmam_alloc_attrs+0x67/0x180 kernel/dma/mapping.c:99 dmam_alloc_coherent include/linux/dma-mapping.h:553 [inline] ahci_port_start+0x415/0x920 drivers/ata/libahci.c:2530 ata_host_start+0x36b/0x730 drivers/ata/libata-core.c:5819 ata_host_activate+0x2f/0x3c0 drivers/ata/libata-core.c:6039 ahci_host_activate+0x3fc/0x570 drivers/ata/libahci.c:2768 ahci_init_one+0x2485/0x2de0 drivers/ata/ahci.c:1953 local_pci_probe+0xde/0x1b0 drivers/pci/pci-driver.c:324 pci_call_probe drivers/pci/pci-driver.c:392 [inline] __pci_device_probe drivers/pci/pci-driver.c:417 [inline] pci_device_probe+0x29d/0x7b0 drivers/pci/pci-driver.c:451 call_driver_probe drivers/base/dd.c:578 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:656 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:798 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:828 __driver_attach+0x283/0x580 drivers/base/dd.c:1214 bus_for_each_dev+0x13c/0x1d0 drivers/base/bus.c:368 bus_add_driver+0x2ed/0x640 drivers/base/bus.c:673 driver_register+0x15c/0x4b0 drivers/base/driver.c:246 do_one_initcall+0x128/0x630 init/main.c:1238 do_initcall_level init/main.c:1300 [inline] do_initcalls init/main.c:1316 [inline] do_basic_setup init/main.c:1335 [inline] kernel_init_freeable+0x660/0xc50 init/main.c:1548 kernel_init+0x1c/0x2b0 init/main.c:1437 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 } ... key at: [] __key.0+0x0/0x40 ... acquired at: __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162 __iova_rcache_get drivers/iommu/iova.c:826 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0xfa/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x2e6/0x450 drivers/iommu/dma-iommu.c:795 iommu_dma_map_sg+0x765/0xc80 drivers/iommu/dma-iommu.c:1444 __dma_map_sg_attrs+0xd6/0x230 kernel/dma/mapping.c:201 dma_map_sg_attrs+0x34/0x50 kernel/dma/mapping.c:236 ata_sg_setup drivers/ata/libata-core.c:4741 [inline] ata_qc_issue+0x81a/0xf50 drivers/ata/libata-core.c:5043 ata_exec_internal_sg+0xaa9/0x1800 drivers/ata/libata-core.c:1576 ata_exec_internal+0x113/0x180 drivers/ata/libata-core.c:1689 ata_do_dev_read_id drivers/ata/libata-core.c:1763 [inline] ata_dev_read_id+0xc9c/0x18e0 drivers/ata/libata-core.c:1836 ata_eh_revalidate_and_attach drivers/ata/libata-eh.c:3110 [inline] ata_eh_recover+0x1789/0x3d80 drivers/ata/libata-eh.c:3820 sata_pmp_eh_recover drivers/ata/libata-pmp.c:936 [inline] sata_pmp_error_handler+0x103e/0x2900 drivers/ata/libata-pmp.c:1099 ahci_error_handler+0x10c/0x1e0 drivers/ata/libahci.c:2226 ata_scsi_port_error_handler+0x94e/0x1b80 drivers/ata/libata-eh.c:730 ata_scsi_error+0x1eb/0x300 drivers/ata/libata-eh.c:572 scsi_error_handler+0x2ff/0x1650 drivers/scsi/scsi_error.c:2338 kthread+0x2c1/0x3a0 kernel/kthread.c:388 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 -> (&rcache->lock){..-.}-{2:2} { IN-SOFTIRQ-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] __iova_rcache_get drivers/iommu/iova.c:834 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x6f3/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x2e6/0x450 drivers/iommu/dma-iommu.c:795 __iommu_dma_map+0x175/0x330 drivers/iommu/dma-iommu.c:869 iommu_dma_map_page+0x183/0x760 drivers/iommu/dma-iommu.c:1190 dma_map_page_attrs+0x148/0x7f0 kernel/dma/mapping.c:163 dma_map_single_attrs include/linux/dma-mapping.h:341 [inline] e1000_tx_map drivers/net/ethernet/intel/e1000e/netdev.c:5566 [inline] e1000_xmit_frame+0x1879/0x48f0 drivers/net/ethernet/intel/e1000e/netdev.c:5885 __netdev_start_xmit include/linux/netdevice.h:4903 [inline] netdev_start_xmit include/linux/netdevice.h:4917 [inline] xmit_one net/core/dev.c:3531 [inline] dev_hard_start_xmit+0x143/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 lapb_data_transmit+0x93/0xc0 net/lapb/lapb_iface.c:447 lapb_transmit_buffer+0xce/0x390 net/lapb/lapb_out.c:149 lapb_send_control+0x1c8/0x320 net/lapb/lapb_subr.c:251 lapb_t1timer_expiry+0x609/0x900 net/lapb/lapb_timer.c:142 call_timer_fn+0x1a0/0x610 kernel/time/timer.c:1793 expire_timers kernel/time/timer.c:1844 [inline] __run_timers+0x74b/0xaf0 kernel/time/timer.c:2418 __run_timer_base kernel/time/timer.c:2429 [inline] __run_timer_base kernel/time/timer.c:2422 [inline] timer_expire_remote+0xff/0x170 kernel/time/timer.c:2181 tmigr_handle_remote_cpu kernel/time/timer_migration.c:908 [inline] tmigr_handle_remote_up kernel/time/timer_migration.c:1000 [inline] __walk_groups kernel/time/timer_migration.c:488 [inline] tmigr_handle_remote+0x7ba/0xe00 kernel/time/timer_migration.c:1061 run_timer_softirq+0x35/0x40 kernel/time/timer.c:2452 __do_softirq+0x218/0x922 kernel/softirq.c:554 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0xb9/0x120 kernel/softirq.c:645 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0x95/0xb0 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 native_safe_halt arch/x86/include/asm/irqflags.h:48 [inline] arch_safe_halt arch/x86/include/asm/irqflags.h:86 [inline] default_idle+0xf/0x20 arch/x86/kernel/process.c:742 default_idle_call+0x6d/0xb0 kernel/sched/idle.c:117 cpuidle_idle_call kernel/sched/idle.c:191 [inline] do_idle+0x32c/0x3f0 kernel/sched/idle.c:332 cpu_startup_entry+0x4f/0x60 kernel/sched/idle.c:430 start_secondary+0x220/0x2b0 arch/x86/kernel/smpboot.c:313 common_startup_64+0x13e/0x148 INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] __iova_rcache_get drivers/iommu/iova.c:834 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x6f3/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x2e6/0x450 drivers/iommu/dma-iommu.c:795 __iommu_dma_alloc_noncontiguous.constprop.0+0x498/0x9c0 drivers/iommu/dma-iommu.c:978 iommu_dma_alloc_remap drivers/iommu/dma-iommu.c:1026 [inline] iommu_dma_alloc+0x3c9/0x5f0 drivers/iommu/dma-iommu.c:1621 dma_alloc_attrs+0x25a/0x2a0 kernel/dma/mapping.c:522 dmam_alloc_attrs+0x67/0x180 kernel/dma/mapping.c:99 dmam_alloc_coherent include/linux/dma-mapping.h:553 [inline] ahci_port_start+0x415/0x920 drivers/ata/libahci.c:2530 ata_host_start+0x36b/0x730 drivers/ata/libata-core.c:5819 ata_host_activate+0x2f/0x3c0 drivers/ata/libata-core.c:6039 ahci_host_activate+0x3fc/0x570 drivers/ata/libahci.c:2768 ahci_init_one+0x2485/0x2de0 drivers/ata/ahci.c:1953 local_pci_probe+0xde/0x1b0 drivers/pci/pci-driver.c:324 pci_call_probe drivers/pci/pci-driver.c:392 [inline] __pci_device_probe drivers/pci/pci-driver.c:417 [inline] pci_device_probe+0x29d/0x7b0 drivers/pci/pci-driver.c:451 call_driver_probe drivers/base/dd.c:578 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:656 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:798 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:828 __driver_attach+0x283/0x580 drivers/base/dd.c:1214 bus_for_each_dev+0x13c/0x1d0 drivers/base/bus.c:368 bus_add_driver+0x2ed/0x640 drivers/base/bus.c:673 driver_register+0x15c/0x4b0 drivers/base/driver.c:246 do_one_initcall+0x128/0x630 init/main.c:1238 do_initcall_level init/main.c:1300 [inline] do_initcalls init/main.c:1316 [inline] do_basic_setup init/main.c:1335 [inline] kernel_init_freeable+0x660/0xc50 init/main.c:1548 kernel_init+0x1c/0x2b0 init/main.c:1437 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 } ... key at: [] __key.3+0x0/0x40 ... acquired at: __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] __iova_rcache_get drivers/iommu/iova.c:834 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x6f3/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x2e6/0x450 drivers/iommu/dma-iommu.c:795 __iommu_dma_alloc_noncontiguous.constprop.0+0x498/0x9c0 drivers/iommu/dma-iommu.c:978 iommu_dma_alloc_remap drivers/iommu/dma-iommu.c:1026 [inline] iommu_dma_alloc+0x3c9/0x5f0 drivers/iommu/dma-iommu.c:1621 dma_alloc_attrs+0x25a/0x2a0 kernel/dma/mapping.c:522 dmam_alloc_attrs+0x67/0x180 kernel/dma/mapping.c:99 dmam_alloc_coherent include/linux/dma-mapping.h:553 [inline] ahci_port_start+0x415/0x920 drivers/ata/libahci.c:2530 ata_host_start+0x36b/0x730 drivers/ata/libata-core.c:5819 ata_host_activate+0x2f/0x3c0 drivers/ata/libata-core.c:6039 ahci_host_activate+0x3fc/0x570 drivers/ata/libahci.c:2768 ahci_init_one+0x2485/0x2de0 drivers/ata/ahci.c:1953 local_pci_probe+0xde/0x1b0 drivers/pci/pci-driver.c:324 pci_call_probe drivers/pci/pci-driver.c:392 [inline] __pci_device_probe drivers/pci/pci-driver.c:417 [inline] pci_device_probe+0x29d/0x7b0 drivers/pci/pci-driver.c:451 call_driver_probe drivers/base/dd.c:578 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:656 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:798 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:828 __driver_attach+0x283/0x580 drivers/base/dd.c:1214 bus_for_each_dev+0x13c/0x1d0 drivers/base/bus.c:368 bus_add_driver+0x2ed/0x640 drivers/base/bus.c:673 driver_register+0x15c/0x4b0 drivers/base/driver.c:246 do_one_initcall+0x128/0x630 init/main.c:1238 do_initcall_level init/main.c:1300 [inline] do_initcalls init/main.c:1316 [inline] do_basic_setup init/main.c:1335 [inline] kernel_init_freeable+0x660/0xc50 init/main.c:1548 kernel_init+0x1c/0x2b0 init/main.c:1437 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 the dependencies between the lock to be acquired and HARDIRQ-irq-unsafe lock: -> (&stab->lock){+.-.}-{2:2} { HARDIRQ-ON-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 kfree_skbmem+0x10e/0x200 net/core/skbuff.c:1159 __kfree_skb net/core/skbuff.c:1217 [inline] kfree_skb_reason+0x13a/0x210 net/core/skbuff.c:1252 packet_rcv+0x166/0x1510 net/packet/af_packet.c:2230 dev_queue_xmit_nit+0x846/0xba0 net/core/dev.c:2296 xmit_one net/core/dev.c:3527 [inline] dev_hard_start_xmit+0x56/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a IN-SOFTIRQ-W at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 skb_kfree_head net/core/skbuff.c:1094 [inline] skb_kfree_head net/core/skbuff.c:1091 [inline] skb_free_head+0x19a/0x1e0 net/core/skbuff.c:1108 skb_release_data+0x76c/0x990 net/core/skbuff.c:1136 skb_release_all net/core/skbuff.c:1202 [inline] __kfree_skb+0x51/0x70 net/core/skbuff.c:1216 tcp_wmem_free_skb include/net/tcp.h:312 [inline] tcp_rtx_queue_unlink_and_free include/net/tcp.h:2098 [inline] tcp_clean_rtx_queue net/ipv4/tcp_input.c:3375 [inline] tcp_ack+0x1eb4/0x5ba0 net/ipv4/tcp_input.c:3967 tcp_rcv_established+0xda1/0x21b0 net/ipv4/tcp_input.c:6079 tcp_v4_do_rcv+0x6a9/0xa50 net/ipv4/tcp_ipv4.c:1906 tcp_v4_rcv+0x338b/0x3b40 net/ipv4/tcp_ipv4.c:2332 ip_protocol_deliver_rcu+0xba/0x4e0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x316/0x570 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] NF_HOOK include/linux/netfilter.h:308 [inline] ip_local_deliver+0x18e/0x1f0 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:460 [inline] ip_sublist_rcv_finish+0x2c1/0x620 net/ipv4/ip_input.c:580 ip_list_rcv_finish.constprop.0+0x559/0x720 net/ipv4/ip_input.c:631 ip_sublist_rcv net/ipv4/ip_input.c:639 [inline] ip_list_rcv+0x339/0x450 net/ipv4/ip_input.c:674 __netif_receive_skb_list_ptype net/core/dev.c:5581 [inline] __netif_receive_skb_list_core+0x755/0x950 net/core/dev.c:5629 __netif_receive_skb_list net/core/dev.c:5681 [inline] netif_receive_skb_list_internal+0x753/0xda0 net/core/dev.c:5773 gro_normal_list include/net/gro.h:438 [inline] gro_normal_list include/net/gro.h:434 [inline] napi_complete_done+0x23f/0x9a0 net/core/dev.c:6113 e1000_clean+0x9c3/0x2840 drivers/net/ethernet/intel/e1000/e1000_main.c:3811 __napi_poll.constprop.0+0xb7/0x550 net/core/dev.c:6632 napi_poll net/core/dev.c:6701 [inline] net_rx_action+0x9ad/0xf10 net/core/dev.c:6816 __do_softirq+0x218/0x922 kernel/softirq.c:554 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0xb9/0x120 kernel/softirq.c:645 common_interrupt+0xb0/0xd0 arch/x86/kernel/irq.c:247 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 variable_test_bit arch/x86/include/asm/bitops.h:227 [inline] arch_test_bit arch/x86/include/asm/bitops.h:239 [inline] _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:142 [inline] cpumask_test_cpu include/linux/cpumask.h:505 [inline] cpu_online include/linux/cpumask.h:1120 [inline] trace_lock_release include/trace/events/lock.h:69 [inline] lock_release+0xb1/0x6c0 kernel/locking/lockdep.c:5765 __raw_spin_unlock include/linux/spinlock_api_smp.h:141 [inline] _raw_spin_unlock+0x16/0x50 kernel/locking/spinlock.c:186 spin_unlock include/linux/spinlock.h:391 [inline] try_to_free_buffers+0x17d/0x2d0 fs/buffer.c:2951 jbd2_journal_try_to_free_buffers+0x1fa/0x270 fs/jbd2/transaction.c:2182 ext4_release_folio+0x1a5/0x3b0 fs/ext4/inode.c:3192 filemap_release_folio+0x1f1/0x280 mm/filemap.c:4132 block_invalidate_folio+0x4e9/0x5e0 fs/buffer.c:1633 folio_invalidate mm/truncate.c:158 [inline] truncate_cleanup_folio+0x2ac/0x3e0 mm/truncate.c:178 truncate_inode_pages_range+0x271/0xe90 mm/truncate.c:358 ext4_evict_inode+0x2cc/0x17a0 fs/ext4/inode.c:193 evict+0x2ed/0x6c0 fs/inode.c:667 iput_final fs/inode.c:1741 [inline] iput.part.0+0x5a8/0x7f0 fs/inode.c:1767 iput+0x5c/0x80 fs/inode.c:1757 do_unlinkat+0x613/0x750 fs/namei.c:4409 __do_sys_unlink fs/namei.c:4450 [inline] __se_sys_unlink fs/namei.c:4448 [inline] __ia32_sys_unlink+0xc6/0x110 fs/namei.c:4448 do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline] __do_fast_syscall_32+0x7a/0x120 arch/x86/entry/common.c:321 do_fast_syscall_32+0x32/0x80 arch/x86/entry/common.c:346 entry_SYSENTER_compat_after_hwframe+0x7f/0x89 INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 kfree_skbmem+0x10e/0x200 net/core/skbuff.c:1159 __kfree_skb net/core/skbuff.c:1217 [inline] kfree_skb_reason+0x13a/0x210 net/core/skbuff.c:1252 packet_rcv+0x166/0x1510 net/packet/af_packet.c:2230 dev_queue_xmit_nit+0x846/0xba0 net/core/dev.c:2296 xmit_one net/core/dev.c:3527 [inline] dev_hard_start_xmit+0x56/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a } ... key at: [] __key.1+0x0/0x40 ... acquired at: lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 iova_magazine_free drivers/iommu/iova.c:613 [inline] __iova_rcache_get drivers/iommu/iova.c:836 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x74d/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x1f4/0x450 drivers/iommu/dma-iommu.c:804 __iommu_dma_map+0x175/0x330 drivers/iommu/dma-iommu.c:869 iommu_dma_map_page+0x183/0x760 drivers/iommu/dma-iommu.c:1190 dma_map_page_attrs+0x148/0x7f0 kernel/dma/mapping.c:163 skb_frag_dma_map include/linux/skbuff.h:3628 [inline] e1000_tx_map drivers/net/ethernet/intel/e1000/e1000_main.c:2928 [inline] e1000_xmit_frame+0x19e8/0x4fb0 drivers/net/ethernet/intel/e1000/e1000_main.c:3244 __netdev_start_xmit include/linux/netdevice.h:4903 [inline] netdev_start_xmit include/linux/netdevice.h:4917 [inline] xmit_one net/core/dev.c:3531 [inline] dev_hard_start_xmit+0x143/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a stack backtrace: CPU: 1 PID: 5188 Comm: sshd Not tainted 6.9.0-rc2-syzkaller-00042-g3e92c1e6cd87 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:114 print_bad_irq_dependency kernel/locking/lockdep.c:2626 [inline] check_irq_usage+0xe3c/0x1490 kernel/locking/lockdep.c:2865 check_prev_add kernel/locking/lockdep.c:3138 [inline] check_prevs_add kernel/locking/lockdep.c:3253 [inline] validate_chain kernel/locking/lockdep.c:3869 [inline] __lock_acquire+0x248e/0x3b30 kernel/locking/lockdep.c:5137 lock_acquire kernel/locking/lockdep.c:5754 [inline] lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] __sock_map_delete net/core/sock_map.c:414 [inline] sock_map_delete_elem+0xc8/0x150 net/core/sock_map.c:446 bpf_prog_2c29ac5cdc6b1842+0x42/0x46 bpf_dispatcher_nop_func include/linux/bpf.h:1234 [inline] __bpf_prog_run include/linux/filter.h:657 [inline] bpf_prog_run include/linux/filter.h:664 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2381 [inline] bpf_trace_run3+0x167/0x440 kernel/trace/bpf_trace.c:2421 trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x1d4/0x380 mm/slub.c:4343 iova_magazine_free drivers/iommu/iova.c:613 [inline] __iova_rcache_get drivers/iommu/iova.c:836 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x74d/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x1f4/0x450 drivers/iommu/dma-iommu.c:804 __iommu_dma_map+0x175/0x330 drivers/iommu/dma-iommu.c:869 iommu_dma_map_page+0x183/0x760 drivers/iommu/dma-iommu.c:1190 dma_map_page_attrs+0x148/0x7f0 kernel/dma/mapping.c:163 skb_frag_dma_map include/linux/skbuff.h:3628 [inline] e1000_tx_map drivers/net/ethernet/intel/e1000/e1000_main.c:2928 [inline] e1000_xmit_frame+0x19e8/0x4fb0 drivers/net/ethernet/intel/e1000/e1000_main.c:3244 __netdev_start_xmit include/linux/netdevice.h:4903 [inline] netdev_start_xmit include/linux/netdevice.h:4917 [inline] xmit_one net/core/dev.c:3531 [inline] dev_hard_start_xmit+0x143/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a RIP: 0033:0x7f0700f16bf2 Code: 89 c7 48 89 44 24 08 e8 7b 34 fa ff 48 8b 44 24 08 48 83 c4 28 c3 c3 64 8b 04 25 18 00 00 00 85 c0 75 20 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 76 6f 48 8b 15 07 a2 0d 00 f7 d8 64 89 02 48 83 RSP: 002b:00007ffd83f3c918 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 0000000000000114 RCX: 00007f0700f16bf2 RDX: 0000000000000114 RSI: 000055eb97fce010 RDI: 0000000000000004 RBP: 000055eb97f661f0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 000055eb9550caa4 R13: 000000000000002f R14: 000055eb9550d3e8 R15: 00007ffd83f3c988 ------------[ cut here ]------------ raw_local_irq_restore() called with IRQs enabled WARNING: CPU: 1 PID: 5188 at kernel/locking/irqflag-debug.c:10 warn_bogus_irq_restore+0x29/0x30 kernel/locking/irqflag-debug.c:10 Modules linked in: CPU: 1 PID: 5188 Comm: sshd Not tainted 6.9.0-rc2-syzkaller-00042-g3e92c1e6cd87 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 RIP: 0010:warn_bogus_irq_restore+0x29/0x30 kernel/locking/irqflag-debug.c:10 Code: 90 f3 0f 1e fa 90 80 3d c4 f4 b3 04 00 74 06 90 c3 cc cc cc cc c6 05 b5 f4 b3 04 01 90 48 c7 c7 a0 cf 0c 8b e8 a8 f0 7b f6 90 <0f> 0b 90 90 eb df 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 RSP: 0018:ffffc90003d16d18 EFLAGS: 00010282 RAX: 0000000000000000 RBX: ffffe8ffad310640 RCX: ffffffff8150eb59 RDX: ffff88801fd74880 RSI: ffffffff8150eb66 RDI: 0000000000000001 RBP: 0000000000000282 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000000 R11: 61636f6c5f776172 R12: 00000000000ffd7a R13: ffff88800064b600 R14: ffff888018ee1008 R15: 000000000000007e FS: 00007f0701341d00(0000) GS:ffff88802c300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f77eed166a8 CR3: 000000001deea000 CR4: 0000000000350ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:151 [inline] _raw_spin_unlock_irqrestore+0x74/0x80 kernel/locking/spinlock.c:194 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline] __iova_rcache_get drivers/iommu/iova.c:846 [inline] iova_rcache_get drivers/iommu/iova.c:865 [inline] alloc_iova_fast+0x37e/0xa30 drivers/iommu/iova.c:391 iommu_dma_alloc_iova+0x1f4/0x450 drivers/iommu/dma-iommu.c:804 __iommu_dma_map+0x175/0x330 drivers/iommu/dma-iommu.c:869 iommu_dma_map_page+0x183/0x760 drivers/iommu/dma-iommu.c:1190 dma_map_page_attrs+0x148/0x7f0 kernel/dma/mapping.c:163 skb_frag_dma_map include/linux/skbuff.h:3628 [inline] e1000_tx_map drivers/net/ethernet/intel/e1000/e1000_main.c:2928 [inline] e1000_xmit_frame+0x19e8/0x4fb0 drivers/net/ethernet/intel/e1000/e1000_main.c:3244 __netdev_start_xmit include/linux/netdevice.h:4903 [inline] netdev_start_xmit include/linux/netdevice.h:4917 [inline] xmit_one net/core/dev.c:3531 [inline] dev_hard_start_xmit+0x143/0x790 net/core/dev.c:3547 sch_direct_xmit+0x1ac/0xc20 net/sched/sch_generic.c:343 __dev_xmit_skb net/core/dev.c:3760 [inline] __dev_queue_xmit+0x12c3/0x3f20 net/core/dev.c:4301 dev_queue_xmit include/linux/netdevice.h:3091 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0x16bf/0x2590 net/ipv4/ip_output.c:235 __ip_finish_output net/ipv4/ip_output.c:313 [inline] __ip_finish_output+0x49e/0x950 net/ipv4/ip_output.c:295 ip_finish_output+0x31/0x310 net/ipv4/ip_output.c:323 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x13b/0x2a0 net/ipv4/ip_output.c:433 dst_output include/net/dst.h:450 [inline] ip_local_out+0x33e/0x4a0 net/ipv4/ip_output.c:129 __ip_queue_xmit+0x747/0x1940 net/ipv4/ip_output.c:535 __tcp_transmit_skb+0x29c1/0x3da0 net/ipv4/tcp_output.c:1462 tcp_transmit_skb net/ipv4/tcp_output.c:1480 [inline] tcp_write_xmit+0xfe0/0x7ee0 net/ipv4/tcp_output.c:2792 __tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:2977 tcp_push+0x221/0x6f0 net/ipv4/tcp.c:738 tcp_sendmsg_locked+0x27b8/0x3480 net/ipv4/tcp.c:1310 tcp_sendmsg+0x2e/0x50 net/ipv4/tcp.c:1342 inet_sendmsg+0xb9/0x140 net/ipv4/af_inet.c:851 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] sock_write_iter+0x4b8/0x5c0 net/socket.c:1160 call_write_iter include/linux/fs.h:2108 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x6db/0x1100 fs/read_write.c:590 ksys_write+0x1f8/0x260 fs/read_write.c:643 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x72/0x7a RIP: 0033:0x7f0700f16bf2 Code: 89 c7 48 89 44 24 08 e8 7b 34 fa ff 48 8b 44 24 08 48 83 c4 28 c3 c3 64 8b 04 25 18 00 00 00 85 c0 75 20 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 76 6f 48 8b 15 07 a2 0d 00 f7 d8 64 89 02 48 83 RSP: 002b:00007ffd83f3c918 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 0000000000000114 RCX: 00007f0700f16bf2 RDX: 0000000000000114 RSI: 000055eb97fce010 RDI: 0000000000000004 RBP: 000055eb97f661f0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 000055eb9550caa4 R13: 000000000000002f R14: 000055eb9550d3e8 R15: 00007ffd83f3c988