https://github.com/torvalds/linux
Revision 90d72256addff9e5f8ad645e8f632750dd1f8935 authored by Eric Dumazet on 06 January 2020, 14:45:37 UTC, committed by David S. Miller on 08 January 2020, 20:42:49 UTC
WARNING: bad unlock balance detected! 5.5.0-rc5-syzkaller #0 Not tainted ------------------------------------- syz-executor921/9688 is trying to release lock (sk_lock-AF_INET6) at: [<ffffffff84bf8506>] gtp_encap_enable_socket+0x146/0x400 drivers/net/gtp.c:830 but there are no more locks to release! other info that might help us debug this: 2 locks held by syz-executor921/9688: #0: ffffffff8a4d8840 (rtnl_mutex){+.+.}, at: rtnl_lock net/core/rtnetlink.c:72 [inline] #0: ffffffff8a4d8840 (rtnl_mutex){+.+.}, at: rtnetlink_rcv_msg+0x405/0xaf0 net/core/rtnetlink.c:5421 #1: ffff88809304b560 (slock-AF_INET6){+...}, at: spin_lock_bh include/linux/spinlock.h:343 [inline] #1: ffff88809304b560 (slock-AF_INET6){+...}, at: release_sock+0x20/0x1c0 net/core/sock.c:2951 stack backtrace: CPU: 0 PID: 9688 Comm: syz-executor921 Not tainted 5.5.0-rc5-syzkaller #0 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+0x197/0x210 lib/dump_stack.c:118 print_unlock_imbalance_bug kernel/locking/lockdep.c:4008 [inline] print_unlock_imbalance_bug.cold+0x114/0x123 kernel/locking/lockdep.c:3984 __lock_release kernel/locking/lockdep.c:4242 [inline] lock_release+0x5f2/0x960 kernel/locking/lockdep.c:4503 sock_release_ownership include/net/sock.h:1496 [inline] release_sock+0x17c/0x1c0 net/core/sock.c:2961 gtp_encap_enable_socket+0x146/0x400 drivers/net/gtp.c:830 gtp_encap_enable drivers/net/gtp.c:852 [inline] gtp_newlink+0x9fc/0xc60 drivers/net/gtp.c:666 __rtnl_newlink+0x109e/0x1790 net/core/rtnetlink.c:3305 rtnl_newlink+0x69/0xa0 net/core/rtnetlink.c:3363 rtnetlink_rcv_msg+0x45e/0xaf0 net/core/rtnetlink.c:5424 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5442 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x58c/0x7d0 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x91c/0xea0 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:639 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:659 ____sys_sendmsg+0x753/0x880 net/socket.c:2330 ___sys_sendmsg+0x100/0x170 net/socket.c:2384 __sys_sendmsg+0x105/0x1d0 net/socket.c:2417 __do_sys_sendmsg net/socket.c:2426 [inline] __se_sys_sendmsg net/socket.c:2424 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2424 do_syscall_64+0xfa/0x790 arch/x86/entry/common.c:294 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x445d49 Code: e8 bc b7 02 00 48 83 c4 18 c3 0f 1f 80 00 00 00 00 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 2b 12 fc ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007f8019074db8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00000000006dac38 RCX: 0000000000445d49 RDX: 0000000000000000 RSI: 0000000020000180 RDI: 0000000000000003 RBP: 00000000006dac30 R08: 0000000000000004 R09: 0000000000000000 R10: 0000000000000008 R11: 0000000000000246 R12: 00000000006dac3c R13: 00007ffea687f6bf R14: 00007f80190759c0 R15: 20c49ba5e353f7cf Fixes: e198987e7dd7 ("gtp: fix suspicious RCU usage") Signed-off-by: Eric Dumazet <edumazet@google.com> Reported-by: syzbot <syzkaller@googlegroups.com> Cc: Taehee Yoo <ap420073@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent d9e15a2
Tip revision: 90d72256addff9e5f8ad645e8f632750dd1f8935 authored by Eric Dumazet on 06 January 2020, 14:45:37 UTC
gtp: fix bad unlock balance in gtp_encap_enable_socket
gtp: fix bad unlock balance in gtp_encap_enable_socket
Tip revision: 90d7225
File | Mode | Size |
---|---|---|
atomic | ||
basic | ||
coccinelle | ||
dtc | ||
gcc-plugins | ||
gdb | ||
genksyms | ||
kconfig | ||
ksymoops | ||
mod | ||
package | ||
selinux | ||
tracing | ||
.gitignore | -rw-r--r-- | 135 bytes |
Kbuild.include | -rw-r--r-- | 12.2 KB |
Kconfig.include | -rw-r--r-- | 1.3 KB |
Lindent | -rwxr-xr-x | 502 bytes |
Makefile | -rw-r--r-- | 1.4 KB |
Makefile.asm-generic | -rw-r--r-- | 1.8 KB |
Makefile.build | -rw-r--r-- | 17.3 KB |
Makefile.clean | -rw-r--r-- | 2.2 KB |
Makefile.dtbinst | -rw-r--r-- | 1.1 KB |
Makefile.extrawarn | -rw-r--r-- | 2.6 KB |
Makefile.gcc-plugins | -rw-r--r-- | 2.4 KB |
Makefile.headersinst | -rw-r--r-- | 2.9 KB |
Makefile.host | -rw-r--r-- | 6.9 KB |
Makefile.kasan | -rw-r--r-- | 1.4 KB |
Makefile.kcov | -rw-r--r-- | 359 bytes |
Makefile.lib | -rw-r--r-- | 14.7 KB |
Makefile.modbuiltin | -rw-r--r-- | 1.7 KB |
Makefile.modfinal | -rw-r--r-- | 1.8 KB |
Makefile.modinst | -rw-r--r-- | 1.1 KB |
Makefile.modpost | -rw-r--r-- | 3.3 KB |
Makefile.modsign | -rw-r--r-- | 791 bytes |
Makefile.package | -rw-r--r-- | 6.6 KB |
Makefile.ubsan | -rw-r--r-- | 864 bytes |
adjust_autoksyms.sh | -rwxr-xr-x | 2.6 KB |
asn1_compiler.c | -rw-r--r-- | 35.3 KB |
bin2c.c | -rw-r--r-- | 743 bytes |
bloat-o-meter | -rwxr-xr-x | 3.3 KB |
bootgraph.pl | -rwxr-xr-x | 5.6 KB |
bpf_helpers_doc.py | -rwxr-xr-x | 20.1 KB |
cc-can-link.sh | -rwxr-xr-x | 166 bytes |
check_extable.sh | -rwxr-xr-x | 4.9 KB |
checkincludes.pl | -rwxr-xr-x | 1.9 KB |
checkkconfigsymbols.py | -rwxr-xr-x | 15.5 KB |
checkpatch.pl | -rwxr-xr-x | 199.8 KB |
checkstack.pl | -rwxr-xr-x | 5.3 KB |
checksyscalls.sh | -rwxr-xr-x | 7.3 KB |
checkversion.pl | -rwxr-xr-x | 1.9 KB |
clang-version.sh | -rwxr-xr-x | 527 bytes |
cleanfile | -rwxr-xr-x | 3.5 KB |
cleanpatch | -rwxr-xr-x | 5.1 KB |
coccicheck | -rwxr-xr-x | 7.2 KB |
config | -rwxr-xr-x | 4.5 KB |
conmakehash.c | -rw-r--r-- | 5.8 KB |
const_structs.checkpatch | -rw-r--r-- | 964 bytes |
decode_stacktrace.sh | -rwxr-xr-x | 3.9 KB |
decodecode | -rwxr-xr-x | 2.6 KB |
depmod.sh | -rwxr-xr-x | 1.3 KB |
diffconfig | -rwxr-xr-x | 3.7 KB |
documentation-file-ref-check | -rwxr-xr-x | 5.4 KB |
export_report.pl | -rwxr-xr-x | 4.5 KB |
extract-cert.c | -rw-r--r-- | 3.5 KB |
extract-ikconfig | -rwxr-xr-x | 1.7 KB |
extract-module-sig.pl | -rwxr-xr-x | 3.7 KB |
extract-sys-certs.pl | -rwxr-xr-x | 3.7 KB |
extract-vmlinux | -rwxr-xr-x | 1.7 KB |
extract_xc3028.pl | -rwxr-xr-x | 44.6 KB |
faddr2line | -rwxr-xr-x | 6.2 KB |
file-size.sh | -rwxr-xr-x | 86 bytes |
find-unused-docs.sh | -rwxr-xr-x | 1.3 KB |
gcc-goto.sh | -rwxr-xr-x | 511 bytes |
gcc-ld | -rwxr-xr-x | 711 bytes |
gcc-plugin.sh | -rwxr-xr-x | 1.1 KB |
gcc-version.sh | -rwxr-xr-x | 588 bytes |
gcc-x86_32-has-stack-protector.sh | -rwxr-xr-x | 173 bytes |
gcc-x86_64-has-stack-protector.sh | -rwxr-xr-x | 198 bytes |
gen_compile_commands.py | -rwxr-xr-x | 5.6 KB |
gen_ksymdeps.sh | -rwxr-xr-x | 399 bytes |
get_abi.pl | -rwxr-xr-x | 10.1 KB |
get_dvb_firmware | -rwxr-xr-x | 24.5 KB |
get_maintainer.pl | -rwxr-xr-x | 67.2 KB |
gfp-translate | -rwxr-xr-x | 1.7 KB |
headerdep.pl | -rwxr-xr-x | 3.5 KB |
headers_check.pl | -rwxr-xr-x | 3.7 KB |
headers_install.sh | -rwxr-xr-x | 3.6 KB |
insert-sys-cert.c | -rw-r--r-- | 8.9 KB |
jobserver-exec | -rwxr-xr-x | 2.2 KB |
kallsyms.c | -rw-r--r-- | 17.2 KB |
kernel-doc | -rwxr-xr-x | 61.4 KB |
ld-version.sh | -rwxr-xr-x | 269 bytes |
leaking_addresses.pl | -rwxr-xr-x | 12.8 KB |
link-vmlinux.sh | -rwxr-xr-x | 7.7 KB |
makelst | -rwxr-xr-x | 808 bytes |
markup_oops.pl | -rwxr-xr-x | 7.9 KB |
mkcompile_h | -rwxr-xr-x | 2.5 KB |
mkmakefile | -rwxr-xr-x | 426 bytes |
mksysmap | -rwxr-xr-x | 1.3 KB |
mkuboot.sh | -rwxr-xr-x | 414 bytes |
module-common.lds | -rw-r--r-- | 901 bytes |
modules-check.sh | -rwxr-xr-x | 303 bytes |
namespace.pl | -rwxr-xr-x | 13.2 KB |
nsdeps | -rw-r--r-- | 1.9 KB |
objdiff | -rwxr-xr-x | 2.8 KB |
parse-maintainers.pl | -rw-r--r-- | 3.7 KB |
patch-kernel | -rwxr-xr-x | 9.9 KB |
profile2linkerlist.pl | -rwxr-xr-x | 414 bytes |
prune-kernel | -rwxr-xr-x | 708 bytes |
recordmcount.c | -rw-r--r-- | 16.2 KB |
recordmcount.h | -rw-r--r-- | 17.1 KB |
recordmcount.pl | -rwxr-xr-x | 18.8 KB |
setlocalversion | -rwxr-xr-x | 4.3 KB |
show_delta | -rwxr-xr-x | 3.0 KB |
sign-file.c | -rw-r--r-- | 9.8 KB |
sortextable.c | -rw-r--r-- | 8.3 KB |
sortextable.h | -rw-r--r-- | 5.5 KB |
spdxcheck-test.sh | -rw-r--r-- | 323 bytes |
spdxcheck.py | -rwxr-xr-x | 9.9 KB |
spelling.txt | -rw-r--r-- | 29.3 KB |
sphinx-pre-install | -rwxr-xr-x | 17.9 KB |
split-man.pl | -rwxr-xr-x | 600 bytes |
stackdelta | -rwxr-xr-x | 1.8 KB |
stackusage | -rwxr-xr-x | 794 bytes |
subarch.include | -rw-r--r-- | 641 bytes |
tags.sh | -rwxr-xr-x | 9.3 KB |
tools-support-relr.sh | -rwxr-xr-x | 518 bytes |
unifdef.c | -rw-r--r-- | 34.8 KB |
ver_linux | -rwxr-xr-x | 2.8 KB |
xen-hypercalls.sh | -rw-r--r-- | 386 bytes |
xz_wrap.sh | -rwxr-xr-x | 562 bytes |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...