Julian Anastasov
ceec4c3816
ipvs: convert services to rcu
...
This is the final step in RCU conversion.
Things that are removed:
- svc->usecnt: now svc is accessed under RCU read lock
- svc->inc: and some unused code
- ip_vs_bind_pe and ip_vs_unbind_pe: no ability to replace PE
- __ip_vs_svc_lock: replaced with RCU
- IP_VS_WAIT_WHILE: now readers lookup svcs and dests under
RCU and work in parallel with configuration
Other changes:
- before now, a RCU read-side critical section included the
calling of the schedule method, now it is extended to include
service lookup
- ip_vs_svc_table and ip_vs_svc_fwm_table are now using hlist
- svc->pe and svc->scheduler remain to the end (of grace period),
the schedulers are prepared for such RCU readers
even after done_service is called but they need
to use synchronize_rcu because last ip_vs_scheduler_put
can happen while RCU read-side critical sections
use an outdated svc->scheduler pointer
- as planned, update_service is removed
- empty services can be freed immediately after grace period.
If dests were present, the services are freed from
the dest trash code
Signed-off-by: Julian Anastasov <ja@ssi.bg >
Signed-off-by: Simon Horman <horms@verge.net.au >
2013-04-02 00:23:58 +02:00
..
2013-02-27 22:51:08 -05:00
2013-02-01 15:50:17 -02:00
2013-03-17 12:16:38 -04:00
2013-01-03 16:15:49 +01:00
2012-03-07 22:52:24 -08:00
2013-03-19 17:08:31 +01:00
2013-03-24 17:16:29 -04:00
2013-01-10 00:51:54 +01:00
2012-06-17 16:29:38 -07:00
2013-02-27 19:10:24 -08:00
2010-08-20 01:42:59 -07:00
2013-02-12 18:59:45 -05:00
2013-01-29 13:59:57 -05:00
2009-08-12 21:54:50 -07:00
2011-04-24 10:54:56 -07:00
2012-10-21 20:37:06 -04:00
2011-01-13 21:48:25 -08:00
2012-08-09 16:18:06 -07:00
2011-11-30 18:51:03 -05:00
2013-02-27 19:10:24 -08:00
2009-03-24 23:32:03 -07:00
2011-08-08 14:26:29 -04:00
2013-03-06 16:36:11 +01:00
2012-08-30 03:00:16 +02:00
2012-06-01 14:18:29 -04:00
2012-10-26 05:07:00 -04:00
2012-08-10 16:52:54 -07:00
2012-04-15 12:44:40 -04:00
2011-10-06 15:49:51 -04:00
2012-04-05 05:08:04 -04:00
2010-11-08 13:50:08 -08:00
2013-03-22 10:31:16 -04:00
2010-06-03 03:21:52 -07:00
2013-01-28 00:15:27 -05:00
2012-04-15 12:44:40 -04:00
2011-12-01 11:41:06 -05:00
2013-01-09 23:59:53 -08:00
2012-07-19 10:43:03 -07:00
2013-03-15 09:06:58 -04:00
2008-01-31 19:27:02 -08:00
2009-03-27 00:16:21 -07:00
2012-06-29 01:36:36 -07:00
2013-03-26 12:32:13 -04:00
2013-03-20 12:14:36 -04:00
2012-10-08 17:42:36 -04:00
2011-05-12 17:46:56 -04:00
2011-03-31 11:26:23 -03:00
2012-09-10 15:30:41 -04:00
2013-03-26 12:27:18 -04:00
2013-01-27 22:46:33 -05:00
2013-02-22 15:10:18 -05:00
2012-11-27 11:56:18 +01:00
2012-05-16 15:16:56 -04:00
2011-11-14 00:19:42 -05:00
2012-05-15 20:14:35 -04:00
2012-07-16 03:44:56 -07:00
2013-02-21 18:15:58 -05:00
2012-07-19 11:02:03 -07:00
2013-03-12 08:30:34 -04:00
2012-09-27 18:12:37 -04:00
2013-03-27 12:48:33 -04:00
2013-02-27 19:10:24 -08:00
2013-02-21 18:15:58 -05:00
2013-02-27 19:10:24 -08:00
2012-07-10 22:40:14 -07:00
2013-01-08 17:56:10 -08:00
2013-02-20 15:11:45 -05:00
2013-01-18 14:41:13 -05:00
2013-03-26 12:27:18 -04:00
2013-03-13 10:47:09 -04:00
2013-03-26 12:27:18 -04:00
2013-04-02 00:23:58 +02:00
2013-01-21 14:17:05 -05:00
2010-02-16 23:05:38 -08:00
2008-06-11 21:00:38 -07:00
2013-03-24 17:16:30 -04:00
2011-04-24 10:54:56 -07:00
2011-03-31 11:26:23 -03:00
2012-05-17 18:45:20 -04:00
2011-10-31 19:32:32 -04:00
2012-04-15 12:44:40 -04:00
2009-12-26 20:43:57 -08:00
2008-02-29 11:46:17 -08:00
2012-05-15 20:14:35 -04:00
2008-03-31 21:02:47 -07:00
2012-09-17 13:13:24 -04:00
2013-03-06 16:36:03 +01:00
2012-06-26 21:06:11 -07:00
2010-06-03 03:21:52 -07:00
2010-04-23 13:35:55 +09:00
2013-02-10 20:37:22 -05:00
2013-01-21 13:33:14 -05:00
2013-02-11 00:21:44 -05:00
2012-11-20 04:19:49 -08:00
2011-05-27 13:41:33 -04:00
2009-01-06 11:38:15 -07:00
2013-01-14 15:04:59 -05:00
2012-09-17 18:08:54 -07:00
2012-09-10 15:30:41 -04:00
2012-11-22 07:32:47 -08:00
2013-02-27 19:10:24 -08:00
2006-09-22 14:55:04 -07:00
2009-08-19 23:08:22 +04:00
2011-05-17 14:16:58 -04:00
2013-01-14 15:09:36 -05:00
2013-02-12 18:59:45 -05:00
2012-11-15 17:39:51 -05:00
2009-03-21 19:06:50 -07:00
2010-09-08 13:42:22 -07:00
2012-05-19 01:08:16 -04:00
2012-04-16 23:53:11 -04:00
2013-01-03 13:01:30 +01:00
2013-03-17 14:35:13 -04:00
2011-03-27 17:59:04 -07:00
2012-11-03 14:59:04 -04:00
2013-03-22 10:31:16 -04:00
2013-02-27 19:10:24 -08:00
2012-09-24 15:52:33 -04:00
2011-10-21 05:22:42 -04:00
2012-08-06 13:40:47 -07:00
2013-02-27 19:10:24 -08:00
2008-07-05 21:25:39 -07:00
2012-04-10 10:04:07 -07:00
2013-03-21 11:47:50 -04:00
2012-06-09 14:56:12 -07:00
2013-01-31 13:53:08 -05:00
2012-04-28 22:21:51 -04:00
2012-03-12 17:05:21 -07:00
2009-10-07 16:39:43 -04:00
2012-04-15 12:44:40 -04:00
2012-05-16 15:17:08 -04:00
2012-04-15 12:44:40 -04:00
2010-04-22 16:12:36 -07:00
2013-02-14 13:29:20 -05:00