From: Punit Agrawal <punit1.agrawal@toshiba.co.jp>
To: Daniel Wagner <dwagner@suse.de>
Cc: Clark Williams <williams@redhat.com>,
John Kacur <jkacur@redhat.com>, <linux-rt-users@vger.kernel.org>
Subject: Re: [PATCH rt-tests v4 03/16] cyclictest: Simplify --smp vs --affinity vs --threads argument logic
Date: Mon, 15 Feb 2021 13:06:52 +0900 [thread overview]
Message-ID: <877dnax9cz.fsf@kokedama.swc.toshiba.co.jp> (raw)
In-Reply-To: <20210210133450.6991-4-dwagner@suse.de> (Daniel Wagner's message of "Wed, 10 Feb 2021 14:34:37 +0100")
Hi Daniel,
Spotted one typo below while browsing through the patches.
Daniel Wagner <dwagner@suse.de> writes:
> Allow each command line only to update one variable and do the final
> decission at the end of the parsing step. With this the order
^
decision
Regards,
Punit
> of the command line is not important.
>
> Signed-off-by: Daniel Wagner <dwagner@suse.de>
> ---
> src/cyclictest/cyclictest.c | 34 ++++++++--------------------------
> 1 file changed, 8 insertions(+), 26 deletions(-)
>
> diff --git a/src/cyclictest/cyclictest.c b/src/cyclictest/cyclictest.c
> index 4c02f067fbad..b5cca3ae166b 100644
> --- a/src/cyclictest/cyclictest.c
> +++ b/src/cyclictest/cyclictest.c
> @@ -880,14 +880,13 @@ static int timermode = TIMER_ABSTIME;
> static int use_system;
> static int priority;
> static int policy = SCHED_OTHER; /* default policy if not specified */
> -static int num_threads = 1;
> +static int num_threads = -1;
> static int max_cycles;
> static int clocksel = 0;
> static int quiet;
> static int interval = DEFAULT_INTERVAL;
> static int distance = -1;
> static struct bitmask *affinity_mask = NULL;
> -static int smp = 0;
>
> static int clocksources[] = {
> CLOCK_MONOTONIC,
> @@ -953,7 +952,7 @@ enum option_values {
> static void process_options(int argc, char *argv[], int max_cpus)
> {
> int error = 0;
> - int option_affinity = 0;
> + int smp = 0;
>
> for (;;) {
> int option_index = 0;
> @@ -1008,10 +1007,6 @@ static void process_options(int argc, char *argv[], int max_cpus)
> switch (c) {
> case 'a':
> case OPT_AFFINITY:
> - option_affinity = 1;
> - /* smp sets AFFINITY_USEALL in OPT_SMP */
> - if (smp)
> - break;
> if (optarg) {
> parse_cpumask(optarg, max_cpus, &affinity_mask);
> } else if (optind < argc &&
> @@ -1019,8 +1014,6 @@ static void process_options(int argc, char *argv[], int max_cpus)
> argv[optind][0] == '0' ||
> argv[optind][0] == '!')) {
> parse_cpumask(argv[optind], max_cpus, &affinity_mask);
> - } else {
> - num_threads = -1;
> }
> break;
> case 'A':
> @@ -1108,22 +1101,14 @@ static void process_options(int argc, char *argv[], int max_cpus)
> case OPT_SYSTEM:
> use_system = MODE_SYS_OFFSET; break;
> case 'S':
> - case OPT_SMP: /* SMP testing */
> - smp = 1;
> - num_threads = -1; /* update after parsing */
> - break;
> + case OPT_SMP:
> + smp = 1; break;
> case 't':
> case OPT_THREADS:
> - if (smp) {
> - warn("-t ignored due to smp mode\n");
> - break;
> - }
> if (optarg != NULL)
> num_threads = atoi(optarg);
> else if (optind < argc && atoi(argv[optind]))
> num_threads = atoi(argv[optind]);
> - else
> - num_threads = -1; /* update after parsing */
> break;
> case OPT_TRIGGER:
> trigger = atoi(optarg);
> @@ -1179,13 +1164,10 @@ static void process_options(int argc, char *argv[], int max_cpus)
> use_nanosleep = MODE_CLOCK_NANOSLEEP;
> }
>
> - if (option_affinity && smp) {
> - warn("-a ignored due to smp mode\n");
> - if (affinity_mask) {
> - numa_bitmask_free(affinity_mask);
> - affinity_mask = NULL;
> - }
> - }
> + if (smp && num_threads != -1)
> + warn("--threads overwrites smp mode\n");
> + if (smp && affinity_mask)
> + warn("--affinity overwrites smp mode\n");
>
> if (smi) {
> if (affinity_mask)
next prev parent reply other threads:[~2021-02-15 4:09 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-10 13:34 [PATCH rt-tests v4 00/16] rt-numa.h cleanups Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 01/16] cyclictest: Use numa API directly Daniel Wagner
2021-02-17 3:49 ` John Kacur
2021-02-10 13:34 ` [PATCH rt-tests v4 02/16] cyclictest: Mimic --smp behavior with --affinity Daniel Wagner
2021-02-17 3:49 ` John Kacur
2021-02-10 13:34 ` [PATCH rt-tests v4 03/16] cyclictest: Simplify --smp vs --affinity vs --threads argument logic Daniel Wagner
2021-02-15 4:06 ` Punit Agrawal [this message]
2021-02-15 9:00 ` Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 04/16] signaltest: Use affinity_mask for steering thread placement Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 05/16] signaltest: Simplify --smp vs --affinity vs --threads argument logic Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 06/16] rt-numa: Remove unused definitions and numa_initialize() Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 07/16] rt-numa: Add generic cpu_for_thread() helper Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 08/16] rt-numa: Use mask size for iterator limit Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 09/16] rt-numa: Remove max_cpus argument from parse_cpusmask Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 10/16] signaltest: Remove unused max_cpus argument from process_options Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 11/16] cyclictest: " Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 12/16] rt-numa: Use CPU_SETSIZE as upper loop limit Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 13/16] rt-numa: Remove used max_cpus argument from cpu_for_thread() Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 14/16] cyclictest: Remove max cpus used verbose information Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 15/16] cyclictest: Remove unecessary local variable Daniel Wagner
2021-02-10 13:34 ` [PATCH rt-tests v4 16/16] rt-tests: Rename error.h to rt-error.h Daniel Wagner
2021-02-17 3:50 ` John Kacur
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=877dnax9cz.fsf@kokedama.swc.toshiba.co.jp \
--to=punit1.agrawal@toshiba.co.jp \
--cc=dwagner@suse.de \
--cc=jkacur@redhat.com \
--cc=linux-rt-users@vger.kernel.org \
--cc=williams@redhat.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;
as well as URLs for NNTP newsgroup(s).