diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-02-23 18:04:52 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-02-23 18:04:52 +0200 |
commit | dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d (patch) | |
tree | c160c3d7af3a7709fb33224e8344caafe581fcc4 /src/pies.h | |
parent | 6e73a7b0822d1fd506c75a662070f447bba94afb (diff) | |
download | pies-dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d.tar.gz pies-dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d.tar.bz2 |
Bugfixes
* lib/addrfmt.c: Include limits.h
* src/ctl.c (fun_stop,fun_start): Ignore non-component
progs.
* src/pies.c (request_restart_components): Fix piesctl
invocation.
* src/pies.h (PIES_CHLD_RESCHEDULE_ALARM): New flag.
(progman_wait_until): Remove.
(progman_recompute_alarm): New proto.
* src/progman.c (recompute_alarm): Remove. All uses
raise PIES_CHLD_RESCHEDULE_ALARM instead.
(progman_wake_sleeping): Handle status_stopping components
independently on their activity flag.
(prog_stop_all, progman_wait_until): Remove.
(progman_stop): Rewrite using mark+sweep approach.
Diffstat (limited to 'src/pies.h')
-rw-r--r-- | src/pies.h | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -320,10 +320,11 @@ void free_redirector (struct redirector *rp); | |||
320 | void pies_schedule_action (int act); | 320 | void pies_schedule_action (int act); |
321 | void free_action (struct action *act); | 321 | void free_action (struct action *act); |
322 | 322 | ||
323 | #define PIES_CHLD_NONE 0 | 323 | #define PIES_CHLD_NONE 0 |
324 | #define PIES_CHLD_CLEANUP 0x01 | 324 | #define PIES_CHLD_CLEANUP 0x01 |
325 | #define PIES_CHLD_WAKEUP 0x02 | 325 | #define PIES_CHLD_WAKEUP 0x02 |
326 | #define PIES_CHLD_GC 0x04 | 326 | #define PIES_CHLD_GC 0x04 |
327 | #define PIES_CHLD_RESCHEDULE_ALARM 0x08 | ||
327 | 328 | ||
328 | void pies_schedule_children (int op); | 329 | void pies_schedule_children (int op); |
329 | 330 | ||
@@ -338,7 +339,6 @@ void progman_stop (void); | |||
338 | void progman_cleanup (int expect_term); | 339 | void progman_cleanup (int expect_term); |
339 | void progman_filter (int (*filter) (struct component *, void *data), | 340 | void progman_filter (int (*filter) (struct component *, void *data), |
340 | void *data); | 341 | void *data); |
341 | int progman_wait_until (int (*cond) (void *), void *data); | ||
342 | int progman_accept (int socket, void *data); | 342 | int progman_accept (int socket, void *data); |
343 | 343 | ||
344 | void progman_create_sockets (void); | 344 | void progman_create_sockets (void); |
@@ -348,6 +348,7 @@ struct component *progman_lookup_tcpmux (const char *service, | |||
348 | 348 | ||
349 | void progman_run_comp (struct component *comp, int fd, | 349 | void progman_run_comp (struct component *comp, int fd, |
350 | union pies_sockaddr_storage *sa, socklen_t salen); | 350 | union pies_sockaddr_storage *sa, socklen_t salen); |
351 | void progman_recompute_alarm (void); | ||
351 | 352 | ||
352 | void fd_report (int fd, const char *msg); | 353 | void fd_report (int fd, const char *msg); |
353 | 354 | ||