ZhangXiaoxu
19fad20d15
ipv4: set the tcp_min_rtt_wlen range from 0 to one day
There is a UBSAN report as below:
UBSAN: Undefined behaviour in net/ipv4/tcp_input.c:2877:56
signed integer overflow:
2147483647 * 1000 cannot be represented in type 'int'
CPU: 3 PID: 0 Comm: swapper/3 Not tainted 5.1.0-rc4-00058-g582549e #1
Call Trace:
<IRQ>
dump_stack+0x8c/0xba
ubsan_epilogue+0x11/0x60
handle_overflow+0x12d/0x170
? ttwu_do_wakeup+0x21/0x320
__ubsan_handle_mul_overflow+0x12/0x20
tcp_ack_update_rtt+0x76c/0x780
tcp_clean_rtx_queue+0x499/0x14d0
tcp_ack+0x69e/0x1240
? __wake_up_sync_key+0x2c/0x50
? update_group_capacity+0x50/0x680
tcp_rcv_established+0x4e2/0xe10
tcp_v4_do_rcv+0x22b/0x420
tcp_v4_rcv+0xfe8/0x1190
ip_protocol_deliver_rcu+0x36/0x180
ip_local_deliver+0x15b/0x1a0
ip_rcv+0xac/0xd0
__netif_receive_skb_one_core+0x7f/0xb0
__netif_receive_skb+0x33/0xc0
netif_receive_skb_internal+0x84/0x1c0
napi_gro_receive+0x2a0/0x300
receive_buf+0x3d4/0x2350
? detach_buf_split+0x159/0x390
virtnet_poll+0x198/0x840
? reweight_entity+0x243/0x4b0
net_rx_action+0x25c/0x770
__do_softirq+0x19b/0x66d
irq_exit+0x1eb/0x230
do_IRQ+0x7a/0x150
common_interrupt+0xf/0xf
</IRQ>
It can be reproduced by:
echo 2147483647 > /proc/sys/net/ipv4/tcp_min_rtt_wlen
Fixes: f672258391b42 ("tcp: track min RTT using windowed min-filter")
Signed-off-by: ZhangXiaoxu <zhangxiaoxu5@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-04-17 13:57:11 -07:00
..
2019-01-11 18:05:41 -08:00
2019-03-01 14:36:59 +01:00
2019-02-20 11:24:27 -08:00
2018-09-26 20:30:55 -07:00
2018-10-12 09:47:39 -07:00
2019-02-27 21:45:24 -08:00
2018-10-02 22:28:17 -07:00
2019-03-04 13:14:34 -08:00
2018-12-19 11:21:37 -08:00
2019-01-28 11:20:58 +01:00
2019-02-26 13:23:17 -08:00
2017-11-02 11:10:55 +01:00
2017-11-02 11:10:55 +01:00
2018-12-30 12:57:04 -08:00
2019-02-01 15:12:29 -08:00
2019-01-15 13:33:44 -08:00
2019-04-10 23:02:23 -07:00
2019-01-22 11:52:17 -08:00
2018-07-03 10:29:26 +09:00
2019-03-02 12:54:35 -08:00
2019-02-21 13:48:00 -08:00
2018-11-07 22:31:07 -08:00
2019-02-12 13:35:57 -05:00
2019-02-26 08:27:05 -08:00
2018-12-24 15:27:56 -08:00
2018-04-07 22:32:32 -04:00
2019-02-08 21:50:15 -08:00
2018-12-20 11:53:36 -08:00
2019-02-26 08:27:05 -08:00
2019-04-08 16:16:47 -07:00
2019-04-01 10:44:58 -07:00
2019-04-01 10:44:58 -07:00
2018-12-19 11:21:37 -08:00
2019-01-10 09:27:20 -05:00
2019-02-24 22:13:49 -08:00
2019-03-06 10:43:06 -08:00
2019-01-09 14:00:37 +01:00
2018-09-26 20:30:55 -07:00
2019-02-01 15:24:13 -08:00
2019-01-26 09:43:03 -08:00
2018-10-19 11:03:06 -07:00
2019-02-21 13:05:05 -08:00
2018-07-24 14:10:43 -07:00
2018-10-15 12:23:19 -07:00
2018-11-06 15:00:45 -08:00
2019-01-28 11:32:58 +01:00
2019-03-01 16:41:27 -08:00
2018-10-02 22:28:17 -07:00
2018-11-30 13:26:54 -08:00
2018-11-08 17:13:08 -08:00
2017-08-07 11:39:22 -07:00
2018-12-20 11:53:36 -08:00
2019-04-14 13:43:17 -07:00
2019-03-08 16:05:10 -08:00
2019-04-17 13:57:11 -07:00
2019-01-24 22:27:27 -08:00
2017-08-06 21:25:10 -07:00
2018-12-20 23:47:09 +01:00
2018-10-15 22:56:42 -07:00
2017-11-15 14:09:52 +09:00
2017-08-06 21:25:10 -07:00
2019-04-11 21:31:03 -07:00
2018-10-10 22:26:00 -07:00
2017-12-20 14:00:25 -05:00
2017-12-13 15:51:12 -05:00
2017-08-06 21:25:10 -07:00
2017-08-06 21:25:10 -07:00
2016-11-21 13:20:17 -05:00
2018-02-28 12:03:47 -05:00
2019-04-16 21:47:39 -07:00
2019-04-01 10:11:41 -07:00
2017-05-17 16:06:01 -04:00
2018-12-28 12:11:47 -08:00
2019-02-26 13:16:03 -08:00
2018-01-31 10:26:30 -05:00
2018-12-15 13:23:02 -08:00
2019-02-26 13:16:03 -08:00
2018-09-21 19:37:59 -07:00
2018-09-21 19:37:59 -07:00
2017-08-06 21:25:10 -07:00
2019-01-27 13:29:43 -08:00
2018-10-16 12:38:41 -07:00
2017-09-29 06:07:00 +01:00
2017-11-02 11:10:55 +01:00
2017-08-06 21:25:10 -07:00
2017-08-30 11:20:08 -07:00
2017-08-06 21:25:10 -07:00
2019-03-06 11:00:50 -08:00
2018-11-08 17:13:08 -08:00
2018-10-28 19:27:21 -07:00
2019-01-17 15:01:08 -08:00
2018-12-15 13:23:02 -08:00
2019-01-17 14:55:52 -08:00
2019-02-22 16:05:11 -08:00
2019-01-17 15:01:08 -08:00
2018-09-04 10:26:30 +02:00
2017-06-16 11:48:39 -04:00
2018-09-04 10:26:30 +02:00
2018-03-07 10:54:29 +01:00
2018-03-04 17:49:17 -05:00
2018-03-27 13:18:09 -04:00
2018-11-08 17:13:08 -08:00
2017-11-02 11:10:55 +01:00