Aaron Lehmann
e2a7ae61b2
cluster: Allow reentrant calls to methods during shutdown
...
The agent sometimes calls into libnetwork code that in turn calls
(*Cluster).IsAgent and (*Cluster).IsManager. These can cause the
node shutdown process to time out, since they wait for a lock that is
held by Cleanup.
It turns out c.mu doesn't need to be held while calling Stop. Holding
controlMutex is sufficient. Also, (*nodeRunner).Stop must release
nodeRunner's mu during the node shutdown process, otherwise the same
call into Cluster would be blocked on this lock instead.
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com >
Upstream-commit: 44ce809c954eec6755ba975ab7fe1c11ebbdfed2
Component: engine
2017-04-07 19:21:10 -07:00
..
2017-04-07 19:21:10 -07:00
2017-03-30 11:24:56 +02:00
2017-03-29 09:00:50 +08:00
2017-02-07 11:08:37 -08:00
2017-03-20 09:15:27 -07:00
2016-12-23 13:29:58 -08:00
2017-02-23 10:16:22 +08:00
2017-04-06 17:54:11 -07:00
2017-03-10 10:24:33 +00:00
2017-03-15 13:31:41 -07:00
2017-03-15 13:31:41 -07:00
2017-03-23 15:12:15 -07:00
2017-03-15 09:36:44 +00:00
2017-01-03 19:19:27 +01:00
2017-04-04 05:18:19 +00:00
2017-03-28 16:35:14 +02:00
2017-04-06 12:35:34 +02:00
2017-01-30 16:23:23 +01:00
2017-02-28 11:11:48 +01:00
2017-02-28 20:03:43 -08:00
2017-03-22 02:38:26 -07:00
2017-01-30 16:23:23 +01:00
2017-04-06 12:35:34 +02:00
2017-04-03 21:04:40 -04:00
2017-02-23 10:16:22 +08:00
2017-02-02 14:00:12 -08:00
2017-02-16 19:05:14 +08:00
2017-02-15 21:57:27 +08:00
2017-02-23 10:16:22 +08:00
2017-04-03 22:39:49 +02:00
2017-03-27 14:32:18 -07:00
2017-04-07 20:09:27 +02:00
2017-04-03 21:58:05 +02:00
2017-03-10 00:39:16 +02:00
2017-01-06 18:48:41 -08:00
2017-02-07 11:08:37 -08:00
2017-02-23 10:16:22 +08:00
2017-03-13 15:20:05 +11:00
2017-02-10 21:13:00 +02:00
2017-02-18 18:11:48 -08:00
2017-04-06 12:35:34 +02:00
2017-04-06 12:35:34 +02:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-02-07 11:08:37 -08:00
2017-03-16 09:21:51 +08:00
2017-03-26 15:21:13 +03:00
2017-03-28 15:18:39 -07:00
2017-02-01 12:01:49 +08:00
2017-02-18 18:11:48 -08:00
2017-02-18 18:11:48 -08:00
2016-12-27 23:30:50 +08:00
2017-03-31 08:57:09 +00:00
2017-04-06 17:54:11 -07:00
2017-04-03 09:57:04 -07:00
2017-01-17 08:26:05 +00:00
2017-04-05 16:31:43 -07:00
2017-01-26 07:20:45 -08:00
2017-02-02 11:25:07 -08:00
2017-03-28 16:35:24 +02:00
2017-02-23 10:16:22 +08:00
2017-02-15 21:57:27 +08:00
2017-01-11 21:35:59 +08:00
2016-12-27 21:46:52 +08:00
2017-01-12 20:36:22 +01:00
2017-02-28 20:03:43 -08:00
2017-02-01 14:43:58 -05:00
2017-01-04 18:18:30 +01:00
2017-02-09 09:46:59 +08:00
2016-12-27 23:30:50 +08:00
2017-03-10 02:50:21 +00:00
2017-03-10 02:50:21 +00:00
2017-01-03 11:47:47 -05:00
2017-02-18 10:08:55 +08:00
2017-03-22 14:43:33 -04:00
2017-01-30 10:59:19 -05:00