From: Shuah Khan <skhan@linuxfoundation.org>
To: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>,
Fenghua Yu <fenghua.yu@intel.com>,
Reinette Chatre <reinette.chatre@intel.com>,
Shuah Khan <shuah@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
Shuah Khan <skhan@linuxfoundation.org>
Subject: Re: [PATCH v3 1/5] selftests/resctrl: Kill child process before parent process terminates if SIGTERM is received
Date: Fri, 18 Feb 2022 13:10:10 -0700 [thread overview]
Message-ID: <f0205a17-fba6-7c06-303d-a6e690c93073@linuxfoundation.org> (raw)
In-Reply-To: <20220216022641.2998318-2-tan.shaopeng@jp.fujitsu.com>
On 2/15/22 7:26 PM, Shaopeng Tan wrote:
> In kselftest framework, a sub test is run using the timeout utility
> and it will send SIGTERM to the test upon timeout.
>
> In resctrl_tests, a child process is created by fork() to
> run benchmark but SIGTERM is not set in sigaction().
> If SIGTERM signal is received, the parent process will be killed,
> but the child process still exists.
>
> kill child process before parent process terminates
> if SIGTERM signal is received.
>
> Signed-off-by: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com>
> ---
> Some important feedbacks from v1&v2 are addressed as follows:
>
> - Change the order so that current patch 3/3 becomes 1/3. Since without
> the SIGTERM fix, the test would hang if run from the kselftest framework.
> => I changed the order and the SIGTERM fix now becomes patch [1/5].
>
> - Describe that the test is run using the timeout utility and
> it will send SIGTERM to the test upon timeout.
> => I updated the changelog to include this information.
>
> - Describe changes in imperative mood, and address this in all patches.
> See Documentation/process/submitting-patches.rst for more details.
> => I described all my patches' changelog in imperative mood and
> deleted "This commit".
>
> - + sigaction(SIGTERM, &sigact, NULL) ||
> This snippet is preceded with a comment that describes its usage
> you could also update it with the expanded use of the kselftest framework.
> => I don't think it is necessary to add other comments.
> Since the current comment already states "Register CTRL-C handler for parent,
> as it has to kill benchmark before exiting", So, when SIGTERM comes,
> the benchmark(child process) should be killed before parent process terminates,
> but it was missing.
>
> tools/testing/selftests/resctrl/resctrl_val.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/resctrl/resctrl_val.c b/tools/testing/selftests/resctrl/resctrl_val.c
> index 95224345c78e..b32b96356ec7 100644
> --- a/tools/testing/selftests/resctrl/resctrl_val.c
> +++ b/tools/testing/selftests/resctrl/resctrl_val.c
> @@ -678,6 +678,7 @@ int resctrl_val(char **benchmark_cmd, struct resctrl_val_param *param)
> sigemptyset(&sigact.sa_mask);
> sigact.sa_flags = SA_SIGINFO;
> if (sigaction(SIGINT, &sigact, NULL) ||
> + sigaction(SIGTERM, &sigact, NULL) ||
> sigaction(SIGHUP, &sigact, NULL)) {
> perror("# sigaction");
> ret = errno;
>
This looks good to me.
Reviewed-by: Shuah Khan <skhan@linuxfoundation.org>
thanks,
-- Shuah
next prev parent reply other threads:[~2022-02-18 20:10 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-16 2:26 [PATCH v3 0/5] selftests/resctrl: Add resctrl_tests into kselftest set Shaopeng Tan
2022-02-16 2:26 ` [PATCH v3 1/5] selftests/resctrl: Kill child process before parent process terminates if SIGTERM is received Shaopeng Tan
2022-02-18 20:10 ` Shuah Khan [this message]
2022-02-16 2:26 ` [PATCH v3 2/5] selftests/resctrl: Make resctrl_tests run using kselftest framework Shaopeng Tan
2022-02-18 20:27 ` Shuah Khan
2022-02-22 7:55 ` tan.shaopeng
2022-02-24 0:13 ` Shuah Khan
2022-02-25 8:02 ` tan.shaopeng
2022-02-25 18:20 ` Shuah Khan
2022-03-01 7:51 ` tan.shaopeng
2022-02-16 2:26 ` [PATCH v3 3/5] selftests/resctrl: Update README about using kselftest framework to build/run resctrl_tests Shaopeng Tan
2022-02-18 20:31 ` Shuah Khan
2022-02-16 2:26 ` [PATCH v3 4/5] selftests/resctrl: Change the default limited time to 120 seconds Shaopeng Tan
2022-02-18 20:32 ` Shuah Khan
2022-02-16 2:26 ` [PATCH v3 5/5] selftests/resctrl: Fix resctrl_tests' return code to work with selftest framework Shaopeng Tan
2022-02-18 20:39 ` Shuah Khan
2022-02-18 20:44 ` [PATCH v3 0/5] selftests/resctrl: Add resctrl_tests into kselftest set Shuah Khan
2022-02-25 8:03 ` tan.shaopeng
2022-02-25 18:22 ` Shuah Khan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f0205a17-fba6-7c06-303d-a6e690c93073@linuxfoundation.org \
--to=skhan@linuxfoundation.org \
--cc=fenghua.yu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=reinette.chatre@intel.com \
--cc=shuah@kernel.org \
--cc=tan.shaopeng@jp.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®