Eric Dumazet
d7cc186d09
sched: act_ct: take care of padding in struct zones_ht_key
...
[ Upstream commit 2191a54f63 ]
Blamed commit increased lookup key size from 2 bytes to 16 bytes,
because zones_ht_key got a struct net pointer.
Make sure rhashtable_lookup() is not using the padding bytes
which are not initialized.
BUG: KMSAN: uninit-value in rht_ptr_rcu include/linux/rhashtable.h:376 [inline]
BUG: KMSAN: uninit-value in __rhashtable_lookup include/linux/rhashtable.h:607 [inline]
BUG: KMSAN: uninit-value in rhashtable_lookup include/linux/rhashtable.h:646 [inline]
BUG: KMSAN: uninit-value in rhashtable_lookup_fast include/linux/rhashtable.h:672 [inline]
BUG: KMSAN: uninit-value in tcf_ct_flow_table_get+0x611/0x2260 net/sched/act_ct.c:329
rht_ptr_rcu include/linux/rhashtable.h:376 [inline]
__rhashtable_lookup include/linux/rhashtable.h:607 [inline]
rhashtable_lookup include/linux/rhashtable.h:646 [inline]
rhashtable_lookup_fast include/linux/rhashtable.h:672 [inline]
tcf_ct_flow_table_get+0x611/0x2260 net/sched/act_ct.c:329
tcf_ct_init+0xa67/0x2890 net/sched/act_ct.c:1408
tcf_action_init_1+0x6cc/0xb30 net/sched/act_api.c:1425
tcf_action_init+0x458/0xf00 net/sched/act_api.c:1488
tcf_action_add net/sched/act_api.c:2061 [inline]
tc_ctl_action+0x4be/0x19d0 net/sched/act_api.c:2118
rtnetlink_rcv_msg+0x12fc/0x1410 net/core/rtnetlink.c:6647
netlink_rcv_skb+0x375/0x650 net/netlink/af_netlink.c:2550
rtnetlink_rcv+0x34/0x40 net/core/rtnetlink.c:6665
netlink_unicast_kernel net/netlink/af_netlink.c:1331 [inline]
netlink_unicast+0xf52/0x1260 net/netlink/af_netlink.c:1357
netlink_sendmsg+0x10da/0x11e0 net/netlink/af_netlink.c:1901
sock_sendmsg_nosec net/socket.c:730 [inline]
__sock_sendmsg+0x30f/0x380 net/socket.c:745
____sys_sendmsg+0x877/0xb60 net/socket.c:2597
___sys_sendmsg+0x28d/0x3c0 net/socket.c:2651
__sys_sendmsg net/socket.c:2680 [inline]
__do_sys_sendmsg net/socket.c:2689 [inline]
__se_sys_sendmsg net/socket.c:2687 [inline]
__x64_sys_sendmsg+0x307/0x4a0 net/socket.c:2687
x64_sys_call+0x2dd6/0x3c10 arch/x86/include/generated/asm/syscalls_64.h:47
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x77/0x7f
Local variable key created at:
tcf_ct_flow_table_get+0x4a/0x2260 net/sched/act_ct.c:324
tcf_ct_init+0xa67/0x2890 net/sched/act_ct.c:1408
Fixes: 88c67aeb14 ("sched: act_ct: add netns into the key of tcf_ct_flow_table")
Reported-by: syzbot+1b5e4e187cc586d05ea0@syzkaller.appspotmail.com
Signed-off-by: Eric Dumazet <edumazet@google.com >
Cc: Xin Long <lucien.xin@gmail.com >
Reviewed-by: Simon Horman <horms@kernel.org >
Reviewed-by: Xin Long <lucien.xin@gmail.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2024-08-11 12:47:18 +02:00
..
2024-06-27 13:49:07 +02:00
2022-12-09 09:18:07 +00:00
2023-03-01 08:19:09 +00:00
2023-04-19 13:04:30 +01:00
2024-08-11 12:47:18 +02:00
2023-02-13 20:09:01 -08:00
2022-12-13 15:47:48 -08:00
2023-02-16 10:39:28 +01:00
2022-12-09 09:18:07 +00:00
2023-06-29 12:10:37 +02:00
2024-03-01 13:35:06 +01:00
2023-03-22 22:43:23 -07:00
2023-02-16 10:39:28 +01:00
2023-07-04 10:31:38 +02:00
2023-06-10 00:11:41 -07:00
2023-02-26 18:27:45 +00:00
2022-12-09 09:18:07 +00:00
2022-12-09 09:18:07 +00:00
2024-04-10 16:35:51 +02:00
2023-03-30 23:24:24 -07:00
2022-12-09 09:18:07 +00:00
2024-01-31 16:19:02 -08:00
2022-12-09 09:18:07 +00:00
2023-07-17 07:33:39 +01:00
2022-12-09 09:18:07 +00:00
2022-12-25 13:38:09 -08:00
2024-03-01 13:35:09 +01:00
2023-07-31 20:10:36 -07:00
2023-07-17 07:33:38 +01:00
2023-07-31 20:10:37 -07:00
2023-10-06 11:43:05 +01:00
2023-08-21 07:41:57 +01:00
2024-01-10 17:16:49 +01:00
2022-12-19 09:43:18 +00:00
2023-07-19 10:07:27 -07:00
2023-02-16 09:27:07 +01:00
2024-06-27 13:49:15 +02:00
2023-06-10 00:11:41 -07:00
2022-09-22 17:34:10 -07:00
2022-11-18 02:15:15 +01:00
2022-09-01 08:06:45 +02:00
2023-08-01 10:47:24 +02:00
2022-09-01 20:08:32 -07:00
2022-09-22 17:34:10 -07:00
2022-10-19 13:47:09 +01:00
2023-08-31 11:21:52 +02:00
2023-04-21 20:24:29 -07:00
2021-12-31 14:35:40 +00:00
2024-06-27 13:49:15 +02:00
2023-01-18 20:28:25 -08:00
2023-10-18 18:08:28 -07:00
2022-09-01 08:06:45 +02:00
2024-06-27 13:49:02 +02:00
2024-07-18 13:21:12 +02:00
2023-06-07 10:25:39 +01:00
2023-04-13 22:22:10 -07:00
2023-04-13 22:22:10 -07:00
2023-07-26 22:08:14 -07:00
2024-06-21 14:38:16 +02:00
2023-08-17 19:15:06 -07:00
2023-06-07 10:25:39 +01:00
2023-09-05 08:54:12 +02:00
2022-09-22 17:34:10 -07:00
2023-09-05 08:54:12 +02:00
2023-06-07 10:25:39 +01:00
2022-10-20 17:24:59 -07:00
2023-06-07 10:25:39 +01:00
2022-09-22 17:34:10 -07:00
2024-06-21 14:38:17 +02:00
2023-06-10 00:11:41 -07:00
2023-06-07 10:25:39 +01:00