Page MenuHomeFreeBSD

daemon: tests: add a test for missed SIGTERM
ClosedPublic

Authored by kevans on Oct 8 2024, 5:23 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 24, 10:13 PM
Unknown Object (File)
Fri, Apr 17, 7:32 AM
Unknown Object (File)
Thu, Apr 16, 8:53 AM
Unknown Object (File)
Wed, Apr 15, 11:27 PM
Unknown Object (File)
Wed, Apr 15, 12:07 AM
Unknown Object (File)
Tue, Apr 14, 12:00 AM
Unknown Object (File)
Mon, Apr 13, 10:26 AM
Unknown Object (File)
Sat, Apr 11, 2:57 AM
Subscribers

Details

Summary

This is somewhaht hard to test reliably, but we'll give it a shot. Startup
a sleep(1) daemon with a hefty restart delay. In refactoring of daemon(8),
we inadvertently started dropping SIGTERMs that came in while we were
waiting to restart the child, so we employ the strategy:

  • Pop the child sleep(1) first
  • Wait for sleep(1) to exit (pid file truncated)
  • Pop the daemon(8) with a SIGTERM
  • Wait for daemon(8) to exit

The pidfile is specifically truncated outside of the event loop so that we
don't have a kqueue to catch it in the current model.

PR: 277959

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable