android_kernel_sony_sdm845/net
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Eric Dumazet a4b012c648 ipvs: move old_secure_tcp into struct netns_ipvs
[ Upstream commit c24b75e0f9239e78105f81c5f03a751641eb07ef ]

syzbot reported the following issue :

BUG: KCSAN: data-race in update_defense_level / update_defense_level

read to 0xffffffff861a6260 of 4 bytes by task 3006 on cpu 1:
 update_defense_level+0x621/0xb30 net/netfilter/ipvs/ip_vs_ctl.c:177
 defense_work_handler+0x3d/0xd0 net/netfilter/ipvs/ip_vs_ctl.c:225
 process_one_work+0x3d4/0x890 kernel/workqueue.c:2269
 worker_thread+0xa0/0x800 kernel/workqueue.c:2415
 kthread+0x1d4/0x200 drivers/block/aoe/aoecmd.c:1253
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

write to 0xffffffff861a6260 of 4 bytes by task 7333 on cpu 0:
 update_defense_level+0xa62/0xb30 net/netfilter/ipvs/ip_vs_ctl.c:205
 defense_work_handler+0x3d/0xd0 net/netfilter/ipvs/ip_vs_ctl.c:225
 process_one_work+0x3d4/0x890 kernel/workqueue.c:2269
 worker_thread+0xa0/0x800 kernel/workqueue.c:2415
 kthread+0x1d4/0x200 drivers/block/aoe/aoecmd.c:1253
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 7333 Comm: kworker/0:5 Not tainted 5.4.0-rc3+ #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: events defense_work_handler

Indeed, old_secure_tcp is currently a static variable, while it
needs to be a per netns variable.

Fixes: a0840e2e16 ("IPVS: netns, ip_vs_ctl local vars moved to ipvs struct.")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-11-12 19:15:57 +01:00
..
6lowpan 6lowpan: iphc: reset mac_header after decompress to fix panic 2018-10-03 17:01:42 -07:00
9p 9p/virtio: Add cleanup path in p9_virtio_init 2019-08-04 09:33:28 +02:00
802
8021q vlan: disable SIOCSHWTSTAMP in container 2019-05-16 19:43:46 +02:00
appletalk appletalk: enforce CAP_NET_RAW for raw sockets 2019-10-05 12:30:15 +02:00
atm net: atm: Fix potential Spectre v1 vulnerabilities 2019-04-27 09:34:40 +02:00
ax25 ax25: enforce CAP_NET_RAW for raw sockets 2019-10-05 12:30:15 +02:00
batman-adv batman-adv: Only read OGM2 tvlv_len after buffer len check 2019-09-21 07:14:14 +02:00
bluetooth Revert "Bluetooth: validate BLE connection interval updates" 2019-10-05 12:30:05 +02:00
bridge bridge/mdb: remove wrong use of NLM_F_MULTI 2019-09-21 07:14:01 +02:00
caif caif: reduce stack size with KASAN 2019-05-08 07:19:07 +02:00
can can: purge socket error queue on sock destruct 2019-07-10 09:55:33 +02:00
ceph libceph: use kbasename() and kill ceph_file_part() 2019-08-11 12:22:15 +02:00
core net/flow_dissector: switch to siphash 2019-11-10 11:23:31 +01:00
dcb net: dcb: For wild-card lookups, use priority -1, not 0 2018-09-19 22:47:15 +02:00
dccp inet: stop leaking jiffies on the wire 2019-11-10 11:23:29 +01:00
decnet dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock 2018-02-25 11:05:44 +01:00
dns_resolver KEYS: DNS: fix parsing multiple options 2018-07-22 14:27:39 +02:00
dsa net: dsa: fix switch tree list 2019-11-10 11:23:26 +01:00
ethernet net: introduce device min_header_len 2017-02-18 15:11:43 +01:00
hsr net/hsr: fix possible crash in add_timer() 2019-03-19 13:14:08 +01:00
ieee802154 ieee802154: enforce CAP_NET_RAW for raw sockets 2019-10-05 12:30:15 +02:00
ipv4 ipv4: Fix table id reference in fib_sync_down_addr 2019-11-12 19:15:37 +01:00
ipv6 Revert "net: sit: fix memory leak in sit_init_net()" 2019-10-29 09:15:26 +01:00
ipx ipx: call ipxitf_put() in ioctl error path 2017-05-25 15:44:41 +02:00
irda irda: Only insert new objects into the global database via setsockopt 2018-09-15 09:43:01 +02:00
iucv net/iucv: Free memory obtained by kzalloc 2018-03-31 18:11:34 +02:00
kcm kcm: switch order of device registration to fix a crash 2019-04-17 08:36:44 +02:00
key xfrm: clean up xfrm protocol checks 2019-09-16 08:19:32 +02:00
l2tp compat_ioctl: pppoe: fix PPPOEIOCSFWD handling 2019-08-11 12:22:17 +02:00
l3mdev net: ipv6: Remove l3mdev_get_saddr6 2016-09-10 23:12:53 -07:00
lapb lapb: fixed leak of control-blocks. 2019-06-22 08:17:22 +02:00
llc llc: fix sk_buff leak in llc_conn_service() 2019-11-06 12:18:24 +01:00
mac80211 mac80211: Reject malformed SSID elements 2019-10-29 09:15:22 +01:00
mac802154 net: mac802154: tx: expand tailroom if necessary 2018-09-09 20:01:19 +02:00
mpls mpls, nospec: Sanitize array index in mpls_label_ok() 2018-03-11 16:21:34 +01:00
ncsi net/ncsi: Improve HNCDSC AEN handler 2016-10-20 11:23:08 -04:00
netfilter ipvs: move old_secure_tcp into struct netns_ipvs 2019-11-12 19:15:57 +01:00
netlabel netlabel: fix out-of-bounds memory accesses 2019-03-13 14:04:53 -07:00
netlink netlink: Don't shift on 64 for ngroups 2018-08-09 12:17:59 +02:00
netrom netrom: hold sock when setting skb->destructor 2019-08-04 09:33:35 +02:00
nfc nfc: netlink: fix double device reference drop 2019-11-12 19:15:39 +01:00
openvswitch openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC 2019-10-05 12:30:13 +02:00
packet net/packet: fix race in tpacket_snd() 2019-08-25 10:51:51 +02:00
phonet phonet: fix building with clang 2019-03-23 13:19:44 +01:00
qrtr net: qrtr: Stop rx_worker before freeing node 2019-10-05 12:30:13 +02:00
rds net/rds: Fix error handling in rds_ib_add_one() 2019-10-07 18:53:23 +02:00
rfkill rfkill: gpio: fix memory leak in probe error path 2018-05-16 10:08:43 +02:00
rose net: rose: fix a possible stack overflow 2019-04-03 06:24:14 +02:00
rxrpc rxrpc: Fix send on a connected, but unbound socket 2019-08-04 09:33:34 +02:00
sched net/flow_dissector: switch to siphash 2019-11-10 11:23:31 +01:00
sctp inet: stop leaking jiffies on the wire 2019-11-10 11:23:29 +01:00
strparser strparser: Fix incorrect strp->need_bytes value. 2018-04-29 11:32:02 +02:00
sunrpc net :sunrpc :clnt :Fix xps refcount imbalance on the error path 2019-07-21 09:05:57 +02:00
switchdev switchdev: Execute bridge ndos only for bridge ports 2016-10-19 10:58:04 -04:00
tipc tipc: add NULL pointer check before calling kfree_rcu 2019-09-21 07:14:03 +02:00
unix missing barriers in some of unix_sock ->addr and ->path accesses 2019-03-19 13:14:10 +01:00
vmw_vsock vsock/virtio: Initialize core virtio vsock before registering the driver 2019-05-25 18:26:44 +02:00
wimax
wireless nl80211: fix validation of mesh path nexthop 2019-11-06 12:18:21 +01:00
x25 net/x25: fix a race in x25_bind() 2019-03-19 13:14:09 +01:00
xfrm xfrm: clean up xfrm protocol checks 2019-09-16 08:19:32 +02:00
compat.c sock: Make sock->sk_stamp thread-safe 2019-01-09 16:16:41 +01:00
Kconfig
Makefile
socket.c bpf: get rid of pure_initcall dependency to enable jits 2019-08-25 10:51:40 +02:00
sysctl_net.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2016-10-06 09:52:23 -07:00