Commit Graph

716 Commits

Author SHA1 Message Date
John Kacur 4b430a7678 cyclictest: Always print an err message if write of 0 to cpu-dma_latency fails
In set_latency_target() there are some paths that don't print an error
message even when a write of 0 to /dev/cpu_dma_latency fails.

This patch does the following
- always print an error message if the write to /dev/cpu_dma_latency
fails
- Fix the error check with the write call. (a return of 0 or -1 indicate
 problems
- rename ret to err since this function is void and returns no value
- use err_msg_n instead of printf (which also prints to stderr)

Signed-off-by: John Kacur <jkacur@redhat.com>
2014-08-14 16:03:07 +02:00
John Kacur 245b19c5f6 rt_numa.h: Suppress discards 'const' qualifier warning
In rt-tests we try to use const where appropriate for read-only, but
we need to tell the compiler we are intentionally discarding const
when calling library functions that expect char *

Signed-off-by: John Kacur <jkacur@redhat.com>
2014-05-09 14:12:26 +02:00
John Kacur 6b6ebd9f0d lib: Rework err_msg_n to output strerror after message
Outputting the message first followed by the strerror makes
the error messages more readable.

Signed-off-by: John Kacur <jkacur@redhat.com>
2014-05-09 01:21:06 +02:00
Clark Williams 041e643710 cyclictest: fix leftover debbuging comment in argument processing
Left a single line comment in the switch statement for handling
affinity options. Removed it.

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2014-03-30 11:05:49 -05:00
Clark Williams 266a7b90a5 hwlatdetect: convert to run with both python2 and python3
Ran 2to3 on hwlatdetect.py and checked in the result. Tested
on F20 system running 3.12.14-rt23 with both python2 and python3.

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2014-03-29 10:39:26 -05:00
Gary S. Robertson 9bdd51a808 cyclictest: Don't offer --numa option when unavailable
Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2014-03-28 09:23:59 -05:00
Gary S. Robertson 618427fab9 cyclictest: Restore CPU affinity function for non-NUMA builds
Signed-off-by: Gary S. Robertson <gary.robertson@linaro.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2014-03-28 09:22:53 -05:00
Uwe Kleine-König 87f1158245 cyclictest: Fix tracemark output when the latency threshold is hit on ARM
on ARM I'm seeing output like:

	cyclicte-623     0....... 19619418us+: tracing_mark_write: hit latency threshold (2000 > 2097)

That's because of a format mismatch in

	tracemark("hit latency threshold (%d > %d)", diff, tracelimit);

diff is a u64 and tracelimit an int. So on ARM the string is passed in r0,
tracelimit in r1 and diff in r2+r3. vsnprintf used in tracemark only
expects two ints passed and so only uses r1 and r2 yielding the permutation
in the output.

This patch also adds a gcc attribute to tracemark that helps catching
similar bugs. In this case just adding the attribute but not touching
the call site, would result in:

	src/cyclictest/cyclictest.c: In function ‘timerthread’:
	src/cyclictest/cyclictest.c:899:4: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘uint64_t’ [-Wformat]

---
Hello

after some chatting with Clark and John I dropped the c99 stuff and added the
attribute annotation.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Clark Williams <clark.williams@gmail.com>
2014-01-31 14:11:46 -06:00
Ciprian Barbu 3917fdbe56 rt-tests: hackbench: fix for uninitialized start time
Hello,

While playing around with hackbench I discovered that I would sometimes
get an enormous time reported, even if the run time would be less than a
second or so. The problem was that the struct timeval start was not
initialized until after all children have been created. But if the
program receives a signal before this is done, the start time is left
uninitialized.

I propose that in such situations an error message be displayed, like
the following patch does.

Please let me know if this is acceptable.

Regards,
/Ciprian

Signed-off-by: Clark Williams <williams@redhat.com>
2013-12-12 09:13:12 -06:00
Clark Williams 7c21340615 fixed #ifdef that cuts -A option in display_help()
Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-12-11 15:30:29 -06:00
Aaron Fabbri 2f060c9ac6 CPU affinity now takes arbitrary set of cpus.
e.g.
  cyclictest -a4,6-8 -t5

will use 5 threads, assigned round-robin to the set of CPUs {4,6,7,8}.
CPU 4 will get threads 1 and 5, CPU 6 gets thread 2, CPU 7 gets thread 3, and
CPU 8 gets thread 4.

As explained in the updated manpage, libnuma >= v2 is required for these
arbitrary CPU sets.  With libnuma v1, the -a option behaves as before.  As
before, compiling without libnuma is supported. The command usage help is fixed
up at compile time to always show the correct usage of the -a option.

Also note that, since numa_parse_cpustring_all() wasn't available in early
libnuma v2 versions, we use numa_parse_cpustring().  This means you'll have to
use taskset in some cases (isolcpus kernel parameter) to add the desired CPUs to
the set of allowed cores, e.g.:

  taskset -c4-6 cyclictest -a4-6

Tested with out libnuma (numactl), and with versions 1.0.2 and 2.0.9-rc3.

Signed-off-by: Aaron Fabbri <ajfabbri@gmail.com>
(cherry picked from commit 5375ab86e77881d8043e5e309bb8daf5a84cc05f)
Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-12-11 15:26:57 -06:00
John Kacur 1b46049fb5 cyclictest: Align option fixes
These changes make the align option truly optional as claimed.

1. Rename disaligned to offset for readability.
2. Fix the aligned option so that if no optional argument is given,
the offset defaults to 0
3. Fix some white space problems as reported by checkpatch.pl in the kernel
Signed-off-by: John Kacur <jkacur@redhat.com>
2013-11-14 17:40:03 +01:00
Nicholas Mc Guire 77d109dbea cyclictest: add align thread wakeup times option
This patch provides and additional -A/--align flag to cyclictest to align
thread wakeup times of all threads as closly defined as possible.

When running multiple threads in cyclictest (-S or -t # option) the threads
are launched in an unsynchronized manner. Basically the creation order and
time for thread creation determines the start time. For provoking a maximum
congestion situation (e.g. cache evictions) and to improve reproducibility
or run conditions the start time should be defined distances appart. The
well defined distance is implemented as a offset parameter to -A/--align
and will offset each threads start time by the parameter * the sequentially
assigned thread number (par->tnum), together with the -d0 (distance in the
intervals of the individual threads) this alignment option allows to get
the thread wakeup times as closely synchronized as possible.

The method to sync is simply that the thread with par->tnum == 0 is chosen
to set a globally shared timestamp, and all other threads use this timestamp
as their starting time rather than each calling clock_gettime() at startup.
To ensure synchronization of the thread startup the setting of the global
time is guarded by pthread_barriers.

Signed-off-by: Nicholas Mc Guire <der.herr@hofr.at>
Reviewed-by: Andreas Platschek <andreas.platschek@opentech.at>
Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-11-14 17:30:32 +01:00
Nicholas Mc Guire fd37e16b20 minor cleanup in cyclictest
HI !

 just noticed a, presumably, unnecessary tsnorm in cyclictest

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-11-14 17:29:37 +01:00
Clark Williams a3a7ee1a68 cyclictest: modify option handling to use enumerated types
Change return value from option parsing to be enumerated type
rather than a character. Hopefully this will clean up the option
handling a bit and not confuse me when I come back to add yet
another option to cyclictest.

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-11-14 17:26:51 +01:00
Sebastian Andrzej Siewior dd6ae1155d hackbench: init child's struct before using it
Commit ad27df7 ("Reimplement better child tracking and improve error
handling") changed the way of reporting pid/error after creating a
child. It will return an union which is a mix pid_t, pthread_t and a
signed long long for errors.
Now on 32bit x86 both pid_t and pthread_t are four byte in size and are
stored in the first 4 bytes. Now if the most significant bit of the long
long variable happens to be set by chance (because nobody really
initializes the variable here) then error variable will be negative. On
little endian machines the assignment of pid or threadid won't reset the
sign bit and you see this:

| Running in process mode with 10 groups using 40 file descriptors each (== 400 tasks)
| Each sender will pass 100 messages of 100 bytes
| 0 children started.  Expected 40
| sending SIGTERM to all child processes
| signaling 0 worker threads to terminate
| Creating workers (error: Success)

A machine with proper endian handlig (that is big endian) would reset
the sign bit during the assignment of pid and I would not have to make
this patch :)

While here, I make create_worker() since it is not used outside of this
file.

Cc: David Sommerseth <davids@redhat.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-04-11 12:02:24 -05:00
Clark Williams 83adb67c79 cyclictest: allow break threshold without doing any tracing
Add the --notrace/-A option, intended to be used in conjunction
with the -b option. This will cause cyclictest to exit when a
threshold is hit, but will not perform any tracing operations,
allowing more sophisticated tracing to be done externally.

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-03-13 19:36:29 -05:00
Clark Williams 1906cc53f5 cyclictest: add named fifo for statistics
This code adds the -F/--fifo option to cyclictest. Using the
--fifo <path> option will cause cyclictest to create a named
fifo at <path> and will dump the current run statistics to that
fifo when it is opened an read.

Signed-off-by: Clark Williams <clark.williams@gmail.com>
2013-03-13 16:53:53 -05:00
Jim Somerville 1b92da3083 cyclictest: finish removal of 1 second first loops
Huge latencies are observed (close to 1 second) when certain
options are used in cyclictest.

The problem was 1st introduced at commit da4956cbca
("use interval on first loop instead of 1 second").  It removed
the 1 second first timing loop out of the main path in cyclictest
but left it in two other paths, namely the ones triggered by
these two options:

    -r   --relative    use relative timer instead of absolute
    -s   --system      use sys_nanosleep and sys_setitimer

which in turn causes the huge latencies of close to 1 second to
be reported by cyclictest with certain uses of those two options.

Here we extend the original commit to remove the 1 second
hardcoded timer values from the RELTIME and ITIMER options, by
simply using the actual interval provided instead.

Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
Cc: Clark Williams <williams@redhat.com>
Cc: John Kacur <jkacur@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2013-02-15 15:08:35 +01:00
Frank Rowand 65c27472cc cyclictest: white space cleanup
Clean up cyclictest formatting:
  Change leading spaces to tabs.
  Align function parameters.
  Place type of function on same line as function name.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2013-01-30 17:56:05 +01:00
John Kacur 93e525fac1 Merge branch 'clrkwllms/work' into rt-tests-0.84-devel
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-11-09 16:25:18 +01:00
Frank Rowand 9854a61da9 V3: cyclictest: report large measured clock latency
V3: Use src/lib/error.c functions instead of fprintf.
    Fix printf format warnings for 32 bit vs 64 bit systems with cast.
    One issue with using warn() and info() instead of fprintf is that
    the compiler no longer warns about format mismatches.
    Fix bad continuation line white space prefix.
    Remove unused variable zero_diff.

cyclictest: ARM panda clock resolution will be ~30 usec unless
CONFIG_OMAP_32K_TIMER=n, resulting in a poor latency report.

This patch does _not_ fix the problem, it merely provides the
instrumentation to make it visible.  The value of measured
resolution is useful information for any system.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
- Fixed up minor white space problem.
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-10-17 00:25:26 +02:00
Frank Rowand fcdef80f5f V3: cyclictest: clean up getopt_long() parameters
V3: unchanged from V2

cyclictest getopt_long() parameter clean up.
Clean up before following patch which will add a new option.

  Some elements of long_options were not in alphabetical order.

  Some elements of optstring were not in alphabetical order.

  '-e', '--latency' was missing help text

  short form of --duration ('D') was missing from optstring

  Change a few instances of leading spaces to tabs.

  Add white space to long_options to improve readability.

  Some cases of the switch processing the result of
    getopt_long() were not in alphabetical order.

  Did _not_ clean up option value parsing and processing.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Signed-off-by: John Kacur <jkacur@redhat.com>

Conflicts:
	src/cyclictest/cyclictest.c
2012-10-17 00:24:59 +02:00
Uwe Kleine-König 954e01fe14 rt-tests: have printf use %s format for strings
Discovered while compiling with "hardening flags"

For Debian 7.0 (aka wheezy) packages it's recommended to use several
hardening flags, the default on amd64 being:

	CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security
	CPPFLAGS=-D_FORTIFY_SOURCE=2
	LDFLAGS=-Wl,-z,relro

This patch doesn't fix all warnings but at least makes all programs compile
again by not using char *variables as printf format strings.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-10-17 00:21:52 +02:00
Bhavesh Davda 992b905d42 cyclictest: histogram overflow instance tracking
Add feature to cyclictest histogram mode to track cycle counts every time a
sample overflows the histogram limit. This should help identify if there is a
timing pattern to jitters in cyclictest runs.

Example output (with -h 10):
 ...
 Histogram Overflows: 00001 00007 00000 00009 00004 00007 00000 00001
 Histogram Overflow at cycle number:
 Thread 0: 09964
 Thread 1: 00000 00004 00006 00008 00010 09962 11594
 Thread 2:
 Thread 3: 01169 04698 06782 09033 10299 11561 21517 28734 29532
 Thread 4: 11574 11580 11583 11586
 Thread 5: 00020 09448 13954 14954 18954 20587 24973
 Thread 6:
 Thread 7: 18950
 ...

Signed-off-by: Bhavesh Davda <bhavesh@vmware.com>
Reviewed-by: Frank Rowand <frank.rowand@am.sony.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-10-17 00:19:23 +02:00
Bhavesh Davda 18cd9775e5 cyclictest: whitespace cleanup
Cosmetic whitespace cleanup

Signed-off-by: Bhavesh Davda <bhavesh@vmware.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-10-17 00:11:54 +02:00
Clark Williams 7667ff6946 add setup and call of tracemark function for breaktrace
Add back call to the tracemark function but only if we're
using the breaktrace option and only when we actually hit
the breaktrace threshold.

Signed-off-by: Clark Williams <williams@redhat.com>
2012-08-30 15:54:02 -05:00
John Kacur 81c42e0162 rt-tests / cyclictest: Make cyclictest fail if it cannot run with requested priority.
Currently if a non-root user requests a priority higher than the soft limit in
/etc/security/limits.conf
the call to sched_setscheduler will silently fail and the user will be running
with priority of 0. Cyclictest will not complain, and display the
requested priority resulting in seemingly poor results.

The following patch fixes this by doing two things.

1. If the requested priority is higher than the soft limit but lower than the
hard limit, it will raise the soft limit to the requested priority.

2. If the requested priority is higher than the hard limit, it will fail with a
warning.

The patch should not affect privileged users.

Reported-by: Nicholas Mc Guire <der.herr@hofr.at>
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-09 09:22:07 -05:00
Frank Rowand 683a326a12 rt-tests: printf format compile warning
V2: use type casting instead of ugly constant in format string

Fix printf format string to fix compile warning for ARM 32 bit target.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-03 16:17:57 -05:00
Frank Rowand e43bee0158 rt-tests: incorrect first latency value for --verbose option
When the --verbose option is selected, the first value for each thread is
incorrectly reported as zero.

This is because when collecting the first value, the index into stat->values is
incremented from zero to one before storing the value.  But when printing the
values, the first value printed is stat->values[0], which has been initialized
to zero.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-03 16:17:38 -05:00
Frank Rowand 3c14034e3d rt-tests: cyclictest warn of interaction between '-a', '--smp', and '--numa'
The '-a' option is always ignored if --smp or --numa is specified.  Fix the
warning message to not depend on --smp or --numa occuring first.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Tested-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-03 16:17:38 -05:00
Frank Rowand b3593fbe8e rt-tests: cyclictest avoid unneeded warning
Avoid annoying warning message when tracing is not requested and the debug
file system is not available.

The same test already protects against calling event_enable_all().

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-03 16:17:38 -05:00
Frank Rowand 0629f60b79 rt-tests: cyclictest segfault with '-a'
This fixes a segfault on ARM when the '-a' option is used.

man sched_setaffinity says to use pthread_setaffinity_np() when using the
POSIX threads API.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Tested-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2012-05-03 16:17:38 -05:00
Clark Williams f2b344c958 change cyclictest measurement thread to check returns and exit on error
Start of an ongoing process to have error strategy where return is
checked and if error, exit with appropriate status.

Signed-off-by: Clark Williams <williams@redhat.com>
2012-03-26 13:36:55 -05:00
Clark Williams c9870e6cba report number of samples written in hwlatdetect
Signed-off-by: Clark Williams <williams@redhat.com>
2012-03-26 13:25:51 -05:00
Clark Williams 95f2842745 Revert "cyclictest problem/bug as non-root"
This reverts commit 64e635bc51.
moving to the check-return-and-exit strategy

Signed-off-by: Clark Williams <williams@redhat.com>
2012-03-23 09:34:30 -05:00
Clark Williams 192a3adcd4 Merge remote-tracking branch 'jkacur/rt-tests-0.83-devel' into work 2012-03-23 09:18:47 -05:00
John Kacur 6f2665250e Move info, warn, and fatal functions to error.[ch]
Move warning, error and fatal function to the error files.
This is a first step in cleaning up rt-tests.

Signed-off-by: John Kacur <jkacur@redhat.com>
2012-03-23 02:15:19 +01:00
John Kacur 9eef81de2f pi_stress: Check the status of sched_getaffinity
Check the status of sched_getaffinity and exit upon error.

CPU_ISSET only checks whether a cpu is in a mask, and not whether the
mask is valid. Checking the status ensures we aren't working with garbage
values.

This also removes the warning from gcc about the status variable being unused
as reported by Darren Hart.

Reported-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-03-23 02:15:19 +01:00
Steven Rostedt b52b383192 rt-tests: Update rt-migrate-test to use ftrace infrastructure
The rt-migrate-test in the rt-tests is still using the old logdev
interface that requires the logdev patch. Ftrace has been introduced
into mainline Linux since 2.6.27 and has many more features than logdev.
The rt-migrate-test should interact with ftrace instead of logdev.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2012-03-23 02:15:19 +01:00
Clark Williams 2819d683a3 Merge branch 'master' into work 2012-02-13 12:37:49 -06:00
Nicholas Mc Guire 64e635bc51 cyclictest problem/bug as non-root
HI !

 minor bug in cyclictest but potential causing confusion on cyclictest
 resuults when running as non-root user.

Setup:
 if one sets the rtprio in /etc/security/limits.conf to something below
 prio max - like:

 @hofrat          hard    rtprio          10
 @hofrat          soft    rtprio          10

 but then starts cylictest with -p 80 cyclictest will not fuss and also
 display priority 80 (as it uses par->prio in print_stat) but effectively
 runs with prio 0 as the return value of sched_setscheduler is not being
 checked in timerthread), resulting in semingly bad scheduling jitter values.

 So maybe cyclictest should take the effective maximum schduling priority
 of the user and not the scheduling policy maximum. Not sur if the check
 in timerthread is actually really needed - but it should not hurt ither.
 patch below (against current git) at "works for me" quality.

thx!
hofrat
2012-02-13 09:57:14 -06:00
Clark Williams 15c6d81986 [cyclictest] added priority spreading option --priospread
Add option to spread priorities across measurement threads in
decending order.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-11-10 22:50:37 -06:00
Clark Williams 6ea14c157e fix print that causes histogram processing error in cyclictest
Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-21 09:37:15 -05:00
Clark Williams 9f7bdd9961 cleaned up previous hack for using /dev/cpu_dma_latency
Changed function name to set_latency_target() and added a
command line argument to allow passing in values other than
the default of zero microseconds.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-20 15:34:20 -05:00
Clark Williams 1310f57cfe use latency trick to hold system in idle=poll for duration of cyclictest run
Use the /dev/cpu_dma_latency power management interface to hold the
system in idle=poll state while cyclictest is running. Look in the
kernel documenation: Documentation/power/pm_qos_interface.txt for
more information.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-20 13:41:02 -05:00
Clark Williams 6c0c79b515 hackbench mods to work better under stress
added a signal_worker routine to send individual SIGTERM's to
worker threads (since sending via pid=0 seems to have issues).

Also added the -F/--fifo option to change the main thread to a
SCHED_FIFO realtime thread after creating the workers. This will
allow the mangagement thread to run when there are tons of workers.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-15 09:35:41 -05:00
Clark Williams 7595c237b4 modify signal handling logic and clarify mode
Modify signal handling logic so main can't receive sigterm when
reaping children

Also added THREAD_MODE and PROCESS_MODE defines to use rather than
bare constants 0 and 1.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-14 15:49:39 -05:00
Clark Williams f82a965a62 remove tracemark functions from cyclictest
removed trace marking functions because they cause too much
contention on multiprocessor systems.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-09 16:51:29 -05:00
Clark Williams 3209d3c634 add stat(2) shortcuts to mount_debugfs()
Before trying to parse /proc/mount, check for existance of directories
/sys/kernel/debug/tracing and /debug/tracing using stat(2).

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-07 16:25:02 -05:00
Clark Williams aca74c66e5 modify /proc/sys/kernel/ftrace_enabled handling
Only turn on ftrace_enabled if we're doing tracing that requires
the function tracer. Don't turn it on for event-based tracing. Also,
turn it off a the end of a run.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-07 16:23:31 -05:00
Clark Williams ff044e7142 handle stupid systemd automount of debugfs
Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-07 15:32:54 -05:00
Steven Rostedt e19cbadffc allow tracemark() to take variable args
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 22:44:38 -04:00
Steven Rostedt da4956cbca use interval on first loop instead of 1 second
Use the interval given for the first loop instead of
one second wait.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 21:29:31 -04:00
Steven Rostedt ae357be2e8 only check file descriptor in tracemark() function
If the tracemark_fd is >= 0, then we know we can write to the
trace_marker file. We only need to check that and not version of
the kernel or anything else at every instance of calling tracemark().

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 21:26:59 -04:00
Steven Rostedt 8c1e851bfe do not touch tracing_thresh
The -b argument is for stopping the cyclictest when it misses a wakup
by that # microseconds. Setting the tracing_thresh causes the latency tracer
to ignore any latency under tracing_thresh. These two meanings are completely
agnostic to each other, and should not be the same. We want the max latency,
that should be good enough. Not only those that are bigger than our missed
deadline. That misses most of our traces that we want.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 21:21:47 -04:00
Steven Rostedt 1f4e25c037 Have -I and -P together also be -B
-B is used to enable preemptirqsoff, but it also makes sense that one
could use both -I and -P together for the same thing.

Also rename the enum IRQPREEMPTOFF TO PREEMPTIRQSOFF to match the
tracer it represents and avoid confusion.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 18:35:42 -04:00
Steven Rostedt bd2a8da00b allow events for all tracers
Events are available for all tracers, including function and latency
tracers. Do not treat them as a tracer. The -E option is agnostic to
the tracer options, and if it is set, then events will be enabled for
any tracer that is also set. If it is set by itself, then events will
be enabled with the nop tracer.

Also, the nop tracer is set before setting any of the tracers. This
makes the nop tracer the default as well as clears out the trace before
running the test.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
2011-09-01 18:08:15 -04:00
Clark Williams ee95ac2687 commit WIP for rostedt
Signed-off-by: Clark Williams <williams@redhat.com>
2011-09-01 09:41:37 -05:00
Uwe Kleine-König 39451cc083 fix possible buffer overflow in string handling
strncat writes up to n+1 chars when n is passed as 3rd argument.  So when
doing
	strncpy(filename, fileprefix, sizeof(filename));
	strncat(filename, name, sizeof(filename) - strlen(fileprefix));

with strlen(fileprefix) + strlen(name) >= sizeof(filename) a buffer
overflow occurs.  Addionally there is no check if filename is big enough.

So convert to memcpy and handle filename not being big enough.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2011-08-18 09:05:25 -05:00
Clark Williams 21a11149ac added files to git repo
Signed-off-by: Clark Williams <williams@redhat.com>
2011-08-18 09:02:24 -05:00
Clark Williams 10f6a855f1 update cyclictest to handle 3.0-rt as well is update ftrace
reworked the kernel versioning logic to handle the 3.0 kernel
and update the ftrace logic to deal with changes to the
debugfs tracing directory.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-08-12 13:44:18 -05:00
John Kacur f26dbd8adc Minor Fix-ups
1. Make the function header style consistent with the rest of cyclictest.
2. Spelling clean-ups.

Signed-off-by: John Kacur <jkacur@redhat.com>
2011-05-13 12:52:48 +02:00
Clark Williams 809f870eb8 hackbench: add setjmp/longjmp and rework signal handling logic
Use setjmp/longjump to get the parent process back out of processing
loop and into forced kill mode for the child processes/threads.
Added function reset_worker_signals() so that workers (sender and
receiver) don't try to reap as well.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-05-05 13:44:09 -05:00
Geunsik Lim 02da29f450 cyclictest: Fixed incorrect wakeup reset interface
When we try to run ftrace with cyclictest command of rt-test,
We view the error according to different kernel version.
We need to modify this hard coded interface.

* Directory name of each kernel version
2.6.24.7-rt23     /sys/kernel/debug/tracing/latency_hist/wakeup_latency/reset
2.6.31-rc9-rt9.1  /sys/kernel/debug/tracing/latency_hist/wakeup/reset
2.6.33.7.2-rt30   /sys/kernel/debug/tracing/latency_hist/wakeup/reset

* parsing verification: ./linux-2.6/scripts/checkpatch.pl  --> OK

Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Reviewed-by: John Kacur <jkacur@redhat.com>
Reviewed-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2011-05-04 15:42:00 -05:00
Carsten Emde f833b0949f add histogram summary column option (-H) to cyclictest
To compare histograms of several SMP machines or to gain an
overview when cyclictest is running more than a single thread,
an overall histogram is required that contains a summary of
the individual thread latencies.

This patch adds this functionality and introduces the new
option -H/--histofall for this purpose.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2011-05-04 15:33:16 -05:00
Daniel Sangorrin 4681c81deb fix sched_setaffinity type error when building with UCLIBC
Change type of faux sched_setaffinity to match headers.
Also add additional report info when dumping histogram.

Signed-off-by: Clark Williams <williams@redhat.com>
2011-05-04 15:04:41 -05:00
Uwe Kleine-König 94f60c4138 modernize backfire's Makefile
- don't rely on non-standard envvar PWD, use make's CURDIR instead
- allow overwriting KERNELDIR
- less repetition by conflating targets
- explicitly differentiate between kbuild and ordinary make part

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-07-01 06:34:05 +02:00
Clark Williams e4c7a0753c convert convert 'unsigned long long' and 'long long' to uint64_t and int64_t
Cleanup spurred by need to make the 'diff' variable in timerthread() to
be unsigned and 64-bits (rather than a signed 32-bit).

Signed-off-by: Clark Williams <williams@redhat.com>
2010-06-25 16:10:40 -05:00
Clark Williams a3194e71ef added --numa option to cyclictest man page
Documented the --numa mode option to cyclictest in the man page.
Also updated the command summary to include the short options for
the --smp and --numa modes (-S and -U).

Signed-off-by: Clark Williams <williams@redhat.com>
2010-06-14 14:50:02 -05:00
Michal Schmidt 1b3f408a33 cyclictest: fix accumulating overruns in periodic timer mode
When using a POSIX interval timer and an overrun occurs, a signal is always
lost. From then on cyclictest would report all measurements as increased by
N*period (where N is the number of overruns).

cyclictest can detect the overruns and adjust the expected time of the next
tick accordingly.

Reported-by: Marti Raudsepp <marti@juffo.org>
Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2010-05-18 12:28:39 -05:00
Clark Williams d6c4ab8698 default cyclictest to SCHED_OTHER; clean up help message
After much thought, I decided to keep cyclictest's default scheduling
policy as SCHED_OTHER. My rationale is that if you don't specify a
priority on the command line you get the priorityless policy. If you
do specify a priority but no specific RT policy, we'll default to
SCHED_FIFO. So to get SCHED_RR you have to specify priorty and policy
name, for example:

	# cyclictest --priority=90 --policy=rr

Yes, I realize that the vast majority of users will run it with a
realtime priority, but I just don't like picking a priority if it
wasn't specified. If you want a realtime policy, specify a priority.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-04-09 13:06:33 -05:00
Clark Williams 663bd628f5 fix bus error when in numa mode with more than 16 cores
The call numa_node_to_cpus() in rt_numa_numa_node_of_cpu()
was failing because the cpumask buffer size was only 16 bytes
and it seems to require 32.  Change the declaration to be 256
just for paranoia's sake.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-04-01 15:48:34 -05:00
Clark Williams f37d47179d replace nanosleep with clock_nanosleep in pmqtest
Since it's doing relative time sleeps probably not an issue, but
move to clock_nanosleep(CLOCK_MONOTONIC, 0,...) to be clear.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-04-01 14:11:33 -05:00
Carsten Emde 5b346bd9e8 Add pmqtest program
This patch adds the program pmqtest to the rt-tests suite.
The test mechanism is the same as in ptsematest, svsematest
and friends, but it uses message queues to synchronize the
test threads. To test the - now hopefully fixed - kernel
problem that occurred when a timeout was specified, the
-T option is available.

On an 8-way machine, the test result may look like:

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2010-04-01 13:39:43 -05:00
Clark Williams c9c0e4e3ad fixed typo in cyclictest.8 man page
Signed-off-by: Clark Williams <williams@redhat.com>
2010-04-01 13:35:42 -05:00
Clark Williams ffebccf9f9 handle ftrace difference between 2.6.24 and 2.6.33
Somewhere between 2.6.24 and 2.6.33, the tracing_on field was
added to the debugfs tracing dir. If it exists use it to turn
tracing on and off; if not use tracing_enabled.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-03-19 14:39:44 -05:00
Clark Williams 95c65d4c00 Merge branch 'work' into temp
Conflicts:
	.gitignore
	Makefile
2010-03-16 15:54:01 -05:00
Clark Williams d61850a9f0 modifications to ftrace logic for correct operation
Change enable/disable file to be tracing/tracing_on; enable the
options/latency-trace format for function tracing; add tracetype
CUSTOM for use with the -T/--tracer option.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-03-16 15:36:39 -05:00
Clark Williams 5860be7f4d cyclictest - fixed missing ':' in option processing string for -T option
the -T option (set tracer) option was missing a ':' for to indicate
that it required an argument.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-03-10 10:45:42 -06:00
Carsten Emde afb31fb21d add-smp-option-to-svsematest.patch
Add SMP testing option (-S, --smp) to svsematest, same as in
cyclictest.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Acked-by: John Kacur <jkacur@redhat.com>
2010-03-08 13:40:33 +01:00
Carsten Emde cd34b8b172 add-smp-option-to-ptsematest.patch
Add SMP testing option (-S, --smp) to ptsematest, same as in
cyclictest.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Acked-by: John Kacur <jkacur@redhat.com>
2010-03-08 13:40:10 +01:00
Carsten Emde f02c5d5ad0 remove-incorrect-options-from-smp-help-message-in-cyclictest.patch
The help message of cyclictest's -S option says that it equals -a -t -n -m -d0.
In reality, it only equals -a -t -n.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Acked-by: John Kacur <jkacur@redhat.com>
2010-03-08 13:38:15 +01:00
Carsten Emde 7dd5ce7709 fix-policy-display-for-cyclictest.patch
If the policy is forced to SCHED_OTHER, since the priority no longer
fits into the SCHED_FIFO or SCHED_RR range, the policy display of
cyclictest is somewhat incorrect.

Display all policies.

Also make the variable policystr static; the condition
"if (!policystr)" is useless, otherwise.

In addition, place the priority logic before decrementing the priority;
a priority of 1 is incorrectly made SCHED_OTHER, otherwise.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Acked-by: John Kacur <jkacur@redhat.com>
2010-03-08 13:36:11 +01:00
John Kacur 1263ebde63 cyclictest: Make the default scheduling policy SCHED_FIFO
The default scheduling policy if unspecified should be SCHED_FIFO.

Before the change for example.
 sudo ./cyclictest
 policy: other: loadavg: 0.05 0.04 0.05 1/331 22367

 T: 0 (22367) P: 0 I:1000 C:   1321 Min:     14 Act:   89 Avg:   77 Max:     942

After the change
 sudo ./cyclictest
 defaulting realtime priority to 2
 policy: fifo: loadavg: 0.03 0.04 0.05 2/331 22387

 T: 0 (22387) P: 2 I:1000 C:    713 Min:     17 Act:   41 Avg:   81 Max:     161

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-03-08 02:02:13 +01:00
John Kacur ce8c590232 cyclictest: Fix spelling mistake in the man page.
- In the -mlockall section, change "an" to "and"

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-03-08 01:45:35 +01:00
John Kacur e12de2f062 cyclictest: Use symbolic names for scheduling policy
- Use symbolic names for scheduling policies, that is, don't assume
	SCHED_RR is 2, use SCHED_RR instead, and so on.

- Fix the logic in handlepolicy(char *polname)
	- remove the test with the unreachable line,
	- make the default SCHED_FIFO if we don't recognize the
	requested policy.

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-03-08 01:38:49 +01:00
John Kacur 6fb5b9cd90 Revert "simplify equal priority logic for cyclictest"
This reverts commit 582be2a52c.

Unfortunately this commit introduces a bug because the priority is not
retested, and this can result in reported priorities below 0.
For example,

sudo ./cyclictest -t3 -p1
policy: fifo: loadavg: 0.09 0.06 0.05 1/331 21732

T: 0 (21730) P: 1 I:1000 C:    593 Min:     34 Act:  155 Avg:  100 Max:     672
T: 1 (21731) P: 0 I:1500 C:    395 Min:     15 Act:   43 Avg:   72 Max:     853
T: 2 (21732) P:-1 I:2000 C:    297 Min:     21 Act:   57 Avg:   79 Max:     330

Notice that the last priority is reported as -1.

After reverting this commit, we get the correct expected behaviour.

sudo ./cyclictest -t3 -p1
policy: fifo: loadavg: 0.07 0.05 0.04 2/330 21754

T: 0 (21752) P: 1 I:1000 C:  11600 Min:     13 Act: 7072 Avg: 3593 Max:    7841
T: 1 (21753) P: 0 I:1500 C:   7737 Min:     12 Act: 1572 Avg:  516 Max:    2381
T: 2 (21754) P: 0 I:2000 C:   5804 Min:     12 Act:   53 Avg:   59 Max:     548

I think it can be argued that the original code is also clearer, although
that is somewhat subjective. With the original code I don't need to track
down exactly what "sameprio" means, and it is clear what is being tested.

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-03-08 01:07:44 +01:00
Uwe Kleine-König 6214410e57 rename pip to pip_stress as pip is too general
The command name is already taken by a perl script working with CPAN
and a Python package installer.

While at it remove trailing whitespace from three lines in
src/pi_tests/pip_stress.c.

Closes: http://bugs.debian.org/572104
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: John Kacur <jkacur@redhat.com>
2010-03-01 20:43:25 +01:00
Uwe Kleine-König 84367c8e07 trivial: s/specifed/specified/
Acked-by: John Kacur <jkacur@redhat.com>
2010-03-01 20:42:26 +01:00
Clark Williams 6fc24e1719 Merge remote branch 'uwe/for-clark' into work 2010-02-24 15:07:50 -06:00
David Sommerseth bd43983e36 Updated hackbench man page with some examples and some extra details re. fds 2010-02-24 17:29:46 +01:00
David Sommerseth 94d8566d6c hackbench - Taken out the runit.pl script
We don't need to ship that, and Craig Thomas wrote only that code as far
as we know, so taking him out of man page as well.
2010-02-24 16:26:13 +01:00
David Sommerseth 1bb501caeb hackbench, man page: Added another contributor and a brief history of hackbench 2010-02-24 16:04:47 +01:00
David Sommerseth fb278a79b5 man page, hackbench - Corrected wrong spelling 2010-02-24 14:42:24 +01:00
David Sommerseth 0ece6f784b Updated man page for hackbench 2010-02-24 13:50:46 +01:00
David Sommerseth eba5ee5e69 Merge remote branch 'origin/work' 2010-02-23 17:40:26 +01:00
David Sommerseth 4e37a2b689 Added signal handling in hackbench
When receiving SIGINT or SIGTERM, it will now reap all worker
threads/processes and properly stop them.
2010-02-23 17:30:43 +01:00
David Sommerseth f273b4bd85 hackbench: Implemented getopt
Improved argument/option handling by using getopt_long().  Made more of the
parameters tunable as well.  Hackbench now accepts the following arguments:
       -P | --pipe          Use pipe
       -s | --datasize      Number of bytes to pass from sender to receiver
                               (default 100 bytes)
       -l | --loops         Number of messages each sender will send
                               (default 100 rounds)
       -g | --groups        Number of groups with sender/receivers
                               (default 10 groups)
       -f | --fds           Number of file descriptors each group will use
                               (default 20*2)
       -T | --threads       Run using pthreads
       -P | --process           Run using fork()

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:43 +01:00
David Sommerseth faa1f165c4 (code cleanup) Tabified lines which was not tabbed
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:42 +01:00
David Sommerseth 5fd7c301eb Simplified and improved error logging, clarified some messages
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:42 +01:00
David Sommerseth ba166b6415 Fixed a memory leak, receiver contexts not getting freed upon exit
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:42 +01:00
David Sommerseth ad27df7b94 Reimplement better child tracking and improve error handling
This does much what earlier commits did before hackbench got updated
to the latest version in the previous commit.

Consider the following commits being "forward ported", feature wise:
4c39eff213
0a72fcaade
fbd80c495b
bd588c92b8

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:42 +01:00
David Sommerseth 310dd41438 Updated hackbench to lastest version available
Downloaded from http://people.redhat.com/mingo/cfs-scheduler/tools/hackbench.c
February 19 2010.

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 17:30:42 +01:00
Clark Williams 2359346741 added hackbench.8 manpage framework
Signed-off-by: Clark Williams <williams@redhat.com>
2010-02-23 10:27:08 -06:00
David Sommerseth b0aad1d13c hackbench: Implemented getopt
Improved argument/option handling by using getopt_long().  Made more of the
parameters tunable as well.  Hackbench now accepts the following arguments:
       -P | --pipe          Use pipe
       -s | --datasize      Number of bytes to pass from sender to receiver
                               (default 100 bytes)
       -l | --loops         Number of messages each sender will send
                               (default 100 rounds)
       -g | --groups        Number of groups with sender/receivers
                               (default 10 groups)
       -f | --fds           Number of file descriptors each group will use
                               (default 20*2)
       -T | --threads       Run using pthreads
       -P | --process           Run using fork()

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 11:34:14 +01:00
David Sommerseth 92c53f9db3 (code cleanup) Tabified lines which was not tabbed
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 10:49:29 +01:00
David Sommerseth 51a6e57359 Simplified and improved error logging, clarified some messages
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 10:47:13 +01:00
David Sommerseth d5ae77c4af Fixed a memory leak, receiver contexts not getting freed upon exit
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 10:39:59 +01:00
David Sommerseth 2ff7b647b2 Reimplement better child tracking and improve error handling
This does much what earlier commits did before hackbench got updated
to the latest version in the previous commit.

Consider the following commits being "forward ported", feature wise:
4c39eff213
0a72fcaade
fbd80c495b
bd588c92b8

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 10:38:01 +01:00
David Sommerseth a0e5fa847d Updated hackbench to lastest version available
Downloaded from http://people.redhat.com/mingo/cfs-scheduler/tools/hackbench.c
February 19 2010.

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-23 10:23:47 +01:00
Uwe Kleine-König bd4cd378a2 trivial: s/specifed/specified/
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2010-02-22 21:56:49 +01:00
David Sommerseth bd588c92b8 Fixed a few compiler and valgrind warnings
Valgrind complained about usage of non-initialised data.  The compiler
complained about the out_fds argument being unsigned int when calling
sender().

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-18 15:51:10 +01:00
David Sommerseth fbd80c495b Re-implement WIFEXITED() check on all children
Instead of just exiting immediately the original version did, we now
count how many children who failed to exit properly and report it.

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-18 15:45:27 +01:00
David Sommerseth 0a72fcaade Fix waitpid() implementation
In commit 4c39eff213 a new approach for tracking
each child was implemented.  But this implementation ignored the fact that each
group() call creates 2*num_fds children.

This patch refactors the previous attempt and will now track absolutely all
children.  If fork() fails when called in group(), all spawned children will
now also be killed explicitly.

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-18 15:36:01 +01:00
David Sommerseth 4c39eff213 hackbench: Wait for each child explicitly by using waitpid()
Quite often it's experienced in rteval that hackbench leaves some children
as zombies during closure.  This is an attempt to keep an overview of the
status of each child separately.  It's solved by having an array with all
sender and reciever children's pids and calling waitpid() on each of these
children pairs.

Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-17 19:09:46 +01:00
David Sommerseth f79ca322df Imported hackbench from rteval-1.18 (rteval-loads-1.0.1)
Signed-off-by: David Sommerseth <davids@redhat.com>
2010-02-17 19:08:44 +01:00
Clark Williams 527835d963 Fix incorrect usage of sched_setscheduler() in check_privs()
Fix code in check_privs() that passes NULL as parameter
to sched_setscheduler().

Reported-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Clark Williams <williams@redhat.com>
2010-02-15 12:58:32 -06:00
Clark Williams 1e781f5634 [hwlatdetect] workaround for borken smi_detector.ko module
Add a workaround to hwlatdetect to deal with a broken block of
code in drivers/misc/smi_detector.ko, where whenever you enable
the module (write a 1 to debugfs/smi_detector/enable) the stats
initialization routine resets the threshold from whatever it was
set to to 1us. This workaround checks the threshold after enabling
the module and resets it to what we want.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-02-08 15:31:57 -06:00
John Kacur db54b6152a rt-tests: Fix some style problems, such as spaces instead of tabs.
Fix some style problems, such as spaces instead of tabs, trailing spaces,
spaces required before }

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-01-27 20:17:15 +01:00
John Kacur 522560b82f rt-tests: Remove the ret variable, the end label and the goto.
Remove the ret variable, the end lable and the goto. We already have
inconsistent exit points for the function, and the end lable wasn't strictly
for errors. Directly returning simplifies and shortens the code.

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-01-27 19:47:03 +01:00
John Kacur 51dfab754a rt-tests: Separate the #ifdef LIBNUMA_API_VERSION functions.
Separate the #ifdef LIBNUMA_API_VERSION of function rt_numa_numa_node_of_cpu,
it is slightly cleaner this way.

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-01-27 19:42:50 +01:00
John Kacur 29c4f544fb rt-tests: Add header including copyright notice to rt_numa.h
Add a header which includes a copyright notice to rt_numa.h for cyclictest.

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-01-27 19:38:15 +01:00
Clark Williams fedb3c7bc5 added libnuma v1 API support
Modified NUMA code to handle version 1 API (for RHEL5)

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 22:31:58 -06:00
Clark Williams 20ece7f8a1 fixed numa compile and added numa option to usage printout
Added NUMA=1 to specfile build command line to enable NUMA
options. Added description of --numa option to usage output.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:24:54 -06:00
Uwe Kleine-König 1bb1e65265 Add copyright statements to files in src/lib
Signed-off-by: Clark Williams <williams@redhat.com>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: John Kacur <jkacur@redhat.com>
Cc: Carsten Emde <carsten.emde@osadl.org>
2010-01-26 12:24:44 -06:00
Clark Williams 582be2a52c simplify equal priority logic for cyclictest
use a variable to indicate that priorities should be equal
on all cpus when smp, numa or histogram options are specified.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:14:21 -06:00
John Kacur 761911503c rt-tests: Make cyclic test compilable for non-numa systems.
Runtime tests are not sufficient, cyclic tests needs to be compilable
on non-numa systems.

This separates numa functionality into rt_numa.h

Signed-off-by: John Kacur <jkacur@redhat.com>
2010-01-26 12:14:02 -06:00
Clark Williams db0988a070 setup equal priorities on all cpus in numa mode in cyclictest
Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:13:33 -06:00
Clark Williams 6c66beba0a fixed missing reference to outpar label
added back reference to outpar label in allocation failure for
statistics array (got dropped in previous two commits).

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:13:13 -06:00
Clark Williams 9345a49ac8 added threadalloc/threadfree for thread memmory manipulation
refactored numa allocation logic into threadalloc() and added
threadfree() for releasing it.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:13:00 -06:00
Clark Williams cb5d2b4ca0 added numa logic to cyclictest
Modify cyclictest to have a --numa option which enables calls into
libnuma functions for binding threads to memory nodes.

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-26 12:12:37 -06:00
Clark Williams a548d8fc80 fixed missing short option 'S' in getopt_long() call
Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-13 10:57:28 -06:00
Clark Williams 77abded073 added SMP testing option and make use of new diag functions
Added the --smp (-S) option which is short hand for setting
the options -t, -a, and -n and for not changing any specified
priority across processors.

Also changed many printfs to use either warn() or fatal()

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-13 10:45:00 -06:00
Clark Williams 99d07bebf3 added warn() and fatal() routines
Added routines to print warning and fatal messages with appropriate
text prefixes (e.g. WARNING: and FATAL: )

Signed-off-by: Clark Williams <williams@redhat.com>
2010-01-13 10:42:35 -06:00
Michael Olbrich f1619c5c19 cyclictest: add command line option for unbuffered output
When reading the output from cyclictest with another program, the data is
buffered by default. This prevents nice 'live' display.
This patch adds an command line option to force the output to always be
unbuffered.

Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-29 12:23:27 -06:00
John Kacur 20b8b253f3 rt-tests: pip - Use check_privs() from the rt-utils library.
Use check_privs() from the rt-utils library to make sure that the user is
running with real-time privileges for the pip test program.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-23 16:41:12 +01:00
John Kacur 3dec3c9e04 rt-tests: Move header files from src/lib to src/include
Move header files from src/lib to src/include and adjust the Makefile to
reflect this change.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-23 16:26:49 +01:00
John Kacur 3b0dcdaefc rt-tests: Add a new test pip - priority inheritance with processes
This test is similar to pi_stress in that it purpursely triggers a priority-
inversion. However, instead of using pthreads it uses processes.
Since pthread_mutex_t are the only objects backed by priority inheritance
this is accomplished by having the processes use a pthread_mutex_t in
shared memory. See the header of pip.c for more information as well as the
code of course.

In addition this patch starts a src/include directory as a common place
to put header files.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-23 16:01:17 +01:00
John Kacur aee58a288f rt-tests: Add error routines to the library
Add error routines, similar to those found in Advanced Programming in the
UNIX Environment 2nd ed. for use by all rt test programs

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-23 14:43:54 +01:00
Clark Williams 8ab7958d06 deleted classic_pi program
classic_pi was the original proof of concept for a Priority
Inheritance mutex demonstration, but pi_stress does that much
better now.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-22 16:22:11 -06:00
John Kacur d3f77dcefc rt-tests: Add help screen info about -M / refresh_on_max in cyclictest
Signed-off-by: David Sommerseth <davids@redhat.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-22 22:54:00 +01:00
David Sommerseth 61b1309285 Missing parsing of --mlockall in signaltest
Signed-off-by: David Sommerseth <davids@redhat.com>
2009-12-22 21:54:37 +01:00
David Sommerseth 2e2c1eb6ae Fixed missing parsing of short arguments in classic_pi (David)
- Added the '+' back to the arguments (John)

Signed-off-by: David Sommerseth <davids@redhat.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-22 21:42:28 +01:00
Carsten Emde 77c00420d0 rt-tests: Better explanation in the kernel module
Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-22 00:58:59 +01:00
John Kacur b1ff404d55 rt-tests: Clean-up, Fix the comment part of the #endif protecting include files
Clean-up, Fix the comment part of the #endif protecting include files

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-22 00:43:04 +01:00
Clark Williams e3c3bab1c6 fixed missing function invocation in cyclictest
Added missing () to get_debugfileprefix in cyclictest.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-21 16:04:41 -06:00
Clark Williams 1c6c589606 move guard macros into implementor namespace
renamed the guard macros in rt-get_cpu.h and rt-utils.h to
have leading double underscores which takes them out of the
application namespace. Also changed a '.' in the rt-get_cpu.h
guard macro to an underscore.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-21 16:02:21 -06:00
Carsten Emde d6e8606c24 Completely remove VERSION_STRING until we have a better solution.
Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-21 22:36:55 +01:00
John Kacur 738ab3ea95 rt-tests: Clean-up - protect rt-utils.h
Clean-up: Protect rt-utils.h with #ifndef RT_UTILS_H

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-21 22:17:59 +01:00
John Kacur 2d85600632 rt-tests: Add a get_cpu() function to the library.
Add a get_cpu() function to the library.
Most platforms will simply use sched_getcpu()
However, if you have a glibc < 2.6 then
64-bits will use vsyscall for getcpu (if available).
32-bits will use getcpu() (if available)

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-21 22:02:38 +01:00
John Kacur 5ee3c0f037 rt-tests: Makefile - Changes to unify and simplify the Makefile
- These changes simplify the Makefile. For example, notice that we no
longer need to specify the full path to the source file
- These changes also unify the Makefile, for example, every program
gets VERSION_STRING as an floating point number.
- Due to the above change I had to make a number of changes in the programs
that expected VERSION_STRING as a string.
- By unifying what we CFLAGS, to include -D_GNU_SOURCE, I had to remove
__USE_GNU which is reduncant in a number of files.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-21 21:08:00 +01:00
Clark Williams 1c3c9e34d6 convert source back to unix text (was DOS text)
Somehow the last set of tests added got converted to DOS text
(CRLF line terminators). Change them back

Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-21 10:27:18 -06:00
John Kacur e9007a0edd Add a .gitignore file in the backfire directory for generated files.
Add a .gitignore file in the backfire directory for generated files
that are created when making the kernel module.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 22:31:08 +01:00
John Kacur 2c4267ff9a The version of check_privs that got added to the library must have come
from signaltest - because it doesn't have the fix that check_privs in
cyclictest has - to return the sched_priority to 0

This is a good example of why common functions should be put into libraries -
so all programs benefit from fixes.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 16:19:59 +01:00
John Kacur a017e969b3 Use sched_getcpu
- sched_getcpu is available since glibc 2.6
- the current tests were broken in anycase.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 16:13:09 +01:00
Carsten Emde 92b0181ce8 Add the following new tests
- ptsematest
- sigwaittest
- svsematest
- sendme

Signed-off-by: Carsten Emde <carsten.emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 15:53:20 +01:00
Carsten Emde da4e865225 Make use of the new library functions in signaltest.
Signed-off-by: Carsten Emde <carsten.emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 14:58:52 +01:00
Carsten Emde c51afec7fd Make use of the library functions in cyclic test.
Signed-off-by: Carsten Emde <carsten.emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 14:49:33 +01:00
Carsten Emde dce15eefef Start a separate library of functions for the rt-test suite.
The first couple are taken from cyclictest.

Signed-off-by: Carsten Emde <carsten.emde@osadl.org>
Signed-off-by: John Kacur <jkacur@redhat.com>
2009-12-14 14:21:19 +01:00
Clark Williams 93989ec0d6 [cyclictest] print thread ids when breaktracing
This commit adds some output then the -b option is used to break on
exceeding a threshold. the thread id of the thread that exceeded the
threshold is printed for use when looking at the trace log.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-12-10 14:17:34 -06:00
Clark Williams 0b34a7b2bf rt-tests: pi_stress: cosmetic newline added
Add a second newline to the "Low thread priority" display line
so that updating number of inversions doesn't overwrite it.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-11-19 14:17:10 -06:00
John Kacur d2ad7c7506 rt-tests: pi_stress: Remove racy state variables that cause watchdog to trigger
When using pthread_barrier_wait, it is important that barriers are called
the correct number of times. That is - the same number given as the count
when initializing the barrier.

There was a do-while loop around elevate_barrier in the med priority thread.
On most machines, it actually never looped.

On threads with enough processors (nehelam for example), there was a racy
situation in which the high priority thread could come out of the finish
barrier, and before it could set high_has_run = 0, the medium priority
thread would test the value and call the elevate barrier an extra time.

This patch removes the bogus loop and related state variables and fixes
the hang.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-11-19 10:58:00 -06:00
John Kacur cf46ad44b9 rt-tests: pi_stress: Check whether quiet is set, before taking shutdown_mtx
- Check whether quiet is set, before taking shutdown_mtx
- Add quiet to the help menu.
- Remove unused "signal" from struct options

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-11-19 10:57:47 -06:00
John Kacur 9ee4dcad03 rt-tests: pi_stress: Use a pthread_mutex_t for the global variable shutdown
- Use a pthread_mutex_t for the global variable shutdown.
- Remove the volatile qualifier from shutdown. (Since the original author
probably simply meant the variable should be atomic which we effectively
get through the mutex.

Signed-off-by: John Kacur <jkacur@redhat.com>
2009-11-19 10:57:32 -06:00
John Kacur 168f2a35eb pi_stress: Convert c-plus style comments to c-style comments
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-11-17 15:17:29 -06:00
John Kacur a95740e5de pi_stress: Fix trailing-whitespace warnings.
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-11-17 15:17:10 -06:00
John Kacur 72bffb255a pi_stress: Fix indentation problems with Lindent from the kernel
Signed-off-by: John Kacur <jkacur@redhat.com>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-11-17 15:16:43 -06:00
Clark Williams d0a65eb5a0 patch from Hans-Peter Bock <Hans-Peter.Bock@isw.uni-stuttgart.de>
correcting units in help message for cyclictest
2009-10-07 09:14:20 -05:00
Clark Williams 6d54794d16 fixed incorrect format in hwlatdetect.py 2009-10-06 14:17:18 -05:00
Clark Williams 99557d7360 cleanups for rt-migrate-test 2009-09-21 16:48:49 -05:00
Clark Williams 7ca2d46e60 added Steven Rostedt's rt-migrate-test 2009-09-21 10:30:10 -05:00
John Kacur 1670757300 pi_stress clean-ups, fix hang.
From f17765e52e248b3a738f5206cb4b97bdcc1a0204 Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur@redhat.com>
Date: Tue, 1 Sep 2009 15:24:23 +0200
Subject: [PATCH] Add tags and TAGS to .gitignore

Add tags and TAGS to .gitignore, to prepare for a make tags option
2009-09-14 10:14:14 -05:00
Clark Williams 42ab9e7cd2 documented -M option 2009-09-03 15:11:05 -05:00
Clark Williams 34fca025a6 Merge commit 'uwe/for-clark' 2009-09-03 14:57:42 -05:00
Uwe Kleine-König ab887085b4 cyclictest.8: make description of --policy consistent to other options
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2009-09-03 21:02:19 +02:00
Uwe Kleine-König ba788f0731 manpages: fix lintian warning hyphen-used-as-minus-sign
"-" must be escaped ("\-") to be interpreted as minus, otherwise they
might be rendered as hyphen which makes it impossible to search for or
to cut'n'paste.

See http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html for a
detailed explanation.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2009-09-03 20:56:14 +02:00
Arnaldo Carvalho de Melo fc96b72126 cyclictest: add --update_on_max option
Note: the previous one sucked rockz, please try this one instead.

When running on a machine with not enough bandwidth it can be helpful to
only update the status when a new max is hit.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2009-08-27 08:50:20 -05:00
Clark Williams 62ef8a98a7 major rewrite of hwlatdetect.py to handle old smi_detector module
as well as current hwlat_detector
2009-07-15 20:43:21 -05:00
Sebastian Andrzej Siewior e5d7ca1ac5 cyclictest: process option before checking for permissions
so a normal user is able to take a look on the available options

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-13 09:41:23 -05:00
Sebastian Andrzej Siewior 47e87a456c cyclictest: exit with an error code in error case
if cyclictest is started with invalid arguments or $SOMETHING, then it
prints the help screen and the exit code is 0 which is wrong.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-13 09:40:46 -05:00
Clark Williams 1b7ecf004b change options for --policy to be string names rather than integers
moved policy display from individual threads to header with load average
did some sanity checking so that policy and priority match

Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-05 13:33:52 -05:00
Clark Williams de70815ad0 Subject: [PATCH]cyclictest: Arrange alphabetically for readability of
"cyclictest --help".
From: GeunSik Lim <leemgs1@gmail.com>
Reply-To: leemgs1@gmail.com
To: williams <williams@redhat.com>
Cc: linux-rt-users <linux-rt-users@vger.kernel.org>, tglx <tglx@linutronix.de>

When we use "#> cyclictest --help" command, we are confusing because of
random order of many options. Arrange alphabetically.

After Patch)
[root@fedora11 rt-tests]# ./cyclictest  --help
cyclictest V 0.46
Usage:
cyclictest <options>

-a [NUM] --affinity        run thread #N on processor #N, if possible
                           with NUM pin all threads to the processor NUM
-b USEC  --breaktrace=USEC send break trace command when latency > USEC
-B       --preemptirqs     both preempt and irqsoff tracing (used with -b)
-c CLOCK --clock=CLOCK     select clock
                           0 = CLOCK_MONOTONIC (default)
                           1 = CLOCK_REALTIME
-C       --context         context switch tracing (used with -b)
-d DIST  --distance=DIST   distance of thread intervals in us default=500
-D       --duration=t      specify a length for the test run
                           default is in seconds, but 'm', 'h', or 'd' maybe added
                           to modify value to minutes, hours or days
-E       --event           event tracing (used with -b)
-f       --ftrace          function trace (when -b is active)
-h       --histogram=US    dump a latency histogram to stdout after the run
                           (with same priority about many threads)
                           US is the max time to be be tracked in microseconds
-i INTV  --interval=INTV   base interval of thread in us default=1000
-I       --irqsoff         Irqsoff tracing (used with -b)
-l LOOPS --loops=LOOPS     number of loops: default=0(endless)
-m       --mlockall        lock current and future memory allocations
-n       --nanosleep       use clock_nanosleep
-N       --nsecs           print results in ns instead of ms (default ms)
-o RED   --oscope=RED      oscilloscope mode, reduce verbose output by RED
-O TOPT  --traceopt=TOPT   trace option
-p PRIO  --prio=PRIO       priority of highest prio thread
-P       --preemptoff      Preempt off tracing (used with -b)
-q       --quiet           print only a summary on exit
-r       --relative        use relative timer instead of absolute
-s       --system          use sys_nanosleep and sys_setitimer
-t       --threads         one thread per available processor
-t [NUM] --threads=NUM     number of threads:
                           without NUM, threads = max_cpus
                           without -t default = 1
-T TRACE --tracer=TRACER   set tracing function
    configured tracers: unavailable (debugfs not mounted)
-v       --verbose         output values on stdout for statistics
                           format: n:c:v n=tasknum c=count v=value in us
-w       --wakeup          task wakeup tracing (used with -b)
-W       --wakeuprt        rt task wakeup tracing (used with -b)
-y POLI  --policy=POLI     policy of realtime thread (1:FIFO, 2:RR)
                           format: --policy=1(default) or --policy=2

      Signed-by-off: GeunSik Lim <geunsik.lim@samsung.com>

Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-05 12:58:51 -05:00
Clark Williams 1926b98439 Subject: [PATCH] cyclictest: Add policy option to support FIFO or RR by
users
From: GeunSik Lim <leemgs1@gmail.com>
To: williams <williams@redhat.com>
Cc: linux-rt-users <linux-rt-users@vger.kernel.org>, tglx <tglx@linutronix.de>


Current cyclictest support FIFO policy for static priority of
RT threads only. Append policy option to support FIFO or RR by user.

After this patch.
1) with FIFO about RT threads(default)
   ./cyclictest -t 5 -p 50
or ./cyclictest -t 5 -p 50 -y 1
or ./cyclictest -t 5 -p 50 --policy 1

2) with RR about RT threads(default)
   ./cyclictest -t 5 -p 50 -y 2
or ./cyclictest -t 5 -p 50 --policy 2

This is screenshot of threads using cyclictest & tuna utility after patch.
http://blogfiles6.naver.net/20090703_5/invain_1246588185266_sc7zEq_PNG/cyclictest-tuna-policy.PNG

        Signed-off-by: GeunSik Lim <geunsik.lim@samsung.com>

Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-05 12:58:27 -05:00
Clark Williams 78ae63b635 Subject: [PATCH] cyclictest : Appended man & usage about the same priority
of many threads with -h
From: GeunSik Lim <leemgs1@gmail.com>
Reply-To: leemgs1@gmail.com
To: williams <williams@redhat.com>
Cc: linux-rt-users <linux-rt-users@vger.kernel.org>, tglx <tglx@linutronix.de>,
        sdietrich@suse.de


If we run a many threads with -t option, "priority--" rt priority will assign
per thread in sequence. But, If we use -h option, all threads is same priority.

Append man page and cyclictest usage about the same priority of many threads
with -h option.

ex) cyclictest -t 5 -p 50        [enter] <-- without -h
ex) cyclictest -t 5 -p 50 -h 100 [enter] <-- with    -h

        Signed-off-by: GeunSik Lim <geunsik.lim@samsung.com>
        Acked-by     : Sven-Thorsten Dietrich <sdietrich@suse.de>

Signed-off-by: Clark Williams <williams@redhat.com>
2009-07-05 12:58:01 -05:00
Daniel Gollub 4b1bc6a9bb Subject: Handle doomsday latency for cyclictest in histogram mode
Don't miss latency which exceed the histogram limit -
instead sample limit exceeding latency in the last bucket.

This is a leftover from cyclictest_histogram.patch:
-> Todo: Currently cyclictest does not report the number of samples
-> that exceeded the histogram max latency.

Handle OOM.

Signed-off-by: Daniel Gollub <dgollub@suse.de>
Reviewed-by: Sven-Thorsten Dietrich <sdietrich@suse.de>
--
2009-07-02 17:10:44 -05:00
Sven-Thorsten Dietrich 63cf2a4809 Change output format to allow 6 digits.
This is useful when testing PREEMPT_NONE Kernels with cyclictest,
where latencies approaching 1 second can be observed.

Signed-off-by: Sven-Thorsten Dietrich <sdietrich@suse.de>
2009-07-02 09:29:36 -05:00
Clark Williams 66fb1db24e added debug prints and retry logic to hwlatdetect enable/disable code and detection code 2009-07-02 09:29:11 -05:00
Daniel Gollub 6092f3b705 Avoid segfault of cyclictest if it gets immediately interrupted.
If clock_nanosleep() gets interrupted this could result in a negative
time diff from calcdiff().

With the histogram patch this leads to a segfault, since the time diff
is used as index for the histogram array:

Core was generated by `/usr/bin/cyclictest -n -q -p 99 -t 2 -i 500 -l
1000000 -h
 20000'.
 Program terminated with signal 11, Segmentation fault.
#0  0x0000000000402324 in timerthread (param=<value optimized out>)
     at src/cyclictest/cyclictest.c:339
     339                             stat->hist_array[diff] += 1;
     (gdb) p diff
     $1 = -751974

Signed-off-by: Daniel Gollub <dgollub@suse.de>
Acked-by: Sven-Thorsten Dietrich <sdietrich@suse.de>
2009-07-02 09:28:04 -05:00
Clark Williams f247fd753a added code to resize window/width when setting the other to a smaller value 2009-06-30 13:36:06 -05:00
Uwe Kleine-König 2a1cf80ccc hwlatdetect.8: There is no macro .R
You might wonder if this wasn't already fixed.  Yes it was (in
f16ec27fb3), but the change was undone by 3e04327f7f.

While at it add an .br which makes the paragraph look a bit nicer.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2009-06-24 00:21:08 +02:00
Clark Williams eb0c42a27c added copyright header to hwlatdetect.py 2009-06-12 15:47:59 -05:00
Clark Williams 652127181c updated hwlatdetect.8 to reflect new options/behavior 2009-06-12 15:47:35 -05:00
Clark Williams 3e04327f7f merge resolution 2009-06-12 13:20:17 -05:00
Clark Williams ad5a12cb08 removed internal defaults (went with module defaults); added debugging code; make sure window set before width 2009-06-12 13:06:12 -05:00
Uwe Kleine-König c7deee8c38 Make comment describing set_debugfileprefix a bit clearer
This was noticed by GeunSik Lim.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: GeunSik Lim <leemgs1@gmail.com>
Cc: Luis Claudio R. Goncalves <lclaudio@uudg.org>
Cc: Clark Williams <williams@redhat.com>
2009-06-12 15:38:06 +02:00
Clark Williams 556a10971c handled module changes 2009-06-10 23:32:41 -05:00
Clark Williams 446ff91990 the great renaming: smidetect -> hwlat 2009-06-10 13:50:02 -05:00
Clark Williams 758df97308 added non-blocking open+polling read to handle new module logic; added debug statements 2009-06-09 12:45:58 -05:00
Clark Williams 30edd0b4ab rewrite to match updated smi_detector module 2009-05-30 10:30:49 -05:00
Stefan Agner 0884033338 cyclictest: calcdiff calculated wrong seconds if the difference was bigger than 2147s
Hello,

My first fix didn't took into account that long is 4 byte long on ARM. Therefor
I changed it to long long now, which works on my ARM board...

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-05-28 14:56:27 -05:00
Uwe Kleine-König f16ec27fb3 smidetect.8: There is no macro .R
For a normal font just use nothing.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2009-05-14 01:06:38 +02:00
Clark Williams 5aac188d85 added smidetect 2009-05-13 13:57:11 -05:00
Clark Williams e8711b5cb9 initial checkin 2009-05-12 16:54:06 -05:00
Clark Williams 45d0c73f33 initial checkin 2009-05-12 16:54:03 -05:00
Clark Williams 337bf38f80 initial checkin 2009-05-12 16:53:59 -05:00
Uwe Kleine-König c289046965 signaltest: fix typo in copyright header
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
2009-05-02 20:02:37 +02:00
Uwe Kleine-König 8565bd61b4 escape minus signs in manpages
'-' chars are interpreted as hyphens by groff, not as minus signs.  This
means that if you're using an UTF-8 locale searching for '-' to find
options doesn't work.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
2009-05-02 18:01:34 +02:00
Clark Williams 95bd88ca5a added code to usage message to show configured tracers if debugfs mounted
Signed-off-by: Clark Williams <williams@redhat.com>
2009-04-30 15:27:15 -05:00
Tobias Klauser 3fc59347e8 cyclictest: Remove duplicate entry for -m from manpage
Hi Thomas,

The patch below removes the duplicate entry for the -m/--mlockall option from
the cyclictest manpage. Patch is againnst current HEAD of rt-tests.git

Cheers, Tobias

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
2009-04-30 14:46:28 -05:00
Clark Williams 9187c3944b added --tracer and --traceopt options 2009-04-29 15:30:44 -05:00
Clark Williams 552bd1a203 added --tracer and --traceopt options 2009-04-29 15:23:22 -05:00
Clark Williams 9abe9601f7 correct usage message for -w and -W 2009-04-24 15:35:27 -05:00
Clark Williams 54623d8d7e add -w and -W 2009-04-24 15:35:04 -05:00
GeunSik Lim 870347de96 [PATCH] cyclictest: Add tracing function about wakeup and wakeup_rt of ftrace.
This is patch to support wakeup & wakeup_rt tracing at the argument of
    cyclictest additionally. Current cyclictest support three tracing
    like PREEMPTOFF, IRQSOFF, PREEMPTIRQSOFF just.

    This additional function will help wakeup related tracing
    about sleep api [ex: nanosleep() , usleep] of cyclictest.

    Practically speaking, wakeup(+wakeup-rt) tracing by steven rostedt is useful
    in the linux based embedded product development.

    After patching,
    Fedora9#> cat /debug/tracing/available_tracers
    syscall blk kmemtrace power branch function_graph mmiotrace wakeup_rt wakeup \
    preemptirqsoff preemptoff irqsoff function sched_switch initcall nop
    Fedora9#> cyclictest -t 5 -p 80 -b 1000 -w -D 10 [enter] <--- tracing wakeup
    Fedora9#> cat /debug/tracing/trace

    Fedora9#> cyclictest -t 5 -p 80 -b 1000 -W -D 10 [enter] <--- tracing wakeup-rt
    Fedora9#> cat /debug/tracing/trace

    Signed-off-by: GeunSik Lim <geunsik.lim@samsung.com>

Signed-off-by: Clark Williams <williams@redhat.com>
2009-04-24 15:20:50 -05:00
GeunSik Lim 6d4136e501 cyclictest: Remove duplicated description of cyclictest usage like -h.
Author: Lim,GeunSik <leemgs1@gmail.com>
Date:   Tue Apr 21 16:03:56 2009 +0900

    [PATCH] cyclictest: Remove duplicated description of cyclictest usage like -h.

    We often utilize a various options with "#>cyclictest --help" command in the terminal environment.
    When We run "#> cyclictest --help" command, We can show duplicated description about "-h" option
    for latency histogram.
    Unfortunatley, Some of the users is confusing because of two options about latency histogram.

    [root@fedora9 invain]# ./cyclictest --help
    cyclictest V 0.36
    Usage:
    cyclictest <options>

    -a [NUM] --affinity        run thread #N on processor #N, if possible
                               with NUM pin all threads to the processor NUM
    -b USEC  --breaktrace=USEC send break trace command when latency > USEC
    -B       --preemptirqs     both preempt and irqsoff tracing (used with -b)
    -c CLOCK --clock=CLOCK     select clock
                               0 = CLOCK_MONOTONIC (default)
                               1 = CLOCK_REALTIME
    -C       --context         context switch tracing (used with -b)
    -d DIST  --distance=DIST   distance of thread intervals in us default=500
    -E       --event           event tracing (used with -b)
    -f       --ftrace          function trace (when -b is active)
    -h H_MAX                   latency histogram size in us default 0 (off)
    -i INTV  --interval=INTV   base interval of thread in us default=1000

         ................. [Middle Omission] ...................

    -v       --verbose         output values on stdout for statistics
                               format: n:c:v n=tasknum c=count v=value in us
    -D       --duration=t      specify a length for the test run
                               default is in seconds, but 'm', 'h', or 'd' maybe added
                               to modify value to minutes, hours or days
    -h       --histogram=US    dump a latency histogram to stdout after the run
                               US is the max time to be be tracked in microseconds

    For example,

    -h H_MAX                   latency histogram size in us default 0 (off)

    -h       --histogram=US    dump a latency histogram to stdout after the run
                               US is the max time to be be tracked in microseconds

    As you see, We don't need "-h H_MAX  . . . . . ." description.
    So, I think that We have to remove old option about description of histogram function.

    Signed-off-by: GeunSik Lim <leemgs1@gmail.com>
2009-04-24 15:05:53 -05:00
Clark Williams 5dce871f96 updated cyclictest man page with -C/--context and -E/--event options 2009-04-20 14:07:05 -05:00
GeunSik Lim 7272c4d320 cyclictest: bugfix getopt_long() for -C and -F.
Author: Lim,GeunSik <leemgs1@gmail.com>
Date:   Wed Apr 8 22:21:59 2009 +0900

    [patch] cyclictest: bugfix getopt_long() for -C and -F.

    We can not use -C option without --context option for tracing context switching.
    ex) ./cyclictest -t 10 -m -b 100 -C
    We can not use -E option without --event option for tracing events.
    ex) ./cyclictest -t 10 -m -b 100 -E
    Append -C and -E option on getopt_long() function to solve this problems.

    Signed-off-by: GeunSik Lim <leemgs1@gmail.com>

Signed-off-by: Clark Williams <williams@redhat.com>
2009-04-20 14:01:21 -05:00
Uwe Kleine-König 7453d772a0 Signed-off-by: Clark Williams <williams@redhat.com> 2009-04-07 15:08:17 -05:00
Clark Williams 1b3ee55106 reworked settracer()
GeunSik Lim <leemgs1@gmail.com> found a problem with settracer()
in that it had a hardcoded limit to the number of tracers searched.
Unfortunately his patch found a bug in either fscanf or debugfs,
since it doesn't seem to return EOF at the end of input, so I reworked
the patch to read all the input and parse it using strtok.

Signed-off-by: Clark Williams <williams@redhat.com>
2009-04-05 09:31:24 -05:00
Clark Williams d2532aed60 fix formatting damage from nanosecond patch 2009-03-30 09:21:07 -05:00
Luis Henriques 58f08ef334 cyclictest: Added option for results in nanoseconds
cyclictest results are presented in microseconds, although internal precision
uses nanosecond unit.  This patch adds a command-line option for keeping the
nanoseconds precision.  man page has also been update.

Signed-off-by: Luis Henriques <henrix@sapo.pt>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-03-28 09:35:11 -05:00
Thomas Gleixner a7bd17e188 cyclictest: init tracer only once
The tracer setup happens in every thread, which is nonsense. First of
all it leads to a lot of irritating warnings because the things are
setup multiple times. The worst effect is that one tasks runs already
into the tracer stop condition and the next one reenables the tracer.

Move the tracer setup into the main thread and do it only once.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-03-28 09:30:49 -05:00
Thomas Gleixner d4a986cb07 cyclictest: fix priviledge test
Switching back to SCHED_OTHER in check_priv() fails due to the param
argument of sched_setscheduler() set to NULL.

Set the priority to 0 and hand in params.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-03-28 09:30:38 -05:00
Clark Williams 9ffdc557b3 added license header to sigtest.c 2009-03-21 09:58:57 -05:00
Thomas Gleixner 7aecff931f To: rt-users <linux-rt-users@vger.kernel.org>
Cc: Clark Williams <williams@redhat.com>
Subject: [patch 2/2] cyclictest: support for latest mainline tracer

The tracer in mainline changed the interface another time. Make it
work again.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-02-13 15:36:14 -06:00
Thomas Gleixner 2c8f2d774e To: rt-users <linux-rt-users@vger.kernel.org>
Cc: Clark Williams <williams@redhat.com>
Subject: [patch 1/2] cyclictest: code cleanup

Started to grow whitespace and formatting sloppiness.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Clark Williams <williams@redhat.com>
2009-02-13 15:36:13 -06:00
Luis Henriques 0a378282d4 he help for the -C option was being printed out inside the help of the -c
option.

Signed-off-by: Luis Henriques <henrix@sapo.pt>
Signed-off-by: Clark Williams <williams@redhat.c m>
2009-02-09 13:18:35 -06:00
Clark Williams 724dfb4690 changed deadlock detection to be a little more flexible 2008-12-18 16:46:58 -06:00
Clark Williams d3ae4c81ea updated pi_stress option processing 2008-12-18 15:55:10 -06:00
Luis Claudio R. Goncalves 9505ea6a6a Patch to fix tracer selection in cyclictest when using -b 2008-12-11 10:43:22 -06:00
Clark Williams 679b34e74b cyclictest fixup for tracing 2008-12-11 10:38:46 -06:00
Clark Williams 5d8328bb03 changed test to not require root 2008-12-02 12:22:25 -06:00
Clark Williams 3ece612bd1 add option to run for specified duration
Add an option (--duration or -D) to specify how long the test should run

Signed-off-by: Clark Williams <williams@redhat.com>
2008-10-22 14:33:51 -05:00
Sven-Thorsten Dietrich cb548199a6 Subject: Add histogram support to cyclictest
Add -h <size> parameter and functionality to log histograms of latencies
in cyclictest.

Signed-off-by: Sven-Thorsten Dietrich <sdietrich@suse.de>
2008-10-22 13:23:02 -05:00
Clark Williams 2e058f7f98 fixed merge breakage 2008-09-25 15:13:51 -05:00
Clark Williams 2d45d878ba Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/rt-tests
Conflicts:
	src/cyclictest/cyclictest.c
	src/pi_tests/pi_stress.8
2008-09-25 15:11:56 -05:00
Thomas Gleixner 5d3ac6cb76 cyclictest: remove duplicate option in help text
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-27 22:49:02 +02:00
Alessio Igor Bogani 69d53796da Fix typo in pi_stress manpage
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-24 18:27:07 +02:00
Alessio Igor Bogani 5cd772b14a Differentiate hyphen and minus in manpages
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-24 18:27:07 +02:00
Clark Williams d60e13722d fixed formating damage
Signed-off-by: Clark Williams <williams@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Luis Claudio Goncalves <lclaudio@uudg.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-12 04:21:23 +02:00
Clark Williams 198975b2e4 updated man pages for --mlockall option
Signed-off-by: Clark Williams <williams@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Luis Claudio Goncalves <lclaudio@uudg.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-12 04:18:39 +02:00
Clark Williams 1e00c7a587 added mlockall option
Signed-off-by: Clark Williams <williams@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Luis Claudio Goncalves <lclaudio@uudg.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-12 04:18:39 +02:00
Clark Williams 1c3872ef1d Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/rt-tests
Conflicts:

	src/cyclictest/cyclictest.c
2008-07-08 08:45:51 -05:00
John Kacur 3ad6648f2c Fix the processing of optional options for cyclictest
Problem: when running cyclic test, short options are not parsing
optional arguments correctly when followed by a space.
"-t3" works, but "-t 3" does not.

- Fix the processing of options with optional parameters, so that the user
  can write -tNUM or -t NUM and it will work as expected. This was done
  for the -t and -a options

- Modify the usage messages to correspond with the way the program makes use
  of the options.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-07-06 19:20:35 +02:00
Clark Williams 699c38bb8d Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/rt-tests
Conflicts:

	.gitignore
	src/cyclictest/cyclictest.8
	src/cyclictest/cyclictest.c
2008-06-12 19:43:21 -05:00
Carsten Emde 6963a41f68 rt-tests/cyclictest.c: oscilloscope mode did not work correctly with >1 threads
Data reduction (-o mode) did not work correctly with >1 threads.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-06-05 08:41:15 +02:00
Alessio Igor Bogani 434091fc65 Fix some typo in the cyclictest's man page 2008-06-04 17:30:07 +02:00
Steven Rostedt 65d1cb7079 cyclictest: sched_switch not sched-switch
I noticed I had a typo on sched_switch. I tested this on linux-tip tree
and it works there.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Cc: Darren Hart <dvhltc@us.ibm.com>
Cc: Subrata Modak <subrata@linux.vnet.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-06-04 17:17:26 +02:00
Steven Rostedt 9ba30e6ef2 cyclictest: handle latest ftrace
This patch has cyclictest work a bit better with ftrace. Some new options
have been added.

When -b is used:

  -P : use the preemptoff tracer
  -I : use the irqsoff tracer
  -B : use preemptirqsoff tracer

If the above are not set, then it tries to use "events" tracer if it is
available (currently only available in the -rt kernel) and if that is not
set, it defaults to the sched-switch tracer.

-f will enabled the function tracer.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Cc: Darren Hart <dvhltc@us.ibm.com>
Cc: Subrata Modak <subrata@linux.vnet.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-06-04 17:17:26 +02:00
Steven Rostedt fcee9fe2e0 cyclictest: search for debugfs
Not everyone mounts debugfs at /debug. This patch makes cyclictest search
for debugfs in the /proc/mounts directory.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Cc: Darren Hart <dvhltc@us.ibm.com>
Cc: Subrata Modak <subrata@linux.vnet.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-06-04 17:17:26 +02:00
Clark Williams 5587d442ee fixed formating damage 2008-05-09 13:43:55 -05:00
Clark Williams f6db792ba4 updated man pages for --mlockall option 2008-05-09 13:40:08 -05:00
Clark Williams c4a44c163d added mlockall option 2008-05-09 13:28:50 -05:00
Carsten Emde 2df51a799f cyclictest: send correct cycle number in -o mode
The appropriate cycle number of the maximum is now sent when in -o
mode. This is needed to more accurately determine the trace line that
is related to a particular latency.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-18 14:22:17 +02:00
Sebastian Siewior 6a0f073aa4 cyclictest: fix "get kernel version"
The version check in cyclic test fails if proc isn't mounted or if OS
name isn't Linux (uClinux isn't uncommon).  This patch fixes both
issues.

Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-18 14:22:17 +02:00
Sebastian Siewior 342e3b83ee cyclictest: fix build on uClibc due to missing cpu affinity
CPU affinity isn't supported by all uClibc ports right now.

Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-18 14:22:17 +02:00
Sebastian Siewior 7f4ac71644 cyclictest: fix for uClibc builds
as of uClibc-20080416 clock_nanosleep is still not implemented.

Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-16 11:12:04 +02:00
Carsten Emde 4cb277ee27 cyclictest: add -o option to reduce -v option's output speed
When the output of the -v option is piped into another program and if
more data are sent than the other program can eat, data points get
lost. Since high latency values normally occur much less frequently
than average latency values, the connected program will miss many of
the high latency values, and the realtime capability of a given system
may appear much better than it is.

Therefore, the new option -o RED was introduced. This option causes 
cyclictest to suppress every subsequent RED number of samples and 
replace them with the maximum of the values encountered during that 
sampling interval.

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-16 11:12:04 +02:00
Carsten Emde 82155e3d9e cyclictest & kernel>=2.6.24
- Added support for the kernel tracer as of kernel 2.6.24
- Options mostly identical, irrespective of the kernel version
- Added check whether debug fs is mounted and tracing configured
- -v (verbose) option additionally makes tracing more verbose

Signed-off-by: Carsten Emde <C.Emde@osadl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-16 11:12:04 +02:00
Carsten Emde f055732c16 cyclictest: add CPU affinity
Add CPU affinitt option to cyclictest.

1. New option -a:

without argument to a cyclictest spreads the threads consecutive on
the available CPUs. On a quad core machine we get:

-a -t4   Thread #0 -> CPU #0
         Thread #1 -> CPU #1
         Thread #2 -> CPU #2
         Thread #3 -> CPU #3

-a -t5   Thread #0 -> CPU #0
         Thread #1 -> CPU #1
         Thread #2 -> CPU #2
         Thread #3 -> CPU #3
         Thread #4 -> CPU #0

Adding a CPU number to the -a option all threads are pinned to
the given CPU:

-a3 -t4  Thread #0 -> CPU #3
         Thread #1 -> CPU #3
         Thread #2 -> CPU #3
         Thread #3 -> CPU #3

2. extension of the -t option:

Without argument to -t cyclictest starts as many threads as CPUs are
available.

Signed-off-by: Carsten Emde <c.emde@osadl.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-04-06 17:25:05 +02:00
Clark Williams fea12d35c3 added pi_tests; added specfile for rpm generation 2008-01-03 13:26:22 -06:00
Alessio Igor Bogani 899ebf7302 Fix kernel parameters in cyclictest's manpage
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2007-12-21 10:24:48 +01:00
Alessio Igor Bogani be4a5a9807 Unified versions into Makefile
Packaging version control

Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2007-12-14 15:25:29 +01:00
Alessio Igor Bogani 79ad2eca9a COPYING file and cyclictest's man page added
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2007-12-14 15:25:29 +01:00
Alessio Igor Bogani e6b7207115 Re-organized sources
Move code around to make packaging easier.

Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2007-12-14 15:25:29 +01:00