Repository navigation
watchfrr: don't admit to systemd that we restart - #23088
Conversation
This comment was marked as low quality.
This comment was marked as low quality.
| static FRR_NORETURN void sigint(void) | ||
| { | ||
| zlog_notice("Terminating on signal"); | ||
| systemd_send_stopping(); |
There was a problem hiding this comment.
I guess I'm grumpy about removing this. I use the status line in systemd status frr to help me understand where we are sometimes. It's useful information that I don't want to loose.
As I understand it this is a problem in relation to reload -vs- restart. restart works fine. reload restarts watchfrr causing this problem. We are long term going to a system where watchfrr needs to be informed about what daemons it needs to know about. Why not teach it now?
There was a problem hiding this comment.
As discussed on Slack, this is the correct fix at this time. We're not stopping, we can't tell systemd we're stopping. This is orthogonal to adding functionality to change the set of daemons in watchfrr really.
|
Spoke w/ David. The reload operation will send a SIG_USR1 signal which will send a STATUS= |
As of systemd 259 (98734ac74d16), once you're telling it that you're stopping, you're _stopping_, full stop. systemd will make sure of it. So, I guess we just shouldn't admit to systemd that we're restarting. Use `SIGUSR1` for reload instead, so it just gives systemd a bit of text instead. Fixes: FRRouting#20430 References: systemd/systemd@98734ac Signed-off-by: David 'equinox' Lamparter <equinox@opensourcerouting.org>
2ce8aa9 to
34a9f14
Compare
done |
|
@Mergifyio backport stable/10.7 stable/10.6 stable/10.5 stable/10.4 |
✅ Backports have been createdDetails
Cherry-pick of 34a9f14 has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally
Cherry-pick of 34a9f14 has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally
Cherry-pick of 34a9f14 has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
watchfrr: don't admit to systemd that we restart (backport #23088)
watchfrr: don't admit to systemd that we restart (backport #23088)
watchfrr: don't admit to systemd that we restart (backport #23088)
watchfrr: don't admit to systemd that we restart (backport #23088)
As of systemd 259 (98734ac74d16), once you're telling it that you're stopping, you're stopping, full stop. systemd will make sure of it.
So, I guess we just shouldn't admit to systemd that we're restarting.
Fixes: #20430
References: systemd/systemd@98734ac