netlink: 'syz-executor2': attribute type 4 has an invalid length. x_tables: eb_tables: snat target: used from hooks PREROUTING, but only usable from POSTROUTING ================================ WARNING: inconsistent lock state 4.18.0+ #189 Not tainted -------------------------------- inconsistent {IN-SOFTIRQ-W} -> {SOFTIRQ-ON-W} usage. syz-executor2/9150 [HC0[0]:SC0[0]:HE1:SE1] takes: 0000000096ec2459 (&(&tlocks[i])->rlock){+.?.}, at: spin_lock include/linux/spinlock.h:329 [inline] 0000000096ec2459 (&(&tlocks[i])->rlock){+.?.}, at: ila_add_mapping net/ipv6/ila/ila_xlat.c:233 [inline] 0000000096ec2459 (&(&tlocks[i])->rlock){+.?.}, at: ila_xlat_nl_cmd_add_mapping+0x6bb/0x17e0 net/ipv6/ila/ila_xlat.c:355 {IN-SOFTIRQ-W} state was registered at: lock_acquire+0x1e4/0x540 kernel/locking/lockdep.c:3924 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:135 [inline] _raw_spin_lock_bh+0x31/0x40 kernel/locking/spinlock.c:168 x_tables: eb_tables: snat target: used from hooks PREROUTING, but only usable from POSTROUTING spin_lock_bh include/linux/spinlock.h:334 [inline] __rhashtable_insert_fast include/linux/rhashtable.h:596 [inline] rhashtable_lookup_insert_fast include/linux/rhashtable.h:784 [inline] fdb_create+0x5cc/0x1710 net/bridge/br_fdb.c:508 br_fdb_update+0x4e7/0xd40 net/bridge/br_fdb.c:605 br_handle_frame_finish+0xa23/0x1960 net/bridge/br_input.c:97 br_nf_hook_thresh+0x48d/0x5f0 net/bridge/br_netfilter_hooks.c:1011 br_nf_pre_routing_finish_ipv6+0x7bc/0xef0 net/bridge/br_netfilter_ipv6.c:209 NF_HOOK include/linux/netfilter.h:287 [inline] br_nf_pre_routing_ipv6+0x4af/0xac0 net/bridge/br_netfilter_ipv6.c:237 br_nf_pre_routing+0xb33/0x17d0 net/bridge/br_netfilter_hooks.c:494 nf_hook_entry_hookfn include/linux/netfilter.h:119 [inline] nf_hook_slow+0xc2/0x1c0 net/netfilter/core.c:511 nf_hook include/linux/netfilter.h:242 [inline] NF_HOOK include/linux/netfilter.h:285 [inline] br_handle_frame+0xc0d/0x1a20 net/bridge/br_input.c:303 __netif_receive_skb_core+0x1455/0x3af0 net/core/dev.c:4821 __netif_receive_skb_one_core+0xd0/0x200 net/core/dev.c:4890 __netif_receive_skb+0x2c/0x1e0 net/core/dev.c:5002 process_backlog+0x219/0x760 net/core/dev.c:5808 napi_poll net/core/dev.c:6228 [inline] net_rx_action+0x7a5/0x1920 net/core/dev.c:6294 __do_softirq+0x2eb/0xb1e kernel/softirq.c:292 run_ksoftirqd+0x88/0x100 kernel/softirq.c:653 smpboot_thread_fn+0x425/0x880 kernel/smpboot.c:164 kthread+0x35a/0x420 kernel/kthread.c:246 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:413 irq event stamp: 243 hardirqs last enabled at (243): [] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:160 [inline] hardirqs last enabled at (243): [] _raw_spin_unlock_irqrestore+0x74/0xc0 kernel/locking/spinlock.c:184 hardirqs last disabled at (242): [] __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:108 [inline] hardirqs last disabled at (242): [] _raw_spin_lock_irqsave+0x74/0xc0 kernel/locking/spinlock.c:152 softirqs last enabled at (202): [] __do_softirq+0x787/0xb1e kernel/softirq.c:318 softirqs last disabled at (165): [] invoke_softirq kernel/softirq.c:372 [inline] softirqs last disabled at (165): [] irq_exit+0x1d6/0x210 kernel/softirq.c:412 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&(&tlocks[i])->rlock); lock(&(&tlocks[i])->rlock); *** DEADLOCK *** 1 lock held by syz-executor2/9150: #0: 00000000905f2fd9 (cb_lock){++++}, at: genl_rcv+0x19/0x40 net/netlink/genetlink.c:636 stack backtrace: CPU: 0 PID: 9150 Comm: syz-executor2 Not tainted 4.18.0+ #189 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1c9/0x2b4 lib/dump_stack.c:113 print_usage_bug.cold.63+0x320/0x41a kernel/locking/lockdep.c:2546 valid_state kernel/locking/lockdep.c:2559 [inline] mark_lock_irq kernel/locking/lockdep.c:2753 [inline] mark_lock+0x1048/0x19f0 kernel/locking/lockdep.c:3151 mark_irqflags kernel/locking/lockdep.c:3047 [inline] __lock_acquire+0x7ca/0x5020 kernel/locking/lockdep.c:3392 lock_acquire+0x1e4/0x540 kernel/locking/lockdep.c:3924 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:144 spin_lock include/linux/spinlock.h:329 [inline] ila_add_mapping net/ipv6/ila/ila_xlat.c:233 [inline] ila_xlat_nl_cmd_add_mapping+0x6bb/0x17e0 net/ipv6/ila/ila_xlat.c:355 genl_family_rcv_msg+0x8a3/0x1140 net/netlink/genetlink.c:601 genl_rcv_msg+0xc6/0x168 net/netlink/genetlink.c:626 netlink_rcv_skb+0x172/0x440 net/netlink/af_netlink.c:2454 genl_rcv+0x28/0x40 net/netlink/genetlink.c:637 netlink_unicast_kernel net/netlink/af_netlink.c:1317 [inline] netlink_unicast+0x5a0/0x760 net/netlink/af_netlink.c:1343 netlink_sendmsg+0xa18/0xfc0 net/netlink/af_netlink.c:1908 sock_sendmsg_nosec net/socket.c:621 [inline] sock_sendmsg+0xd5/0x120 net/socket.c:631 ___sys_sendmsg+0x7fd/0x930 net/socket.c:2114 __sys_sendmsg+0x11d/0x290 net/socket.c:2152 __do_sys_sendmsg net/socket.c:2161 [inline] __se_sys_sendmsg net/socket.c:2159 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2159 do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x457089 Code: fd b4 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 cb b4 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007f09723bfc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007f09723c06d4 RCX: 0000000000457089 RDX: 0000000000000000 RSI: 0000000020000040 RDI: 0000000000000003 RBP: 00000000009300a0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 00000000004d4088 R14: 00000000004c8ab0 R15: 0000000000000000 netlink: 'syz-executor2': attribute type 4 has an invalid length. nf_conntrack: default automatic helper assignment has been turned off for security reasons and CT-based firewall rule not found. Use the iptables CT target to attach helpers instead. IPv4: Oversized IP packet from 127.0.0.1 IPv4: Oversized IP packet from 127.0.0.1 device lo entered promiscuous mode (unnamed net_device) (uninitialized): option primary: mode dependency failed, not supported in mode balance-rr(0) (unnamed net_device) (uninitialized): option primary: mode dependency failed, not supported in mode balance-rr(0) device syz_tun entered promiscuous mode device syz_tun left promiscuous mode gretap0: refused to change device tx_queue_len A link change request failed with some changes committed already. Interface gretap0 may have been left with an inconsistent configuration, please check. gretap0: refused to change device tx_queue_len FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 1 CPU: 1 PID: 9719 Comm: syz-executor5 Not tainted 4.18.0+ #189 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 A link change request failed with some changes committed already. Interface gretap0 may have been left with an inconsistent configuration, please check. Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1c9/0x2b4 lib/dump_stack.c:113 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.4+0xa/0x11 lib/fault-inject.c:149 __should_failslab+0x124/0x180 mm/failslab.c:32 should_failslab+0x9/0x14 mm/slab_common.c:1557 slab_pre_alloc_hook mm/slab.h:423 [inline] slab_alloc mm/slab.c:3378 [inline] kmem_cache_alloc+0x47/0x760 mm/slab.c:3552 __build_skb+0xab/0x430 net/core/skbuff.c:281 __napi_alloc_skb+0x19a/0x2d0 net/core/skbuff.c:482 napi_alloc_skb include/linux/skbuff.h:2659 [inline] napi_get_frags+0x67/0x140 net/core/dev.c:5624 tun_napi_alloc_frags drivers/net/tun.c:1494 [inline] tun_get_user+0x1e36/0x42c0 drivers/net/tun.c:1836 tun_chr_write_iter+0xb9/0x154 drivers/net/tun.c:2010 call_write_iter include/linux/fs.h:1808 [inline] do_iter_readv_writev+0x8b0/0xa80 fs/read_write.c:680 do_iter_write+0x185/0x5f0 fs/read_write.c:959 vfs_writev+0x1f1/0x360 fs/read_write.c:1004 do_writev+0x11a/0x310 fs/read_write.c:1039 __do_sys_writev fs/read_write.c:1112 [inline] __se_sys_writev fs/read_write.c:1109 [inline] __x64_sys_writev+0x75/0xb0 fs/read_write.c:1109 do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x456f41 Code: 75 14 b8 14 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 34 b6 fb ff c3 48 83 ec 08 e8 da 2c 00 00 48 89 04 24 b8 14 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 23 2d 00 00 48 89 d0 48 83 c4 08 48 3d 01 RSP: 002b:00007f62e5f1fba0 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 0000000000000066 RCX: 0000000000456f41 RDX: 0000000000000001 RSI: 00007f62e5f1fbf0 RDI: 00000000000000f0 RBP: 0000000020000040 R08: 00000000000000f0 R09: 0000000000000000 R10: 0000000000000064 R11: 0000000000000293 R12: 0000000000000003 R13: 00000000004d6410 R14: 00000000004c9a96 R15: 0000000000000000 netlink: 20 bytes leftover after parsing attributes in process `syz-executor1'. netlink: 20 bytes leftover after parsing attributes in process `syz-executor1'. netlink: 20 bytes leftover after parsing attributes in process `syz-executor1'. atomic_op 00000000e593cf24 conn xmit_atomic (null) nf_conntrack: default automatic helper assignment has been turned off for security reasons and CT-based firewall rule not found. Use the iptables CT target to attach helpers instead. sock: sock_set_timeout: `syz-executor6' (pid 10123) tries to set negative timeout sock: sock_set_timeout: `syz-executor6' (pid 10138) tries to set negative timeout netlink: 24 bytes leftover after parsing attributes in process `syz-executor6'. FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 CPU: 1 PID: 10316 Comm: syz-executor4 Not tainted 4.18.0+ #189 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1c9/0x2b4 lib/dump_stack.c:113 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.4+0xa/0x11 lib/fault-inject.c:149 __should_failslab+0x124/0x180 mm/failslab.c:32 should_failslab+0x9/0x14 mm/slab_common.c:1557 slab_pre_alloc_hook mm/slab.h:423 [inline] slab_alloc mm/slab.c:3378 [inline] kmem_cache_alloc_trace+0x2cb/0x780 mm/slab.c:3618 kmalloc include/linux/slab.h:513 [inline] kzalloc include/linux/slab.h:707 [inline] fl_create+0x10a/0xaf0 net/ipv6/ip6_flowlabel.c:369 ipv6_flowlabel_opt+0xa4a/0x3310 net/ipv6/ip6_flowlabel.c:604 netlink: 'syz-executor1': attribute type 3 has an invalid length. netlink: 'syz-executor1': attribute type 2 has an invalid length.