rt-tests: cyclictest: Don't allow OPT_SYSTEM with OPT_POSIX_TIMERS

OPT_SYSTEM means use sys_nanosleep and sys_setitimer
if you try to combine it with OPT_POSIX_TIMERS, it breaks.

cyclictest becomes unkillable with ctrl-C and only the first thread is
updated.

Fix this by issuing a warning if the user tries to combine the two
options and then use clock_nanosleep.

Reported-by: Tom Rix <trix@redhat.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
This commit is contained in:
John Kacur 2019-09-16 23:43:32 +02:00
parent 558b1c2760
commit 35de65f132
1 changed files with 7 additions and 0 deletions

View File

@ -1353,6 +1353,13 @@ static void process_options (int argc, char *argv[], int max_cpus)
}
}
if ((use_system == MODE_SYS_OFFSET) && (use_nanosleep == MODE_CYCLIC)) {
warn("The system option requires clock_nanosleep\n");
warn("and is not compatible with posix_timers\n");
warn("Using clock_nanosleep\n");
use_nanosleep = MODE_CLOCK_NANOSLEEP;
}
/* if smp wasn't requested, test for numa automatically */
if (!smp) {
#ifdef NUMA