Richard Scheffenegger
bc7ee8e5bc
Address panic with PRR due to missed initialization of recover_fs
...
Summary:
When using the base stack in conjunction with RACK, it appears that
infrequently, ++tp->t_dupacks is instantly larger than tcprexmtthresh.
This leaves the recover flightsize (sackhint.recover_fs) uninitialized,
leading to a div/0 panic.
Address this by properly initializing the variable just prior to first
use, if it is not properly initialized.
In order to prevent stale information from a prior recovery to
negatively impact the PRR calculations in this event, also clear
recover_fs once loss recovery is finished.
Finally, improve the readability of the initialization of recover_fs
when t_dupacks == tcprexmtthresh by adjusting the indentation and
using the max(1, snd_nxt - snd_una) macro.
Reviewers: rrs, kbowling, tuexen, jtl, #transport, gnn!, jmg, manu, #manpages
Reviewed By: rrs, kbowling, #transport
Subscribers: bdrewery, andrew, rpokala, ae, emaste, bz, bcran, #linuxkpi, imp, melifaro
Differential Revision: https://reviews.freebsd.org/D28114
2021-01-20 12:06:34 +01:00
..
2020-10-24 16:11:46 +00:00
2021-01-19 21:23:24 +00:00
2020-06-25 20:17:34 +00:00
2021-01-14 19:28:25 +01:00
2020-05-19 18:35:08 +00:00
2020-05-19 18:35:08 +00:00
2020-09-01 21:19:14 +00:00
2020-06-17 13:27:13 +00:00
2020-10-19 17:07:19 +00:00
2020-09-01 21:19:14 +00:00
2021-01-11 19:51:11 +00:00
2020-11-08 18:49:23 +00:00
2021-01-08 13:32:04 -05:00
2021-01-17 20:32:26 +00:00
2020-12-25 11:33:17 +00:00
2020-11-29 13:41:49 +00:00
2020-09-01 21:19:14 +00:00
2020-10-18 12:03:36 +00:00
2020-12-19 22:04:46 +00:00
2020-12-19 22:04:46 +00:00
2020-09-20 21:32:52 +00:00
2020-11-22 20:21:10 +00:00
2020-10-18 17:15:47 +00:00
2020-10-18 17:15:47 +00:00
2021-01-16 22:42:41 +00:00
2021-01-16 22:42:41 +00:00
2020-10-09 12:06:43 +00:00
2020-03-01 12:34:27 +00:00
2020-09-01 21:19:14 +00:00
2020-06-18 19:32:34 +00:00
2020-09-01 21:19:14 +00:00
2020-11-13 18:25:07 +00:00
2021-01-19 21:23:25 +00:00
2020-09-01 21:19:14 +00:00
2020-11-29 19:43:33 +00:00
2020-10-11 00:01:00 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-10-09 12:06:43 +00:00
2020-11-12 21:58:47 +00:00
2021-01-16 22:42:41 +00:00
2020-12-23 18:03:47 +01:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-10-04 15:37:34 +00:00
2020-09-01 21:19:14 +00:00
2020-10-07 15:22:48 +00:00
2020-09-01 21:19:14 +00:00
2020-06-22 14:36:14 +00:00
2020-06-18 19:32:34 +00:00
2020-09-24 12:26:06 +00:00
2020-11-09 13:12:07 +00:00
2020-09-01 21:19:14 +00:00
2020-12-13 23:51:51 +00:00
2020-09-01 21:19:14 +00:00
2020-09-24 12:26:06 +00:00
2020-07-10 14:56:05 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2021-01-01 15:59:10 +01:00
2020-09-24 12:26:06 +00:00
2020-10-06 11:29:08 +00:00
2020-09-01 21:19:14 +00:00
2020-06-11 13:34:09 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2021-01-12 13:16:10 +00:00
2020-09-01 21:19:14 +00:00
2020-10-16 10:44:48 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-10-16 10:44:48 +00:00
2020-09-01 21:19:14 +00:00
2020-10-16 10:44:48 +00:00
2020-10-06 11:08:52 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2021-01-20 12:06:34 +01:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-09-01 21:19:14 +00:00
2020-04-27 23:17:19 +00:00
2020-04-27 23:17:19 +00:00
2020-10-09 12:44:56 +00:00
2020-05-03 00:37:16 +00:00
2020-10-29 23:28:39 +00:00
2020-04-08 17:55:45 +00:00
2020-11-08 18:47:05 +00:00
2020-10-09 12:44:56 +00:00
2021-01-20 12:06:34 +01:00
2021-01-14 19:28:25 +01:00
2020-08-10 20:24:48 +00:00
2020-04-14 16:35:05 +00:00
2020-04-16 15:59:23 +00:00
2021-01-14 19:28:25 +01:00
2020-12-19 22:04:46 +00:00
2021-01-14 19:28:25 +01:00
2020-12-19 22:04:46 +00:00
2020-09-01 21:19:14 +00:00
2020-04-27 23:17:19 +00:00
2020-10-18 17:15:47 +00:00
2020-09-18 02:21:15 +00:00