Andrey V. Elsukov
2c87fdf059
Rework if_ipsec(4) to use epoch(9) instead of rmlock.
...
* use CK_LIST and FNV hash to keep chains of softc;
* read access to softc is protected by epoch();
* write access is protected by ipsec_ioctl_sx. Changing of softc fields
is allowed only when softc is unlinked from CK_LIST chains.
* linking/unlinking of softc is allowed only when ipsec_ioctl_sx is
exclusive locked.
* the plain LIST of all softc is replaced by hash table that uses ingress
address of tunnels as a key.
* added support for appearing/disappearing of ingress address handling.
Now it is allowed configure non-local ingress IP address, and thus the
problem with if_ipsec(4) configuration that happens on boot, when
ingress address is not yet configured, is solved.
MFC after: 1 month
Sponsored by: Yandex LLC
Differential Revision: https://reviews.freebsd.org/D17190
2018-10-21 18:24:20 +00:00
..
2018-08-22 19:38:48 +00:00
2017-11-20 19:43:44 +00:00
2017-11-27 15:23:17 +00:00
2017-11-20 19:43:44 +00:00
2018-06-13 17:04:41 +00:00
2018-06-13 17:04:41 +00:00
2017-11-27 15:23:17 +00:00
2017-11-27 15:23:17 +00:00
2018-07-24 16:35:52 +00:00
2017-11-20 19:43:44 +00:00
2018-06-19 10:34:45 +00:00
2018-05-23 21:02:14 +00:00
2017-11-27 15:23:17 +00:00
2018-05-31 09:11:21 +00:00
2018-03-27 15:29:32 +00:00
2017-11-27 15:23:17 +00:00
2018-08-22 18:19:56 +00:00
2017-11-27 15:23:17 +00:00
2017-11-27 15:23:17 +00:00
2018-04-13 21:18:04 +00:00
2018-07-24 16:35:52 +00:00
2018-05-11 05:00:40 +00:00
2018-07-24 16:35:52 +00:00
2018-05-11 20:08:28 +00:00
2017-11-27 15:23:17 +00:00
2017-11-27 15:23:17 +00:00
2018-07-24 16:35:52 +00:00
2017-11-20 19:43:44 +00:00
2018-07-24 16:35:52 +00:00
2018-07-24 16:35:52 +00:00
2017-11-27 15:23:17 +00:00
2018-07-24 16:35:52 +00:00
2018-08-26 12:51:46 +00:00
2018-03-27 20:51:49 +00:00
2018-10-21 18:06:15 +00:00
2018-10-21 18:06:15 +00:00
2018-10-21 18:13:45 +00:00
2018-10-21 18:13:45 +00:00
2018-10-21 18:24:20 +00:00
2017-02-06 08:49:57 +00:00
2018-10-09 13:26:06 +00:00
2018-05-24 23:21:23 +00:00
2018-07-24 16:35:52 +00:00
2018-05-24 23:21:23 +00:00
2017-11-20 19:43:44 +00:00
2018-07-24 16:35:52 +00:00
2018-10-21 18:18:37 +00:00
2018-04-23 21:10:33 +00:00
2018-08-22 18:19:56 +00:00
2016-02-01 17:41:21 +00:00
2006-01-04 12:57:09 +00:00
2017-11-27 15:23:17 +00:00
2017-11-27 15:23:17 +00:00
2014-09-19 10:39:58 +00:00
2018-05-18 20:13:34 +00:00
2018-06-05 20:51:01 +00:00
2018-10-03 07:35:16 +00:00
2017-11-27 15:23:17 +00:00
2017-11-27 15:23:17 +00:00
2018-10-03 07:35:16 +00:00
2016-05-24 11:47:14 +00:00
2017-11-20 19:43:44 +00:00
2018-10-21 15:02:06 +00:00
2018-08-16 23:46:38 +00:00
2018-10-21 16:51:35 +00:00
2018-05-19 05:27:49 +00:00
2017-12-30 04:03:53 +00:00
2018-10-21 17:55:26 +00:00
2018-05-11 20:08:28 +00:00
2018-05-11 20:08:28 +00:00
2018-05-11 20:08:28 +00:00
2018-10-12 22:40:54 +00:00
2018-10-12 22:40:54 +00:00
2018-10-12 22:40:54 +00:00
2017-11-20 19:43:44 +00:00
2018-07-20 17:45:26 +00:00
2018-07-20 17:45:26 +00:00
2016-06-07 15:07:00 +00:00
2016-07-09 02:33:45 +00:00
2016-07-09 02:33:45 +00:00
2017-11-27 15:23:17 +00:00
2018-07-24 16:35:52 +00:00
2017-11-27 15:23:17 +00:00
2018-04-12 07:20:50 +00:00
2018-04-12 07:20:50 +00:00
2018-04-12 07:20:50 +00:00
2018-04-12 07:20:50 +00:00
2014-08-16 15:00:01 +00:00
2018-03-23 16:56:44 +00:00
2018-03-23 16:56:44 +00:00
2017-11-20 19:43:44 +00:00
2018-08-22 19:38:48 +00:00
2013-05-21 21:20:10 +00:00
2018-06-16 08:26:23 +00:00
2017-11-20 19:43:44 +00:00
2018-06-16 08:26:23 +00:00
2018-06-16 19:21:09 +00:00
2017-11-20 19:43:44 +00:00
2017-11-20 19:43:44 +00:00
2017-11-20 19:43:44 +00:00
2017-07-24 03:59:50 +00:00
2018-06-16 08:26:23 +00:00
2018-07-24 16:35:52 +00:00
2018-09-03 22:10:49 +00:00
2017-10-11 06:08:01 +00:00
2017-10-11 06:08:01 +00:00
2018-07-24 16:35:52 +00:00
2017-12-05 18:42:07 +00:00
2017-11-20 19:43:44 +00:00
2017-11-20 19:43:44 +00:00
2015-01-18 18:06:40 +00:00
2018-07-30 14:25:17 +00:00
2018-09-12 08:05:33 +00:00