Commit fa70b79
committed
Protect forking services from false crash detection during reload
The service_reload() sets svc_starting() to flag that a reload is in
progress. The remaining changes use that flag to prevent the state
machine from interpreting the old PID's death as a crash:
service_monitor() doesn't zero the PID, service_step() RUNNING stays
put instead of restarting, and PAUSED doesn't drop to WAITING for
forking services.
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>1 parent bd91395 commit fa70b79
1 file changed
Lines changed: 21 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1299 | 1299 | | |
1300 | 1300 | | |
1301 | 1301 | | |
1302 | | - | |
| 1302 | + | |
| 1303 | + | |
| 1304 | + | |
| 1305 | + | |
| 1306 | + | |
| 1307 | + | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
1303 | 1311 | | |
1304 | 1312 | | |
1305 | | - | |
1306 | 1313 | | |
1307 | 1314 | | |
1308 | 1315 | | |
| |||
2338 | 2345 | | |
2339 | 2346 | | |
2340 | 2347 | | |
2341 | | - | |
2342 | | - | |
| 2348 | + | |
2343 | 2349 | | |
2344 | | - | |
2345 | 2350 | | |
2346 | 2351 | | |
2347 | 2352 | | |
| |||
3036 | 3041 | | |
3037 | 3042 | | |
3038 | 3043 | | |
| 3044 | + | |
| 3045 | + | |
| 3046 | + | |
| 3047 | + | |
| 3048 | + | |
| 3049 | + | |
| 3050 | + | |
| 3051 | + | |
| 3052 | + | |
| 3053 | + | |
3039 | 3054 | | |
3040 | 3055 | | |
3041 | 3056 | | |
| |||
3124 | 3139 | | |
3125 | 3140 | | |
3126 | 3141 | | |
3127 | | - | |
| 3142 | + | |
3128 | 3143 | | |
3129 | 3144 | | |
3130 | 3145 | | |
| |||
0 commit comments