xt_TPROXY: Can be used only in combination with either -p tcp or -p udp ============================= WARNING: suspicious RCU usage 4.15.0+ #307 Not tainted ----------------------------- ./include/linux/rcupdate.h:302 Illegal context switch in RCU read-side critical section! other info that might help us debug this: rcu_scheduler_active = 2, debug_locks = 1 1 lock held by syz-executor4/11305: #0: (rcu_read_lock){....}, at: [<00000000dd9425f8>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218 stack backtrace: CPU: 0 PID: 11305 Comm: syz-executor4 Not tainted 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 lockdep_rcu_suspicious+0x123/0x170 kernel/locking/lockdep.c:4592 rcu_preempt_sleep_check include/linux/rcupdate.h:301 [inline] ___might_sleep+0x385/0x470 kernel/sched/core.c:6093 __might_sleep+0x95/0x190 kernel/sched/core.c:6081 slab_pre_alloc_hook mm/slab.h:420 [inline] slab_alloc mm/slab.c:3365 [inline] kmem_cache_alloc_trace+0x299/0x740 mm/slab.c:3605 kmalloc include/linux/slab.h:512 [inline] kzalloc include/linux/slab.h:701 [inline] rds_loop_conn_alloc+0xc8/0x380 net/rds/loop.c:126 __rds_conn_create+0x112f/0x1b50 net/rds/connection.c:227 rds_conn_create_outgoing+0x3f/0x50 net/rds/connection.c:309 rds_sendmsg+0xda3/0x2390 net/rds/send.c:1126 sock_sendmsg_nosec net/socket.c:630 [inline] sock_sendmsg+0xca/0x110 net/socket.c:640 SYSC_sendto+0x361/0x5c0 net/socket.c:1747 SyS_sendto+0x40/0x50 net/socket.c:1715 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453a59 RSP: 002b:00007f1767bd8c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002c RAX: ffffffffffffffda RBX: 00007f1767bd96d4 RCX: 0000000000453a59 RDX: 0000000000000000 RSI: 0000000020218000 RDI: 0000000000000013 RBP: 000000000071bea0 R08: 0000000020af3ff0 R09: 0000000000000010 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 00000000000004b9 R14: 00000000006f71f8 R15: 0000000000000000 BUG: sleeping function called from invalid context at mm/slab.h:420 in_atomic(): 1, irqs_disabled(): 0, pid: 11305, name: syz-executor4 1 lock held by syz-executor4/11305: #0: (rcu_read_lock){....}, at: [<00000000dd9425f8>] __rds_conn_create+0xe46/0x1b50 net/rds/connection.c:218 CPU: 0 PID: 11305 Comm: syz-executor4 Not tainted 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 ___might_sleep+0x2b2/0x470 kernel/sched/core.c:6128 __might_sleep+0x95/0x190 kernel/sched/core.c:6081 slab_pre_alloc_hook mm/slab.h:420 [inline] slab_alloc mm/slab.c:3365 [inline] kmem_cache_alloc_trace+0x299/0x740 mm/slab.c:3605 kmalloc include/linux/slab.h:512 [inline] kzalloc include/linux/slab.h:701 [inline] rds_loop_conn_alloc+0xc8/0x380 net/rds/loop.c:126 __rds_conn_create+0x112f/0x1b50 net/rds/connection.c:227 rds_conn_create_outgoing+0x3f/0x50 net/rds/connection.c:309 rds_sendmsg+0xda3/0x2390 net/rds/send.c:1126 sock_sendmsg_nosec net/socket.c:630 [inline] sock_sendmsg+0xca/0x110 net/socket.c:640 SYSC_sendto+0x361/0x5c0 net/socket.c:1747 SyS_sendto+0x40/0x50 net/socket.c:1715 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453a59 RSP: 002b:00007f1767bd8c68 EFLAGS: 00000246 ORIG_RAX: 000000000000002c RAX: ffffffffffffffda RBX: 00007f1767bd96d4 RCX: 0000000000453a59 RDX: 0000000000000000 RSI: 0000000020218000 RDI: 0000000000000013 RBP: 000000000071bea0 R08: 0000000020af3ff0 R09: 0000000000000010 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 00000000000004b9 R14: 00000000006f71f8 R15: 0000000000000000 xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp x_tables: ip_tables: ah match: only valid for protocol 51 xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp x_tables: ip_tables: ah match: only valid for protocol 51 xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp audit: type=1400 audit(1518299631.083:61): avc: denied { net_bind_service } for pid=11531 comm="syz-executor6" capability=10 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tclass=cap_userns permissive=1 capability: warning: `syz-executor6' uses deprecated v2 capabilities in a way that may be insecure xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp QAT: Invalid ioctl xt_TPROXY: Can be used only in combination with either -p tcp or -p udp QAT: Invalid ioctl xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 CPU: 1 PID: 11876 Comm: syz-executor3 Tainted: G W 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 audit: type=1400 audit(1518299632.630:62): avc: denied { validate_trans } for pid=11878 comm="syz-executor7" scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=system_u:object_r:security_t:s0 tclass=security permissive=1 should_failslab+0xec/0x120 mm/failslab.c:32 slab_pre_alloc_hook mm/slab.h:422 [inline] slab_alloc mm/slab.c:3365 [inline] __do_kmalloc mm/slab.c:3703 [inline] __kmalloc_track_caller+0x5f/0x760 mm/slab.c:3720 memdup_user+0x2c/0x90 mm/util.c:160 map_update_elem kernel/bpf/syscall.c:671 [inline] SYSC_bpf kernel/bpf/syscall.c:1872 [inline] SyS_bpf+0x1f48/0x4860 kernel/bpf/syscall.c:1843 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453a59 RSP: 002b:00007fac5cb32c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007fac5cb336d4 RCX: 0000000000453a59 RDX: 0000000000000020 RSI: 00000000205f1000 RDI: 0000000000000002 RBP: 000000000071bf58 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000015 R13: 0000000000000040 R14: 00000000006f06a0 R15: 0000000000000000 xt_TPROXY: Can be used only in combination with either -p tcp or -p udp FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 CPU: 1 PID: 11904 Comm: syz-executor3 Tainted: G W 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_failslab+0xec/0x120 mm/failslab.c:32 slab_pre_alloc_hook mm/slab.h:422 [inline] slab_alloc mm/slab.c:3365 [inline] kmem_cache_alloc+0x47/0x760 mm/slab.c:3539 ptlock_alloc+0x24/0x70 mm/memory.c:4728 ptlock_init include/linux/mm.h:1796 [inline] pgtable_page_ctor include/linux/mm.h:1830 [inline] pte_alloc_one+0x59/0x100 arch/x86/mm/pgtable.c:32 __pte_alloc+0x2a/0x310 mm/memory.c:654 do_anonymous_page mm/memory.c:3141 [inline] handle_pte_fault mm/memory.c:3977 [inline] __handle_mm_fault+0x2d06/0x3ce0 mm/memory.c:4103 handle_mm_fault+0x35c/0x970 mm/memory.c:4140 __do_page_fault+0x5c9/0xc90 arch/x86/mm/fault.c:1426 do_page_fault+0xee/0x730 arch/x86/mm/fault.c:1501 page_fault+0x2c/0x60 arch/x86/entry/entry_64.S:1152 RIP: 0010:copy_user_generic_unrolled+0x9e/0xc0 arch/x86/lib/copy_user_64.S:74 RSP: 0018:ffff8801d3db7710 EFLAGS: 00010202 RAX: 0000000000000004 RBX: 0000000020eed000 RCX: 0000000000000004 RDX: 0000000000000004 RSI: 0000000020eed000 RDI: ffff8801ce63ea00 RBP: ffff8801d3db7740 R08: ffffed0039cc7d40 R09: ffffed0039cc7d40 R10: 0000000000000001 R11: ffffed0039cc7d40 R12: 0000000000000004 R13: ffff8801ce63ea00 R14: 00007ffffffff000 R15: 0000000020eed004 copy_from_user include/linux/uaccess.h:147 [inline] memdup_user+0x54/0x90 mm/util.c:164 map_update_elem kernel/bpf/syscall.c:671 [inline] SYSC_bpf kernel/bpf/syscall.c:1872 [inline] SyS_bpf+0x1f48/0x4860 kernel/bpf/syscall.c:1843 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453a59 RSP: 002b:00007fac5cb53c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007fac5cb546d4 RCX: 0000000000453a59 RDX: 0000000000000020 RSI: 00000000205f1000 RDI: 0000000000000002 RBP: 000000000071bea0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000016 R13: 0000000000000040 R14: 00000000006f06a0 R15: 0000000000000001 xt_TPROXY: Can be used only in combination with either -p tcp or -p udp netlink: 12 bytes leftover after parsing attributes in process `syz-executor6'. netlink: 12 bytes leftover after parsing attributes in process `syz-executor6'. xt_addrtype: output interface limitation not valid in PREROUTING and INPUT xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp ipt_REJECT: TCP_RESET invalid for non-tcp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp xt_TPROXY: Can be used only in combination with either -p tcp or -p udp binder: 12386:12390 ERROR: BC_REGISTER_LOOPER called after BC_ENTER_LOOPER xt_TPROXY: Can be used only in combination with either -p tcp or -p udp binder: 12386:12390 ERROR: BC_REGISTER_LOOPER called after BC_ENTER_LOOPER binder: 12541:12551 ioctl 4b3b 20001ff8 returned -22 FAULT_INJECTION: forcing a failure. name fail_page_alloc, interval 1, probability 0, space 0, times 0 CPU: 1 PID: 12658 Comm: syz-executor2 Tainted: G W 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_fail_alloc_page mm/page_alloc.c:2955 [inline] prepare_alloc_pages mm/page_alloc.c:4194 [inline] __alloc_pages_nodemask+0x327/0xdd0 mm/page_alloc.c:4233 alloc_pages_current+0xb6/0x1e0 mm/mempolicy.c:2055 alloc_pages include/linux/gfp.h:492 [inline] skb_page_frag_refill+0x358/0x5f0 net/core/sock.c:2208 tun_build_skb.isra.50+0x2f0/0x1850 drivers/net/tun.c:1631 tun_get_user+0x17d0/0x3940 drivers/net/tun.c:1802 tun_chr_write_iter+0xbd/0x1c0 drivers/net/tun.c:1988 call_write_iter include/linux/fs.h:1781 [inline] do_iter_readv_writev+0x55c/0x830 fs/read_write.c:653 do_iter_write+0x154/0x540 fs/read_write.c:932 vfs_writev+0x18a/0x340 fs/read_write.c:977 do_writev+0xfc/0x2a0 fs/read_write.c:1012 SYSC_writev fs/read_write.c:1085 [inline] SyS_writev+0x27/0x30 fs/read_write.c:1082 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453931 RSP: 002b:00007f49ce643ba0 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 000000000000006e RCX: 0000000000453931 RDX: 0000000000000001 RSI: 00007f49ce643bf0 RDI: 0000000000000012 RBP: 0000000020002000 R08: 0000000000000012 R09: 0000000000000000 R10: 000000000000006e R11: 0000000000000293 R12: 0000000000000014 R13: 000000000000060f R14: 00000000006f9208 R15: 0000000000000000 FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 audit: type=1400 audit(1518299637.927:63): avc: denied { map } for pid=12709 comm="syz-executor0" path="/dev/sg0" dev="devtmpfs" ino=1078 scontext=unconfined_u:system_r:insmod_t:s0-s0:c0.c1023 tcontext=system_u:object_r:scsi_generic_device_t:s0 tclass=chr_file permissive=1 CPU: 0 PID: 12711 Comm: syz-executor2 Tainted: G W 4.15.0+ #307 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x194/0x257 lib/dump_stack.c:53 fail_dump lib/fault-inject.c:51 [inline] should_fail+0x8c0/0xa40 lib/fault-inject.c:149 should_failslab+0xec/0x120 mm/failslab.c:32 slab_pre_alloc_hook mm/slab.h:422 [inline] slab_alloc mm/slab.c:3365 [inline] kmem_cache_alloc+0x47/0x760 mm/slab.c:3539 __build_skb+0x9d/0x450 net/core/skbuff.c:281 build_skb+0x6f/0x2a0 net/core/skbuff.c:312 tun_build_skb.isra.50+0x9cb/0x1850 drivers/net/tun.c:1692 tun_get_user+0x17d0/0x3940 drivers/net/tun.c:1802 tun_chr_write_iter+0xbd/0x1c0 drivers/net/tun.c:1988 call_write_iter include/linux/fs.h:1781 [inline] do_iter_readv_writev+0x55c/0x830 fs/read_write.c:653 do_iter_write+0x154/0x540 fs/read_write.c:932 vfs_writev+0x18a/0x340 fs/read_write.c:977 do_writev+0xfc/0x2a0 fs/read_write.c:1012 SYSC_writev fs/read_write.c:1085 [inline] SyS_writev+0x27/0x30 fs/read_write.c:1082 do_syscall_64+0x282/0x940 arch/x86/entry/common.c:287 entry_SYSCALL_64_after_hwframe+0x26/0x9b RIP: 0033:0x453931 RSP: 002b:00007f49ce643ba0 EFLAGS: 00000293 ORIG_RAX: 0000000000000014 RAX: ffffffffffffffda RBX: 000000000000006e RCX: 0000000000453931 RDX: 0000000000000001 RSI: 00007f49ce643bf0 RDI: 0000000000000012 RBP: 0000000020002000 R08: 0000000000000012 R09: 0000000000000000 R10: 000000000000006e R11: 0000000000000293 R12: 0000000000000014 R13: 000000000000060f R14: 00000000006f9208 R15: 0000000000000001 netlink: 'syz-executor0': attribute type 4 has an invalid length. QAT: Invalid ioctl