Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace --flush-on-signal <int> with --forward-signal <int> in timem #230

Merged
merged 3 commits into from
Oct 4, 2021

Conversation

hidmic
Copy link
Contributor

@hidmic hidmic commented Oct 2, 2021

Follow-up to #225. Turns out that:

  • on Linux, components such as cpu_util (see times man pages) and peak_rss (see getrusage man pages) depend on children processes being waited on.
  • --flush-on-signal <int> may result in children processes becoming zombie processes if timem gets the signal but its process group does not or children processes do not terminate on that signal.

This patch simply ensures the signal is forwarded. Whether children processes terminate or not it's up to their implementation. When they do, timem properly finishes waiting on them.

…mem.

- on Linux, components such as `cpu_util` and `peak_rss` depend on the
  underlying process being waited on.
- `--flush-on-signal <int>` may result in zombie processes if timem gets
  the signal but its process group does not.
Signed-off-by: Michel Hidalgo <[email protected]>
@hidmic
Copy link
Contributor Author

hidmic commented Oct 4, 2021

Aha! Thanks for 3d05af8. Where's the linter configuration? I did look for it but could not find it.

@jrmadsen
Copy link
Collaborator

jrmadsen commented Oct 4, 2021

All the formatting checks are in .github/workflows/formatting.yml. If you have clang-format-9 installed, you can just "build" the format target and it will run clang-format on the source code. The only thing to watch out for is different versions of clang-format can occasionally cause slightly different formatting changes and then cause the formatting checks to fail.

@jrmadsen
Copy link
Collaborator

jrmadsen commented Oct 4, 2021

It looks like the CircleCI build is failing bc of an unrelated issue with the gotcha include directories inside the container this runs in so I am going to merge.

@jrmadsen jrmadsen merged commit 4ca991b into NERSC:develop Oct 4, 2021
@hidmic hidmic deleted the timem-wait-for-child branch October 4, 2021 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants