From: Carsten Emde <C.Emde@osadl.org>
To: Clark Williams <williams@redhat.com>
Cc: RT-users <linux-rt-users@vger.kernel.org>,
Carsten Emde <C.Emde@osadl.org>
Subject: [PATCH 1/2] add-smp-option-to-ptsematest.patch
Date: Sun, 07 Mar 2010 21:48:01 +0100 [thread overview]
Message-ID: <20100307204907.464728076@osadl.org> (raw)
In-Reply-To: 20100307204800.456744470@osadl.org
[-- Attachment #1: add-smp-option-to-ptsematest.patch --]
[-- Type: text/plain, Size: 2824 bytes --]
Add SMP testing option (-S, --smp) to ptsematest, same as in
cyclictest.
Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Index: rt-tests/src/ptsematest/ptsematest.c
===================================================================
--- rt-tests.orig/src/ptsematest/ptsematest.c
+++ rt-tests/src/ptsematest/ptsematest.c
@@ -173,6 +173,8 @@ static void display_help(void)
"-i INTV --interval=INTV base interval of thread in us default=1000\n"
"-l LOOPS --loops=LOOPS number of loops: default=0(endless)\n"
"-p PRIO --prio=PRIO priority\n"
+ "-S --smp SMP testing: options -a -t and same priority\n"
+ " of all threads\n"
"-t --threads one thread per available processor\n"
"-t [NUM] --threads=NUM number of threads:\n"
" without NUM, threads = max_cpus\n"
@@ -189,6 +191,8 @@ static int num_threads = 1;
static int max_cycles;
static int interval = 1000;
static int distance = 500;
+static int smp;
+static int sameprio;
static void process_options (int argc, char *argv[])
{
@@ -205,16 +209,21 @@ static void process_options (int argc, c
{"interval", required_argument, NULL, 'i'},
{"loops", required_argument, NULL, 'l'},
{"priority", required_argument, NULL, 'p'},
+ {"smp", no_argument, NULL, 'S'},
{"threads", optional_argument, NULL, 't'},
{"help", no_argument, NULL, '?'},
{NULL, 0, NULL, 0}
};
- int c = getopt_long (argc, argv, "a::b:d:i:l:p:t::",
+ int c = getopt_long (argc, argv, "a::b:d:i:l:p:St::",
long_options, &option_index);
if (c == -1)
break;
switch (c) {
case 'a':
+ if (smp) {
+ warn("-a ignored due to --smp\n");
+ break;
+ }
if (optarg != NULL) {
affinity = atoi(optarg);
setaffinity = AFFINITY_SPECIFIED;
@@ -230,7 +239,16 @@ static void process_options (int argc, c
case 'i': interval = atoi(optarg); break;
case 'l': max_cycles = atoi(optarg); break;
case 'p': priority = atoi(optarg); break;
+ case 'S':
+ smp = 1;
+ num_threads = max_cpus;
+ setaffinity = AFFINITY_USEALL;
+ break;
case 't':
+ if (smp) {
+ warn("-t ignored due to --smp\n");
+ break;
+ }
if (optarg != NULL)
num_threads = atoi(optarg);
else if (optind<argc && atoi(argv[optind]))
@@ -261,6 +279,9 @@ static void process_options (int argc, c
if (num_threads < 1)
error = 1;
+ if (priority && smp)
+ sameprio = 1;
+
if (error)
display_help ();
}
@@ -327,7 +348,7 @@ int main(int argc, char *argv[])
}
receiver[i].priority = priority;
receiver[i].tracelimit = tracelimit;
- if (priority > 0)
+ if (priority > 1 && !sameprio)
priority--;
receiver[i].delay.tv_sec = interval / USEC_PER_SEC;
receiver[i].delay.tv_nsec = (interval % USEC_PER_SEC) * 1000;
next prev parent reply other threads:[~2010-03-07 21:29 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-07 20:48 [PATCH 0/2] [rt-tests] Add smp option to ptsematest and svsematest Carsten Emde
2010-03-07 20:48 ` Carsten Emde [this message]
2010-03-08 12:45 ` [PATCH 1/2] add-smp-option-to-ptsematest.patch John Kacur
2010-03-07 20:48 ` [PATCH 2/2] add-smp-option-to-svsematest.patch Carsten Emde
2010-03-08 12:45 ` John Kacur
2010-03-09 18:10 ` David Sommerseth
2010-03-09 18:15 ` John Kacur
2010-03-09 21:07 ` Carsten Emde
2010-03-09 20:39 ` Carsten Emde
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=20100307204907.464728076@osadl.org \
--to=c.emde@osadl.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.