diff -Nru rt-tests-0.74/ChangeLog rt-tests-0.83/ChangeLog --- rt-tests-0.74/ChangeLog 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/ChangeLog 2011-12-02 09:39:14.000000000 +0000 @@ -1,3 +1,336 @@ +commit 649480fd1f14d3079a41c68b7f29c5fff5ad07ab +Merge: b1da997 5f1e84f +Author: Uwe Kleine-König +Date: Fri Dec 2 10:32:10 2011 +0100 + + Merge tag 'v0.83' of git://github.com/clrkwllms/rt-tests + + Further update changelog and refresh patches + + Signed-off-by: Uwe Kleine-König + +commit 5f1e84f8b015df3ff950056494134eca3f640d70 +Author: Clark Williams +Date: Mon Sep 26 14:53:10 2011 -0500 + + version bump to 0.83 + + Signed-off-by: Clark Williams + +commit cb1540450329d745f528e38f54a4906dab91eb96 +Author: Clark Williams +Date: Mon Sep 26 14:49:36 2011 -0500 + + Modified Makefile to be smarter about turning on/off NUMA compile + + Combined Uwe Kleine-König and Frank Rowand's suggestions into a + Makefile modification that tries to be smart about turning on + NUMA, while allowing it to be explicitly enabled/disabled via + command line options + + Signed-off-by: Clark Williams + +commit e1fab5b28076ec1f61601498f393c08a0cb817cd +Author: Clark Williams +Date: Wed Sep 21 09:37:38 2011 -0500 + + version bump to 0.82 + + Signed-off-by: Clark Williams + +commit 6ea14c157e192e9c79e1bbbcf9a6a07ca06eaa7e +Author: Clark Williams +Date: Wed Sep 21 09:37:15 2011 -0500 + + fix print that causes histogram processing error in cyclictest + + Signed-off-by: Clark Williams + +commit 188f30ab405c79eba6c7b5d83368548c746af3c1 +Author: Clark Williams +Date: Tue Sep 20 15:37:05 2011 -0500 + + version bump to 0.81 + + Signed-off-by: Clark Williams + +commit 9f7bdd9961f22d770e3efb7ab392ec2c67ea9878 +Author: Clark Williams +Date: Tue Sep 20 15:34:20 2011 -0500 + + 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 + +commit 474528f69e89c471501da3c1f495fb813ea2b984 +Author: Clark Williams +Date: Tue Sep 20 13:44:01 2011 -0500 + + version bump to 0.80 + + Signed-off-by: Clark Williams + +commit 1310f57cfe4b65646ddaaea26ad5f2469e211757 +Author: Clark Williams +Date: Tue Sep 20 13:41:02 2011 -0500 + + 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 + +commit 3edea442f644c112f47e17f876ba06e986007653 +Author: Clark Williams +Date: Thu Sep 15 09:41:16 2011 -0500 + + version bump to 0.79 + + Signed-off-by: Clark Williams + +commit 6c0c79b5152a6ad97b60915a008c023fff0da3bb +Author: Clark Williams +Date: Thu Sep 15 09:35:41 2011 -0500 + + 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 + +commit 69293365eb0c52686c493d7c88db8d91e5b01b3d +Author: Clark Williams +Date: Wed Sep 14 15:52:03 2011 -0500 + + version bump to 0.78 + + Signed-off-by: Clark Williams + +commit 7595c237b4b927386923a10a712f36ce5d5c20f3 +Author: Clark Williams +Date: Wed Sep 14 15:49:39 2011 -0500 + + 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 + +commit c25e679b69c1a7e2621738c94287d214bd3cf2e0 +Author: Clark Williams +Date: Fri Sep 9 16:54:01 2011 -0500 + + version bump to 0.77 + + Signed-off-by: Clark Williams + +commit f82a965a6216946d4ddc8d9bf1dd544b186703af +Author: Clark Williams +Date: Fri Sep 9 16:51:29 2011 -0500 + + remove tracemark functions from cyclictest + + removed trace marking functions because they cause too much + contention on multiprocessor systems. + + Signed-off-by: Clark Williams + +commit fda485332d2c203920d02450988afc564d3c99f3 +Author: Clark Williams +Date: Wed Sep 7 16:26:37 2011 -0500 + + version bump to 0.76 + + Signed-off-by: Clark Williams + +commit 3209d3c634db739605c6d3fbd9ad55cb50d1f2df +Author: Clark Williams +Date: Wed Sep 7 16:25:02 2011 -0500 + + 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 + +commit aca74c66e53b884ecd9638a2be286794e0d43c40 +Author: Clark Williams +Date: Wed Sep 7 16:23:31 2011 -0500 + + 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 + +commit ff044e71420ccaf066adc02d27df53edffc76b5b +Author: Clark Williams +Date: Wed Sep 7 15:32:54 2011 -0500 + + handle stupid systemd automount of debugfs + + Signed-off-by: Clark Williams + +commit 7c59bf385d7f03ccd324e6cb33a87b97593b7008 +Author: Clark Williams +Date: Fri Sep 2 11:10:06 2011 -0500 + + version bump to 0.75 + + Signed-off-by: Clark Williams + +commit e19cbadffcb99236f3e98f9ec6a838804f143108 +Author: Steven Rostedt +Date: Thu Sep 1 22:44:38 2011 -0400 + + allow tracemark() to take variable args + + Signed-off-by: Steven Rostedt + +commit da4956cbcaf7945554f30e4d3a9be09b1431b19a +Author: Steven Rostedt +Date: Thu Sep 1 21:29:31 2011 -0400 + + 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 + +commit ae357be2e8d48cc1fd14816a205d5f5f74007b40 +Author: Steven Rostedt +Date: Thu Sep 1 21:26:59 2011 -0400 + + 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 + +commit 8c1e851bfedd000a13a6faaee4cb775cda785b37 +Author: Steven Rostedt +Date: Thu Sep 1 21:21:47 2011 -0400 + + 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 + +commit 1f4e25c03767174ad441e78e49c1744741efff31 +Author: Steven Rostedt +Date: Thu Sep 1 18:35:42 2011 -0400 + + 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 + +commit bd2a8da00b01bd9061890bb8bd196309cd28441a +Author: Steven Rostedt +Date: Thu Sep 1 18:08:15 2011 -0400 + + 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 + +commit ee95ac26879e79b88ecf56d4b35c3bb0e23a74d9 +Author: Clark Williams +Date: Thu Sep 1 09:41:37 2011 -0500 + + commit WIP for rostedt + + Signed-off-by: Clark Williams + +commit b1da9977f07c6c343c1fdb50c556cadfd5bcefd1 +Author: Uwe Kleine-König +Date: Fri Aug 26 09:26:00 2011 +0200 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 18ccf852431d2def44d9d994012299fc37493309 +Author: Uwe Kleine-König +Date: Fri Aug 26 09:24:54 2011 +0200 + + debian/copyright: update for 0.74 + + Signed-off-by: Uwe Kleine-König + +commit cd6e5800356414cee855788632a68fbc7e9a138e +Author: Uwe Kleine-König +Date: Sat Aug 20 15:01:38 2011 +0200 + + new patch fixing a build failure in the backfire kernel module + + Signed-off-by: Uwe Kleine-König + +commit 2601f579508879105272d882cd407aca0527f201 +Author: Uwe Kleine-König +Date: Sat Aug 20 15:01:12 2011 +0200 + + debian: Update to v0.74 + + Signed-off-by: Uwe Kleine-König + +commit 579bae293907bc8ed4e9036e0594e44d4e77b709 +Merge: 23305f2 3e55619 +Author: Uwe Kleine-König +Date: Sat Aug 20 14:49:25 2011 +0200 + + Merge tag 'v0.74' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + +commit 3e55619c86c2604638c06c31c87881084f643274 +Author: Clark Williams +Date: Thu Aug 18 09:15:57 2011 -0500 + + version bump to 0.74 + + Signed-off-by: Clark Williams + commit 39451cc083b27f706659590ccb316358846c2104 Author: Uwe Kleine-König Date: Thu Aug 18 09:05:25 2011 -0500 @@ -44,6 +377,92 @@ Merge remote-tracking branch 'jkacur/rt-tests-dev-new' into work +commit 23305f2d44021c5d75d975376b2493f1263efe2d +Author: Uwe Kleine-König +Date: Sun Jul 17 12:40:34 2011 +0200 + + bump backfire version + + This fixes dkms to find the source files again. + + Signed-off-by: Uwe Kleine-König + +commit 49550bfb9253a2727150eb63dba66654d6993220 +Author: Uwe Kleine-König +Date: Wed Jul 13 23:09:53 2011 +0200 + + add a README describing how to allow changing scheduler policy for users + + Signed-off-by: Uwe Kleine-König + +commit afeacfcb19f285000885d6c0379bc14c2f5afa31 +Author: Uwe Kleine-König +Date: Wed Jul 13 22:57:52 2011 +0200 + + new patch: Don't reference non-standard realtime group + + Signed-off-by: Uwe Kleine-König + +commit 7f41b08501ebd418490d51c9a22a7bd31324caaa +Author: Uwe Kleine-König +Date: Sun Jun 26 23:17:58 2011 +0200 + + debian/control: bump Standards-Version to 3.9.2 + + Signed-off-by: Uwe Kleine-König + +commit 1642450645002852221c3922f36f128caa73329a +Author: Uwe Kleine-König +Date: Fri Jun 24 22:38:49 2011 +0200 + + new patch fixing a harmless build warning by dpkg-shlibdeps + + Signed-off-by: Uwe Kleine-König + +commit 862bf8f25249d0613d94e92b428e36fa6a5f74ec +Author: Uwe Kleine-König +Date: Fri Jun 24 22:28:17 2011 +0200 + + switch to debhelper compatibility level 8 + + Signed-off-by: Uwe Kleine-König + +commit 5d8a06a9b01e4f61e4475e1f4eab9cafb2e4a9e9 +Author: Uwe Kleine-König +Date: Fri Jun 24 22:27:02 2011 +0200 + + debian/rules: provide sequence as first parameter to dh + + This is needed for debhelper compatibility level 8. + + Signed-off-by: Uwe Kleine-König + +commit aeb5e158b9d0fce997a22c12aa832160d2362a63 +Author: Uwe Kleine-König +Date: Fri Jun 24 22:07:20 2011 +0200 + + new patch providing a man page for pip_stress + + This fixes the following lintian warning: + W: rt-tests: binary-without-manpage usr/bin/pip_stress + + Signed-off-by: Uwe Kleine-König + +commit 441103986b6f40d0304824dd5f4183b0af43cb6c +Author: Uwe Kleine-König +Date: Fri Jun 24 20:32:43 2011 +0200 + + debian/rules: add build-{arch,indep} targets + + This fixes the following warnings from lintian: + W: rt-tests source: debian-rules-missing-recommended-target build-arch + W: rt-tests source: debian-rules-missing-recommended-target build-indep + + Debhelper 8.1.0 is the first version supporting the corresponding + sequences, so bump Build-Depends. + + Signed-off-by: Uwe Kleine-König + commit f26dbd8adcc7f9888d06a4963e8fe9e1ca497a15 Author: John Kacur Date: Fri May 13 12:52:48 2011 +0200 @@ -54,6 +473,25 @@ Signed-off-by: John Kacur +commit e036ae96aca731e39f273adf4dfbe7a6f4fb3007 +Author: Uwe Kleine-König +Date: Fri May 13 12:22:11 2011 +0200 + + refresh patches for new upstream release + + - drop modernize_backfire_Makefile and install_backfire_Makefile + (applied upstream) + - refresh install_hwlatdetect_into_sbindir and kernvar_fix_possible_buffer_overflow + + Signed-off-by: Uwe Kleine-König + +commit 65feb142a77786d897d9f5d1f3113b595d23d66a +Merge: 5c7b8e0 81da016 +Author: Uwe Kleine-König +Date: Fri May 13 11:58:07 2011 +0200 + + Merge tag 'v0.73' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit cea67f47fae1e11579ab6a96d105f9b30360f0db Author: Clark Williams Date: Thu May 12 10:16:06 2011 -0500 @@ -153,6 +591,66 @@ Signed-off-by: Clark Williams +commit 5c7b8e08af9f14d3cf6e920656c28710ed15d15c +Author: Uwe Kleine-König +Date: Wed Mar 30 10:38:26 2011 +0200 + + debian/backfire-dkms: add BUILT_MODULE_NAME[0] to fix warning + + Before this change $(dkms status) issued: + + dkms.conf: Error! No 'BUILT_MODULE_NAME' directive specified for record #0. + backfire, 0.71-1, 2.6.32-5-amd64, x86_64: installed (WARNING! Missing some built modules!) + + Signed-off-by: Uwe Kleine-König + +commit 4f0f0c1cf2bb94879eaec31acb935d7f2b1c2a52 +Author: Uwe Kleine-König +Date: Sun Mar 20 16:32:17 2011 +0100 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 580f1fac8c14cbbe4b452ce79fc90fe55721564b +Author: Uwe Kleine-König +Date: Sun Mar 20 16:31:00 2011 +0100 + + debian/control: bump Standards-Version to 3.9.1 + + Signed-off-by: Uwe Kleine-König + +commit a92d5d67c0528ebbd540a2d4d6d6fb0b34351570 +Author: Uwe Kleine-König +Date: Fri Feb 18 17:39:38 2011 +0100 + + debian/control: use Architecture: linux-any + + Signed-off-by: Uwe Kleine-König + +commit b7447aee585390ce49670ccfe1416d1620636048 +Author: Uwe Kleine-König +Date: Fri Feb 18 17:07:44 2011 +0100 + + update debian/changelog for new upstream release + + Signed-off-by: Uwe Kleine-König + +commit 4e3759b80102f0ea619f7dcda1ef8e9b95a88c97 +Author: Uwe Kleine-König +Date: Fri Feb 18 17:04:55 2011 +0100 + + new patch: kernvar() fix possible buffer overflow + + Signed-off-by: Uwe Kleine-König + +commit ea00cb53cc8ab0bd158dca4fa5f7c8968b34f244 +Merge: 6668388 886d268 +Author: Uwe Kleine-König +Date: Fri Feb 18 16:52:54 2011 +0100 + + Merge tag 'v0.72' of git://git.us.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit a5693cc7854fbb5a60931407440a53f2efd81dc1 Author: Uwe Kleine-König Date: Thu Jul 1 06:32:00 2010 +0200 @@ -176,36 +674,102 @@ Signed-off-by: Uwe Kleine-König -commit 886d26833d637ab778023626a158061e4eb9c5d0 -Author: Clark Williams -Date: Fri Jun 25 16:16:46 2010 -0500 +commit 886d26833d637ab778023626a158061e4eb9c5d0 +Author: Clark Williams +Date: Fri Jun 25 16:16:46 2010 -0500 + + version bump to 0.72 + + Signed-off-by: Clark Williams + +commit e4c7a0753cbcefec45f3bfd939528baf1643c3fc +Author: Clark Williams +Date: Fri Jun 25 16:10:40 2010 -0500 + + 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 + +commit a3194e71ef314ee6fb86577e2c13ea6a9a5dcd64 +Author: Clark Williams +Date: Mon Jun 14 14:50:02 2010 -0500 + + 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 + +commit 66683887d15b0846ef4fa37f0d95306194bd64f3 +Author: Uwe Kleine-König +Date: Sun Jun 13 07:23:31 2010 +0200 + + Add more linux ports to Architecture + + Signed-off-by: Uwe Kleine-König + +commit f02e3a55feb2f6996b47267793054632b1facab7 +Author: Uwe Kleine-König +Date: Wed Jun 2 22:15:07 2010 +0200 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 1f85036c96cd08bc3c84bda9a7c9afd2f14b11ed +Author: Uwe Kleine-König +Date: Tue Jun 8 21:25:26 2010 +0200 + + add backfire package with dkms support + + Signed-off-by: Uwe Kleine-König + +commit b77ce428e47b1a0f25b2178237c820b0e19637fc +Author: Uwe Kleine-König +Date: Fri May 28 22:09:01 2010 +0200 + + add powerpcspe to architecture list + + Signed-off-by: Uwe Kleine-König + +commit c7fa4bedf596fbe6681604e6af278545b4e042be +Author: Uwe Kleine-König +Date: Fri May 28 21:58:20 2010 +0200 - version bump to 0.72 + new patch: modernize backfire Makefile - Signed-off-by: Clark Williams + Signed-off-by: Uwe Kleine-König -commit e4c7a0753cbcefec45f3bfd939528baf1643c3fc -Author: Clark Williams -Date: Fri Jun 25 16:10:40 2010 -0500 +commit f9e3d3a6c538a74f88c2e3ed7518b525b7bf97f0 +Author: Uwe Kleine-König +Date: Fri May 28 21:48:44 2010 +0200 - convert convert 'unsigned long long' and 'long long' to uint64_t and int64_t + update debian/c{opyright,ontrol,hangelog} for new upstream release - Cleanup spurred by need to make the 'diff' variable in timerthread() to - be unsigned and 64-bits (rather than a signed 32-bit). + The copyright of hackbench is specified as found in ltp and confimed by + Ingo Molnar. - Signed-off-by: Clark Williams + Signed-off-by: Uwe Kleine-König -commit a3194e71ef314ee6fb86577e2c13ea6a9a5dcd64 -Author: Clark Williams -Date: Mon Jun 14 14:50:02 2010 -0500 +commit f2e3d6ee2a9810015dc170b65ba6661a185c3303 +Author: Uwe Kleine-König +Date: Wed May 26 12:18:04 2010 +0200 - 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). + drop patches applied by upstream, refresh remaining patch - Signed-off-by: Clark Williams + Signed-off-by: Uwe Kleine-König + +commit 9dcdf50f0ab3639847e7f10019b38c6dd45688b7 +Merge: ffc1d5c 9a0525c +Author: Uwe Kleine-König +Date: Wed May 26 11:41:34 2010 +0200 + + Merge tag 'v0.71' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests commit 9a0525c5b124cb7cd2e39f5c03ce488caa63c3df Author: Clark Williams @@ -557,6 +1121,22 @@ Signed-off-by: John Kacur +commit ffc1d5ca0c178f864c9ea104c81d5cb318a746bf +Author: Uwe Kleine-König +Date: Mon Mar 1 17:02:31 2010 +0100 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit e0aa15c8327a2045ada5ed2d5c288158129ebfdf +Author: Alexander Reichle-Schmehl +Date: Tue Mar 2 11:02:11 2010 +0100 + + Urgency high due to rc bug fix + + Signed-off-by: Uwe Kleine-König + commit 6214410e57d8be054ee58ecdc53cbc4803a3627b Author: Uwe Kleine-König Date: Mon Mar 1 17:51:15 2010 +0100 @@ -608,6 +1188,15 @@ Acked-by: John Kacur +commit bc751a3703dc77f067c4ae61699e89bcbb54054a +Author: Uwe Kleine-König +Date: Mon Mar 1 16:52:16 2010 +0100 + + new patch: rename pip to pip_stress + + Closes: http://bugs.debian.org/572104 + Signed-off-by: Uwe Kleine-König + commit 4dec55015c7fa642e960af084376af09c33b7068 Author: Clark Williams Date: Wed Feb 24 15:20:34 2010 -0600 @@ -907,6 +1496,22 @@ Signed-off-by: Uwe Kleine-König +commit 3732e3e1d0b329ce54f3a7f80b33b0f8872efdf5 +Author: Uwe Kleine-König +Date: Mon Feb 22 15:35:08 2010 +0100 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 881bbe9414e620d80eb0e7c95b36fda1baf698c4 +Author: Uwe Kleine-König +Date: Fri Feb 19 12:36:10 2010 +0100 + + move hwlatdetect to sbindir, not bindir + + Signed-off-by: Uwe Kleine-König + commit fae4312eb2d4cc9022d74053a451b666917c132b Author: Clark Williams Date: Fri Feb 19 09:52:50 2010 -0600 @@ -915,6 +1520,45 @@ Signed-off-by: Clark Williams +commit 6292f80866a8e08314befefb4160b682408fedfc +Author: Uwe Kleine-König +Date: Fri Feb 19 11:51:06 2010 +0100 + + new patch: install install backfire.c to $(srcdir)/backfire/ + + Signed-off-by: Uwe Kleine-König + +commit 8c1f73e365870d00556b9fb0bf56865067c62631 +Author: Uwe Kleine-König +Date: Fri Feb 19 11:48:39 2010 +0100 + + new patch: install hwlatdetect directly into $bindir + + Signed-off-by: Uwe Kleine-König + +commit 86c5135b042ba8771a0793fddd07b3b2d732e070 +Author: Uwe Kleine-König +Date: Thu Feb 18 21:48:25 2010 +0100 + + Add a build script and a hint to it in README.source + + Signed-off-by: Uwe Kleine-König + +commit 1d3ebb0e3b7969512e3b94cffa43c0d8afbbad40 +Author: Uwe Kleine-König +Date: Fri Feb 19 10:53:05 2010 +0100 + + depend on debhelper (>= 7.4.15) because of #570443 + + Debhelper between 7.4.11 and 7.4.15 closed stderr for make resulting in + a dying sed and so leaving temporary files in the working copy. These + make dpkg-source create a new and unwanted patch + debian/patches/debian-changes-0.66-1. + + See http://bugs.debian.org/570443 for the exact details. + + Signed-off-by: Uwe Kleine-König + commit 69ef7d4835a6d196826ac24ddeb1f86ef9602971 Author: Clark Williams Date: Thu Feb 18 14:36:44 2010 -0600 @@ -986,6 +1630,63 @@ Signed-off-by: David Sommerseth +commit c700dc946940df9d95fd90ae00a23fa73f3137b2 +Author: Uwe Kleine-König +Date: Wed Feb 17 10:10:36 2010 +0100 + + depend on libnuma1 (>= 2.0.3) explicitly + + see http://bugs.debian.org/570201 for details + + Signed-off-by: Uwe Kleine-König + +commit 271002573f1e186bf3fca571c388d3912be9ac7e +Author: Uwe Kleine-König +Date: Wed Feb 17 10:04:27 2010 +0100 + + build with libnuma on platforms that have it + + Signed-off-by: Uwe Kleine-König + +commit f9505b39f421196ccdd2d12f7ebd5210e5d3b6f4 +Author: Uwe Kleine-König +Date: Wed Feb 17 10:03:28 2010 +0100 + + switch to dpkg-source 3.0 (quilt) format + + Signed-off-by: Uwe Kleine-König + +commit 5b1ad52759e799cd6a883a2c19076a97fcfd0116 +Author: Uwe Kleine-König +Date: Tue Feb 16 21:54:49 2010 +0100 + + debian/control: bump Standards-Version to 3.8.4 + + Signed-off-by: Uwe Kleine-König + +commit 08f184a6b78dbc3879a6cb4eb5ef90bfa1dc39f6 +Author: Uwe Kleine-König +Date: Tue Feb 16 21:38:35 2010 +0100 + + debian/copyright: update for 0.66 + + Signed-off-by: Uwe Kleine-König + +commit b265f4b751fb6b45e29540c64854fca83de08ba7 +Author: Uwe Kleine-König +Date: Tue Feb 16 21:02:34 2010 +0100 + + document new upstream release in changelog + + Signed-off-by: Uwe Kleine-König + +commit 9eac09c586fac2e7c1ae8a6c3fd551c47d28b586 +Merge: a0904a7 73d48f4 +Author: Uwe Kleine-König +Date: Tue Feb 16 21:00:04 2010 +0100 + + Merge tag 'v0.66' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 73d48f4e04684a376b41525bfed030b7671f03f7 Author: Clark Williams Date: Mon Feb 15 13:10:58 2010 -0600 @@ -2037,6 +2738,68 @@ Signed-off-by: John Kacur +commit a0904a7dfcfcca40299cae7453cf4bde29b8956e +Author: Uwe Kleine-König +Date: Tue Nov 10 15:40:16 2009 +0100 + + add sh4 to architecture list + + Requested-by: Nobuhiro Iwamatsu + Closes: http://bugs.debian.org/555554 + Signed-off-by: Uwe Kleine-König + +commit 2f181d013caf02bbbbf020f7f1e40e85cfe1a81a +Author: Uwe Kleine-König +Date: Thu Oct 29 21:50:29 2009 +0100 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 56e539b50e9645645b470eba0e210ea176a6bbb1 +Author: Uwe Kleine-König +Date: Thu Oct 29 21:35:34 2009 +0100 + + copyright: add rt-migrate-test + + Signed-off-by: Uwe Kleine-König + +commit 134464f980b50783485c170276f606663d7afb3f +Author: Uwe Kleine-König +Date: Thu Oct 29 21:28:10 2009 +0100 + + only build on architectures that didn't FTBFS for 0.51-1 + + These are all Linux archs but hppa. (The latter failed with + + cc -Wall -Wno-nonnull -O2 -D_GNU_SOURCE -D VERSION_STRING=\"0.51\" src/pi_tests/classic_pi.c -o classic_pi -lpthread -lrt + src/pi_tests/classic_pi.c: In function 'main': + src/pi_tests/classic_pi.c:231: warning: implicit declaration of function 'pthread_mutexattr_setprotocol' + src/pi_tests/classic_pi.c:232: error: 'PTHREAD_PRIO_INHERIT' undeclared (first use in this function) + src/pi_tests/classic_pi.c:232: error: (Each undeclared identifier is reported only once + src/pi_tests/classic_pi.c:232: error: for each function it appears in.) + src/pi_tests/classic_pi.c: In function 'setup_thread_attr': + src/pi_tests/classic_pi.c:365: warning: implicit declaration of function 'pthread_attr_setaffinity_np' + + .) + + Signed-off-by: Uwe Kleine-König + +commit 52c471277d6636654b8e1668ea68001fec120c2b +Author: Uwe Kleine-König +Date: Thu Oct 29 21:23:55 2009 +0100 + + document new upstream release in changelog + + Signed-off-by: Uwe Kleine-König + +commit 734c148ced9b943519f5d6d2acac9bf2d7ca737b +Merge: 29794b2 82ca52c +Author: Uwe Kleine-König +Date: Thu Oct 29 21:21:23 2009 +0100 + + Merge tag 'v0.53' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit d0a65eb5a016d789edcc50ea7f94506cf6751730 Author: Clark Williams Date: Wed Oct 7 09:14:20 2009 -0500 @@ -2080,6 +2843,61 @@ added Steven Rostedt's rt-migrate-test +commit 29794b26513f13d376c21f97dc18496f3258b58d +Author: Uwe Kleine-König +Date: Sat Sep 19 16:29:51 2009 +0200 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit e9445e98f840b6f902fd8a31d8a26fbb0129fb0f +Author: Uwe Kleine-König +Date: Sat Sep 19 16:25:10 2009 +0200 + + Bump Standards-Version + + Signed-off-by: Uwe Kleine-König + +commit eff0ebaf1ad5eec520dd01b03ebeae3e6dd9c383 +Author: Uwe Kleine-König +Date: Sat Sep 19 16:18:47 2009 +0200 + + debian/copyright: add scripts/* + + Signed-off-by: Uwe Kleine-König + +commit 68dae8d01aa39b7cfdda2c80842fcbb62ec16894 +Author: Uwe Kleine-König +Date: Sat Sep 19 16:15:09 2009 +0200 + + debian/changelog: document new upstream release + + Signed-off-by: Uwe Kleine-König + +commit 8715d785632e4047d30f91e4af2ccb9852b3095d +Merge: 80d5204 42ab9e7 +Author: Uwe Kleine-König +Date: Sat Sep 19 16:00:42 2009 +0200 + + Merge tag 'v0.51' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + +commit 80d5204174d0f02349d49c26294d5931ddfdcb29 +Author: Uwe Kleine-König +Date: Sat Sep 19 16:00:17 2009 +0200 + + reformat copyright and add authors and years of the copyright + + Signed-off-by: Uwe Kleine-König + +commit 0e59a31bf8882390803a95539ec773c66d8fe14e +Author: Uwe Kleine-König +Date: Thu Sep 17 09:49:28 2009 +0200 + + copyright: fix a typo + + Signed-off-by: Uwe Kleine-König + commit 16707573007db383859cd551c2415afb13be9739 Author: John Kacur Date: Mon Sep 14 16:33:31 2009 +0200 @@ -2148,6 +2966,21 @@ Signed-off-by: Arnaldo Carvalho de Melo +commit 6fc3749d5839de2a0592e2dba1b57db6e7e424e9 +Author: Uwe Kleine-König +Date: Mon Jul 20 21:53:31 2009 +0200 + + document new upstream release in changelog + + Signed-off-by: Uwe Kleine-König + +commit 8356fae7f2b65993bf73fa436337a8cb141304b1 +Merge: 3e9a9e2 a55242c +Author: Uwe Kleine-König +Date: Mon Jul 20 21:49:26 2009 +0200 + + Merge tag 'v0.50' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 3eba62854f39c2e107ecfc8673b88fcd9b04f7a6 Author: Clark Williams Date: Thu Jul 16 10:46:39 2009 -0500 @@ -2230,6 +3063,12 @@ Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Clark Williams +commit 3e9a9e2ec3b6b65f94b9c8a646c0748736c7981e +Author: Uwe Kleine-König +Date: Wed Jul 8 22:05:47 2009 +0200 + + set distribution=unstable for upload to Debian + commit 2ba1f87e05d59287fd09520f4a20d990411888e6 Author: Clark Williams Date: Tue Jul 7 17:15:21 2009 -0500 @@ -2408,6 +3247,21 @@ changed smidetect to hwlatdetect in .gitignore +commit 845d666e514b19f32d104c84ccea3f8bf470a07d +Author: Uwe Kleine-König +Date: Fri Jul 3 15:06:55 2009 +0200 + + update changelog for v0.45 + + Signed-off-by: Uwe Kleine-König + +commit bb44243771a4c85273b0f9830e07729921cefb48 +Merge: 4c7db63 190a00e +Author: Uwe Kleine-König +Date: Fri Jul 3 15:05:06 2009 +0200 + + Merge tag 'v0.45' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 802855c693684fb56ee40af72f6dcffe4a5796c8 Author: Clark Williams Date: Thu Jul 2 17:13:39 2009 -0500 @@ -2506,6 +3360,29 @@ added code to resize window/width when setting the other to a smaller value +commit 4c7db63361902d19f591d5dfab734a5cf1892b45 +Author: Uwe Kleine-König +Date: Tue Jun 30 10:21:38 2009 +0200 + + bump Standards-Version + + Signed-off-by: Uwe Kleine-König + +commit c62677c79218fe71fe5dbec1e5aee14b30426260 +Author: Uwe Kleine-König +Date: Mon Jun 29 21:47:30 2009 +0200 + + changes for 0.43-1 + + Signed-off-by: Uwe Kleine-König + +commit fba5113157bb8fed6639fd3ab54d898e3c7301ad +Merge: 8513914 803a417 +Author: Uwe Kleine-König +Date: Mon Jun 29 21:46:26 2009 +0200 + + Merge tag 'v0.43' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 803a41737827db85a89b8ae3822c3a1c7b64916b Author: Clark Williams Date: Thu Jun 25 09:15:40 2009 -0500 @@ -2525,6 +3402,45 @@ Signed-off-by: Uwe Kleine-König +commit 851391404787a1efa571beb149e06c718d472edb +Merge: 31e7520 a3904bd +Author: Uwe Kleine-König +Date: Mon Jun 22 22:50:52 2009 +0200 + + Merge branch 'master-v0.39' + + Conflicts: + debian/changelog + debian/control + +commit a3904bdcb45949ee31b6dfe0b3dfb70acb9206e2 +Author: Uwe Kleine-König +Date: Mon Jun 22 21:22:47 2009 +0200 + + set distribution=unstable for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 61f89f1a67a060bbf58146cd29bb16b54308e737 +Author: Uwe Kleine-König +Date: Wed Jun 10 21:01:38 2009 +0200 + + conflict with xenomai-runtime + + This closes http://bugs.debian.org/529783 + + Signed-off-by: Uwe Kleine-König + (cherry picked from commit 79861689a3c625629f71b15bbecbbfa26c5a76af) + +commit f34d25cf1e84b4549eb2777c41d1308a1fca8a4f +Author: Uwe Kleine-König +Date: Wed Jun 10 19:33:28 2009 +0200 + + describe Changelog problem when building from the git repo + + Signed-off-by: Uwe Kleine-König + (cherry picked from commit f662b20f8d9f8ad8334ee061642804e082396ac7) + commit 219d5b48b1725a145f1973d61bf31db1c168dea4 Author: Clark Williams Date: Fri Jun 12 15:48:18 2009 -0500 @@ -2543,6 +3459,13 @@ updated hwlatdetect.8 to reflect new options/behavior +commit 31e7520d6021a2c8251f7111a70dbcbe246b08b8 +Merge: 7986168 3e04327 +Author: Uwe Kleine-König +Date: Fri Jun 12 21:56:52 2009 +0200 + + Merge tag 'v0.41' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 3e04327f7fc0be0ee2cb3d8157a4faf43e4b00cb Merge: c7deee8 11f68bd Author: Clark Williams @@ -2581,6 +3504,16 @@ handled module changes +commit 79861689a3c625629f71b15bbecbbfa26c5a76af +Author: Uwe Kleine-König +Date: Wed Jun 10 21:01:38 2009 +0200 + + conflict with xenomai-runtime + + This closes http://bugs.debian.org/529783 + + Signed-off-by: Uwe Kleine-König + commit 77dc91b0669256056b9b0605bae66968e7070e3d Author: Clark Williams Date: Wed Jun 10 13:53:18 2009 -0500 @@ -2593,6 +3526,14 @@ the great renaming: smidetect -> hwlat +commit f662b20f8d9f8ad8334ee061642804e082396ac7 +Author: Uwe Kleine-König +Date: Wed Jun 10 19:33:28 2009 +0200 + + describe Changelog problem when building from the git repo + + Signed-off-by: Uwe Kleine-König + commit 7bb717b666059e1846f0fee55819f09c17a9d521 Author: Clark Williams Date: Tue Jun 9 12:47:07 2009 -0500 @@ -2635,6 +3576,19 @@ Signed-off-by: Uwe Kleine-König +commit b23e8c2de03e6da28377d6a6cc2609a3a0f4da16 +Author: Uwe Kleine-König +Date: Thu May 14 01:05:35 2009 +0200 + + changes for 0.40 + +commit cf3e574ddaf4ed22296239bc2a790440f7f9456a +Merge: 7db0cb0 5aac188 +Author: Uwe Kleine-König +Date: Thu May 14 00:09:51 2009 +0200 + + Merge tag 'v0.40' of git://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests + commit 5aac188d853c78f483342255303086992a533b64 Author: Clark Williams Date: Wed May 13 13:57:11 2009 -0500 @@ -2665,6 +3619,30 @@ initial checkin +commit 7db0cb0788c74bb759082f42f20ae654a4f5d785 +Author: Uwe Kleine-König +Date: Mon May 11 00:19:41 2009 +0200 + + add VCS URL to control + + Signed-off-by: Uwe Kleine-König + +commit 2690bd54c3b61961f72f636bc087846e893c4904 +Author: Alexander Reichle-Schmehl +Date: Sun May 10 23:46:58 2009 +0200 + + change debian revision for upload to Debian + + Signed-off-by: Uwe Kleine-König + +commit 46c6ec68da66fcd583e2a88ab0e69c671051926f +Author: Uwe Kleine-König +Date: Sun May 10 23:17:27 2009 +0200 + + initial debianization + + Signed-off-by: Uwe Kleine-König + commit 9153c383ec7f7b08fd7d50f35d39a1a6c933b579 Author: Clark Williams Date: Wed May 6 09:35:23 2009 -0500 diff -Nru rt-tests-0.74/debian/changelog rt-tests-0.83/debian/changelog --- rt-tests-0.74/debian/changelog 2011-12-03 04:18:51.000000000 +0000 +++ rt-tests-0.83/debian/changelog 2011-12-02 09:40:15.000000000 +0000 @@ -1,8 +1,8 @@ -rt-tests (0.74-1build1) precise; urgency=low +rt-tests (0.83-1) unstable; urgency=low - * No-change rebuild to drop spurious libsfgcc1 dependency on armhf. + * new upstream release - -- Adam Conrad Fri, 02 Dec 2011 21:18:51 -0700 + -- Uwe Kleine-König Fri, 02 Dec 2011 10:40:15 +0100 rt-tests (0.74-1) unstable; urgency=low diff -Nru rt-tests-0.74/debian/patches/debian_adapt_errormsg_on_failure_to_open_device rt-tests-0.83/debian/patches/debian_adapt_errormsg_on_failure_to_open_device --- rt-tests-0.74/debian/patches/debian_adapt_errormsg_on_failure_to_open_device 2011-08-03 13:57:58.000000000 +0000 +++ rt-tests-0.83/debian/patches/debian_adapt_errormsg_on_failure_to_open_device 2011-12-02 09:28:37.000000000 +0000 @@ -10,7 +10,7 @@ --- a/src/backfire/sendme.c +++ b/src/backfire/sendme.c -@@ -212,9 +212,9 @@ +@@ -220,9 +220,9 @@ "try 'modprobe backfire'\n" "If the module backfire can't be loaded, " "it may need to be built first.\n" diff -Nru rt-tests-0.74/debian/patches/debian_has_recent_glibc rt-tests-0.83/debian/patches/debian_has_recent_glibc --- rt-tests-0.74/debian/patches/debian_has_recent_glibc 2011-08-03 13:57:58.000000000 +0000 +++ rt-tests-0.83/debian/patches/debian_has_recent_glibc 2011-12-02 09:29:19.000000000 +0000 @@ -25,7 +25,7 @@ DESTDIR ?= prefix ?= /usr/local bindir ?= $(prefix)/bin -@@ -69,19 +68,19 @@ +@@ -75,19 +74,19 @@ rt-migrate-test: rt-migrate-test.o $(CC) $(CFLAGS) -o $@ $^ $(LIBS) diff -Nru rt-tests-0.74/debian/patches/fix_comment_about_realtime_group.patch rt-tests-0.83/debian/patches/fix_comment_about_realtime_group.patch --- rt-tests-0.74/debian/patches/fix_comment_about_realtime_group.patch 2011-08-03 13:57:58.000000000 +0000 +++ rt-tests-0.83/debian/patches/fix_comment_about_realtime_group.patch 2011-12-02 09:29:25.000000000 +0000 @@ -14,7 +14,7 @@ --- a/src/lib/rt-utils.c +++ b/src/lib/rt-utils.c -@@ -72,7 +72,8 @@ +@@ -264,7 +264,8 @@ param.sched_priority = 1; if (sched_setscheduler(0, SCHED_FIFO, ¶m)) { fprintf(stderr, "Unable to change scheduling policy!\n"); diff -Nru rt-tests-0.74/debian/patches/install_hwlatdetect_into_sbindir rt-tests-0.83/debian/patches/install_hwlatdetect_into_sbindir --- rt-tests-0.74/debian/patches/install_hwlatdetect_into_sbindir 2011-08-03 13:57:58.000000000 +0000 +++ rt-tests-0.83/debian/patches/install_hwlatdetect_into_sbindir 2011-12-02 09:28:09.000000000 +0000 @@ -11,7 +11,7 @@ --- a/Makefile +++ b/Makefile -@@ -11,13 +11,12 @@ +@@ -11,6 +11,7 @@ DESTDIR ?= prefix ?= /usr/local bindir ?= $(prefix)/bin @@ -19,6 +19,8 @@ mandir ?= $(prefix)/share/man srcdir ?= $(prefix)/src +@@ -22,8 +23,6 @@ + CFLAGS = -D_GNU_SOURCE -Wall -Wno-nonnull -Isrc/include -PYLIB := $(shell python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()') @@ -26,7 +28,7 @@ ifndef DEBUG CFLAGS += -O2 else -@@ -113,10 +112,7 @@ +@@ -119,10 +118,7 @@ mkdir -p "$(DESTDIR)$(bindir)" "$(DESTDIR)$(mandir)/man4" mkdir -p "$(DESTDIR)$(srcdir)" "$(DESTDIR)$(mandir)/man8" cp $(TARGETS) "$(DESTDIR)$(bindir)" diff -Nru rt-tests-0.74/debian/patches/manpage_pip_stress.patch rt-tests-0.83/debian/patches/manpage_pip_stress.patch --- rt-tests-0.74/debian/patches/manpage_pip_stress.patch 2011-08-03 13:57:58.000000000 +0000 +++ rt-tests-0.83/debian/patches/manpage_pip_stress.patch 2011-12-02 09:29:11.000000000 +0000 @@ -41,7 +41,7 @@ +was written by John Kacur . --- a/Makefile +++ b/Makefile -@@ -118,6 +118,7 @@ +@@ -124,6 +124,7 @@ gzip src/backfire/backfire.4 -c >"$(DESTDIR)$(mandir)/man4/backfire.4.gz" gzip src/cyclictest/cyclictest.8 -c >"$(DESTDIR)$(mandir)/man8/cyclictest.8.gz" gzip src/pi_tests/pi_stress.8 -c >"$(DESTDIR)$(mandir)/man8/pi_stress.8.gz" diff -Nru rt-tests-0.74/Makefile rt-tests-0.83/Makefile --- rt-tests-0.74/Makefile 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/Makefile 2011-12-02 09:39:14.000000000 +0000 @@ -1,4 +1,4 @@ -VERSION_STRING = 0.74 +VERSION_STRING = 0.83 sources = cyclictest.c signaltest.c pi_stress.c rt-migrate-test.c \ ptsematest.c sigwaittest.c svsematest.c pmqtest.c sendme.c \ @@ -14,6 +14,12 @@ mandir ?= $(prefix)/share/man srcdir ?= $(prefix)/src +machinetype = $(shell uname -m | \ + sed -e 's/i.86/i386/' -e 's/mips.*/mips/' -e 's/ppc.*/powerpc/') +ifneq ($(filter x86_64 i386 ia64 mips powerpc,$(machinetype)),) +NUMA := 1 +endif + CFLAGS = -D_GNU_SOURCE -Wall -Wno-nonnull -Isrc/include PYLIB := $(shell python -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()') @@ -24,7 +30,7 @@ CFLAGS += -O0 -g endif -ifdef NUMA +ifeq ($(NUMA),1) CFLAGS += -DNUMA NUMA_LIBS = -lnuma endif diff -Nru rt-tests-0.74/src/cyclictest/commit.txt rt-tests-0.83/src/cyclictest/commit.txt --- rt-tests-0.74/src/cyclictest/commit.txt 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/src/cyclictest/commit.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,6 +0,0 @@ -[cyclictest] fixes for ftrace options - -Miscellaneous fixes for ftrace option handling. Add an enumeration to -indicate when the -T/--tracer option is specified. Change from using -the tracing_enabled file to tracing_on to turn tracing on/off. Add the -latency-format option for nicer latency output. diff -Nru rt-tests-0.74/src/cyclictest/cyclictest.c rt-tests-0.83/src/cyclictest/cyclictest.c --- rt-tests-0.74/src/cyclictest/cyclictest.c 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/src/cyclictest/cyclictest.c 2011-12-02 09:39:14.000000000 +0000 @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -105,15 +106,18 @@ #define KVARNAMELEN 32 #define KVALUELEN 32 +int enable_events; + enum { NOTRACE, - EVENTS, CTXTSWITCH, IRQSOFF, PREEMPTOFF, - IRQPREEMPTOFF, + PREEMPTIRQSOFF, WAKEUP, WAKEUPRT, + LATENCY, + FUNCTION, CUSTOM, }; @@ -154,7 +158,7 @@ static int shutdown; static int tracelimit = 0; -static int ftrace = 1; +static int ftrace = 0; static int kernelversion; static int verbose = 0; static int oscope_reduction = 1; @@ -172,6 +176,7 @@ static pthread_mutex_t break_thread_id_lock = PTHREAD_MUTEX_INITIALIZER; static pid_t break_thread_id = 0; +static uint64_t break_thread_value = 0; /* Backup of kernel variables that we modify */ static struct kvars { @@ -186,6 +191,39 @@ static int traceopt_count; static int traceopt_size; +static int latency_target_fd = -1; +static int32_t latency_target_value = 0; + +/* Latency trick + * if the file /dev/cpu_dma_latency exists, + * open it and write a zero into it. This will tell + * the power management system not to transition to + * a high cstate (in fact, the system acts like idle=poll) + * When the fd to /dev/cpu_dma_latency is closed, the behavior + * goes back to the system default. + * + * Documentation/power/pm_qos_interface.txt + */ +static void set_latency_target(void) +{ + struct stat s; + int ret; + + if (stat("/dev/cpu_dma_latency", &s) == 0) { + latency_target_fd = open("/dev/cpu_dma_latency", O_RDWR); + if (latency_target_fd == -1) + return; + ret = write(latency_target_fd, &latency_target_value, 4); + if (ret == 0) { + printf("# error setting cpu_dma_latency to %d!: %s\n", latency_target_value, strerror(errno)); + close(latency_target_fd); + return; + } + printf("# /dev/cpu_dma_latency set to %dus\n", latency_target_value); + } +} + + enum kernelversion { KV_NOT_SUPPORTED, KV_26_LT18, @@ -203,7 +241,6 @@ static char traceroptions[MAX_PATH]; static int trace_fd = -1; -static int tracemark_fd = -1; static int kernvar(int mode, const char *name, char *value, size_t sizeofvalue) { @@ -333,15 +370,6 @@ return stat(path, &sbuf) ? 0 : 1; } -static void tracemark(char *comment) -{ - /* bail out if we're not tracing */ - /* or if the kernel doesn't support trace_mark */ - if (!tracelimit || kernelversion < KV_26_33 || tracemark_fd < 0) - return; - write(tracemark_fd, comment, strlen(comment)); -} - void tracing(int on) { if (on) { @@ -369,44 +397,11 @@ static int settracer(char *tracer) { - char filename[MAX_PATH]; - char tracers[MAX_PATH]; - char *name; - FILE *fp; - int ret = -1; - int len; - const char *delim = " \t\n"; - char *prefix = get_debugfileprefix(); - - /* Make sure tracer is available */ - strncpy(filename, prefix, sizeof(filename)); - strncat(filename, "available_tracers", - sizeof(filename) - strlen(prefix)); - - fp = fopen(filename, "r"); - if (!fp) - return -1; - - if (!(len = fread(tracers, 1, sizeof(tracers), fp))) { - fclose(fp); - return -1; - } - tracers[len] = '\0'; - fclose(fp); - - name = strtok(tracers, delim); - while (name) { - if (strcmp(name, tracer) == 0) { - ret = 0; - break; - } - name = strtok(NULL, delim); - } - - if (!ret) + if (valid_tracer(tracer)) { setkernvar("current_tracer", tracer); - - return ret; + return 0; + } + return -1; } static void setup_tracer(void) @@ -414,6 +409,9 @@ if (!tracelimit) return; + if (mount_debugfs(NULL)) + fatal("could not mount debugfs"); + if (kernelversion >= KV_26_33) { char testname[MAX_PATH]; @@ -427,30 +425,36 @@ fileprefix = procfileprefix; if (kernelversion >= KV_26_33) { - char buffer[32]; int ret; if (trace_file_exists("tracing_enabled") && !trace_file_exists("tracing_on")) setkernvar("tracing_enabled", "1"); - sprintf(buffer, "%d", tracelimit); - setkernvar("tracing_thresh", buffer); - /* ftrace_enabled is a sysctl variable */ + /* turn it on if you're doing anything but nop or event tracing */ + fileprefix = procfileprefix; - if (ftrace) + if (tracetype) setkernvar("ftrace_enabled", "1"); else setkernvar("ftrace_enabled", "0"); fileprefix = get_debugfileprefix(); + /* + * Set default tracer to nop. + * this also has the nice side effect of clearing out + * old traces. + */ + ret = settracer("nop"); + switch (tracetype) { case NOTRACE: - if (ftrace) - ret = settracer(functiontracer); - else - ret = 0; + /* no tracer specified, use events */ + enable_events = 1; + break; + case FUNCTION: + ret = settracer("function"); break; case IRQSOFF: ret = settracer("irqsoff"); @@ -458,16 +462,17 @@ case PREEMPTOFF: ret = settracer("preemptoff"); break; - case IRQPREEMPTOFF: + case PREEMPTIRQSOFF: ret = settracer("preemptirqsoff"); break; - case EVENTS: - /* per rostedt: use nop tracer with event tracing */ - setkernvar("events/enable", "1"); - ret = settracer("nop"); - break; case CTXTSWITCH: - ret = settracer("sched_switch"); + if (valid_tracer("sched_switch")) + ret = settracer("sched_switch"); + else { + if ((ret = event_enable("sched/sched_wakeup"))) + break; + ret = event_enable("sched/sched_switch"); + } break; case WAKEUP: ret = settracer("wakeup"); @@ -488,6 +493,10 @@ break; } + if (enable_events) + /* turn on all events */ + event_enable_all(); + if (ret) fprintf(stderr, "Requested tracer '%s' not available\n", tracer); @@ -523,13 +532,6 @@ fatal("unable to open %s for tracing", path); } - /* open the tracemark file descriptor */ - if (tracemark_fd == -1) { - char path[MAX_PATH]; - strcat(strcpy(path, fileprefix), "trace_marker"); - if ((tracemark_fd = open(path, O_WRONLY)) == -1) - warn("unable to open trace_marker file: %s\n", path); - } } else { setkernvar("trace_all_cpus", "1"); setkernvar("trace_freerunning", "1"); @@ -643,8 +645,11 @@ /* Get current time */ clock_gettime(par->clock, &now); + next = now; - next.tv_sec++; + next.tv_sec += interval.tv_sec; + next.tv_nsec += interval.tv_nsec; + tsnorm(&next); if (duration) { memset(&stop, 0, sizeof(stop)); /* grrr */ @@ -672,8 +677,6 @@ stat->threadstarted++; - tracemark("entering time loop"); - while (!shutdown) { uint64_t diff; @@ -719,8 +722,6 @@ clock_gettime(par->clock, &now); - tracemark("out of critical loop, calculating"); - if (use_nsecs) diff = calcdiff_ns(now, next); else @@ -739,12 +740,12 @@ if (!stopped && tracelimit && (diff > tracelimit)) { stopped++; - tracemark("hit latency threshold"); tracing(0); shutdown++; pthread_mutex_lock(&break_thread_id_lock); if (break_thread_id == 0) break_thread_id = stat->tid; + break_thread_value = diff; pthread_mutex_unlock(&break_thread_id_lock); } stat->act = diff; @@ -772,7 +773,6 @@ if (par->max_cycles && par->max_cycles == stat->cycles) break; - tracemark("heading back to sleep"); } out: @@ -983,9 +983,10 @@ {"traceopt", required_argument, NULL, 'O'}, {"smp", no_argument, NULL, 'S'}, {"numa", no_argument, NULL, 'U'}, + {"latency", required_argument, NULL, 'e'}, {NULL, 0, NULL, 0} }; - int c = getopt_long(argc, argv, "a::b:Bc:Cd:Efh:H:i:Il:MnNo:O:p:PmqrsSt::uUvD:wWT:y:", + int c = getopt_long(argc, argv, "a::b:Bc:Cd:Efh:H:i:Il:MnNo:O:p:PmqrsSt::uUvD:wWT:y:e:", long_options, &option_index); if (c == -1) break; @@ -1006,16 +1007,24 @@ } break; case 'b': tracelimit = atoi(optarg); break; - case 'B': tracetype = IRQPREEMPTOFF; break; + case 'B': tracetype = PREEMPTIRQSOFF; break; case 'c': clocksel = atoi(optarg); break; case 'C': tracetype = CTXTSWITCH; break; case 'd': distance = atoi(optarg); break; - case 'E': tracetype = EVENTS; break; - case 'f': ftrace = 1; break; + case 'E': enable_events = 1; break; + case 'f': tracetype = FUNCTION; ftrace = 1; break; case 'H': histofall = 1; /* fall through */ case 'h': histogram = atoi(optarg); break; case 'i': interval = atoi(optarg); break; - case 'I': tracetype = IRQSOFF; break; + case 'I': + if (tracetype == PREEMPTOFF) { + tracetype = PREEMPTIRQSOFF; + strncpy(tracer, "preemptirqsoff", sizeof(tracer)); + } else { + tracetype = IRQSOFF; + strncpy(tracer, "irqsoff", sizeof(tracer)); + } + break; case 'l': max_cycles = atoi(optarg); break; case 'n': use_nanosleep = MODE_CLOCK_NANOSLEEP; break; case 'N': use_nsecs = 1; break; @@ -1026,7 +1035,15 @@ if (policy != SCHED_FIFO && policy != SCHED_RR) policy = SCHED_FIFO; break; - case 'P': tracetype = PREEMPTOFF; break; + case 'P': + if (tracetype == IRQSOFF) { + tracetype = PREEMPTIRQSOFF; + strncpy(tracer, "preemptirqsoff", sizeof(tracer)); + } else { + tracetype = PREEMPTOFF; + strncpy(tracer, "preemptoff", sizeof(tracer)); + } + break; case 'q': quiet = 1; break; case 'r': timermode = TIMER_RELTIME; break; case 's': use_system = MODE_SYS_OFFSET; break; @@ -1076,6 +1093,13 @@ warn("ignoring --numa or -U\n"); #endif break; + case 'e': /* power management latency target value */ + /* note: default is 0 (zero) */ + latency_target_value = atoi(optarg); + if (latency_target_value < 0) + latency_target_value = 0; + break; + case '?': display_help(0); break; } } @@ -1321,13 +1345,15 @@ /* Checks if numa is on, program exits if numa on but not available */ numa_on_and_available(); - /* lock all memory (prevent paging) */ + /* lock all memory (prevent swapping) */ if (lockall) if (mlockall(MCL_CURRENT|MCL_FUTURE) == -1) { perror("mlockall"); goto out; } + /* use the /dev/cpu_dma_latency trick if it's there */ + set_latency_target(); kernelversion = check_kernel(); @@ -1340,7 +1366,7 @@ warn("High resolution timers not available\n"); mode = use_nanosleep + use_system; - + sigemptyset(&sigset); sigaddset(&sigset, signum); sigprocmask (SIG_BLOCK, &sigset, NULL); @@ -1533,8 +1559,10 @@ if (tracelimit) { print_tids(parameters, num_threads); - if (break_thread_id) + if (break_thread_id) { printf("# Break thread: %d\n", break_thread_id); + printf("# Break value: %lu\n", break_thread_value); + } } @@ -1555,12 +1583,20 @@ if (tracelimit) tracing(0); + /* close any tracer file descriptors */ - if (tracemark_fd >= 0) - close(tracemark_fd); if (trace_fd >= 0) close(trace_fd); + /* turn off all events */ + event_disable_all(); + + /* turn off the function tracer */ + fileprefix = procfileprefix; + if (tracetype) + setkernvar("ftrace_enabled", "0"); + fileprefix = get_debugfileprefix(); + /* unlock everything */ if (lockall) munlockall(); @@ -1569,5 +1605,9 @@ if (kernelversion < KV_26_33) restorekernvars(); + /* close the latency_target_fd if it's open */ + if (latency_target_fd >= 0) + close(latency_target_fd); + exit(ret); } diff -Nru rt-tests-0.74/src/hackbench/hackbench.c rt-tests-0.83/src/hackbench/hackbench.c --- rt-tests-0.74/src/hackbench/hackbench.c 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/src/hackbench/hackbench.c 2011-12-02 09:39:14.000000000 +0000 @@ -28,16 +28,21 @@ #include #include #include +#include static unsigned int datasize = 100; static unsigned int loops = 100; static unsigned int num_groups = 10; static unsigned int num_fds = 20; +static unsigned int fifo = 0; /* * 0 means thread mode and others mean process (default) */ -static unsigned int process_mode = 1; +#define THREAD_MODE 0 +#define PROCESS_MODE 1 + +static unsigned int process_mode = PROCESS_MODE; static int use_pipes = 0; @@ -159,7 +164,7 @@ unsigned int i; reset_worker_signals(); - if (process_mode) + if (process_mode == PROCESS_MODE) close(ctx->in_fds[1]); /* Wait for start... */ @@ -192,7 +197,7 @@ pid_t childpid; switch (process_mode) { - case 1: /* process mode */ + case PROCESS_MODE: /* process mode */ /* Fork the sender/receiver child. */ switch ((childpid = fork())) { case -1: @@ -206,7 +211,7 @@ child.pid = childpid; break; - case 0: /* threaded mode */ + case THREAD_MODE: /* threaded mode */ if (pthread_attr_init(&attr) != 0) { sneeze("pthread_attr_init()"); child.error = -1; @@ -231,6 +236,15 @@ return child; } +void signal_workers(childinfo_t *children, unsigned int num_children) +{ + int i; + printf("signaling %d worker threads to terminate\n", num_children); + for (i=0; i < num_children; i++) { + kill(children[i].pid, SIGTERM); + } +} + unsigned int reap_workers(childinfo_t *child, unsigned int totchld, unsigned int dokill) { unsigned int i, rc = 0; @@ -240,13 +254,13 @@ if (dokill) { fprintf(stderr, "sending SIGTERM to all child processes\n"); signal(SIGTERM, SIG_IGN); - kill(0, SIGTERM); + signal_workers(child, totchld); } for( i = 0; i < totchld; i++ ) { int pid; switch( process_mode ) { - case 1: /* process mode */ + case PROCESS_MODE: /* process mode */ fflush(stdout); pid = wait(&status); if (pid == -1 && errno == ECHILD) @@ -254,7 +268,7 @@ if (!WIFEXITED(status)) rc++; break; - case 0: /* threaded mode */ + case THREAD_MODE: /* threaded mode */ err = pthread_join(child[i].threadid, &thr_status); if( err != 0 ) { sneeze("pthread_join()"); @@ -307,7 +321,7 @@ return (i > 0 ? i-1 : 0); } snd_ctx->out_fds[i] = fds[1]; - if (process_mode) + if (process_mode == PROCESS_MODE) close(fds[0]); } @@ -324,7 +338,7 @@ } /* Close the fds we have left */ - if (process_mode) + if (process_mode == PROCESS_MODE) for (i = 0; i < num_fds; i++) close(snd_ctx->out_fds[i]); @@ -347,11 +361,12 @@ {"fds", required_argument, NULL, 'f'}, {"threads", no_argument, NULL, 'T'}, {"processes", no_argument, NULL, 'P'}, + {"fifo", no_argument, NULL, 'F'}, {"help", no_argument, NULL, 'h'}, {NULL, 0, NULL, 0} }; - int c = getopt_long(argc, argv, "ps:l:g:f:TPh", + int c = getopt_long(argc, argv, "ps:l:g:f:TPFh", longopts, &optind); if (c == -1) { break; @@ -390,10 +405,14 @@ break; case 'T': - process_mode = 0; + process_mode = THREAD_MODE; break; case 'P': - process_mode = 1; + process_mode = PROCESS_MODE; + break; + + case 'F': + fifo = 1; break; case 'h': @@ -423,11 +442,12 @@ struct timeval start, stop, diff; int readyfds[2], wakefds[2]; char dummy; + struct sched_param sp; process_options (argc, argv); printf("Running in %s mode with %d groups using %d file descriptors each (== %d tasks)\n", - (process_mode == 0 ? "threaded" : "process"), + (process_mode == THREAD_MODE ? "threaded" : "process"), num_groups, 2*num_fds, num_groups*(num_fds*2)); printf("Each sender will pass %d messages of %d bytes\n", loops, datasize); fflush(NULL); @@ -455,6 +475,13 @@ } total_children += c; } + if (fifo) { + /* make main a realtime task so that we can manage the workers */ + sp.sched_priority = 1; + if (sched_setscheduler(0, SCHED_FIFO, &sp) < 0) + barf("can't change to fifo in main"); + } + /* Wait for everyone to be ready */ for (i = 0; i < total_children; i++) if (read(readyfds[0], &dummy, 1) != 1) { @@ -470,8 +497,11 @@ barf("Writing to start senders"); } } - else + else { fprintf(stderr, "longjmp'ed out, reaping children\n"); + signal(SIGINT, SIG_IGN); + signal(SIGTERM, SIG_IGN); + } /* Reap them all */ reap_workers(child_tab, total_children, signal_caught); diff -Nru rt-tests-0.74/src/include/rt-utils.h rt-tests-0.83/src/include/rt-utils.h --- rt-tests-0.74/src/include/rt-utils.h 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/src/include/rt-utils.h 2011-12-02 09:39:14.000000000 +0000 @@ -8,8 +8,18 @@ int check_privs(void); char *get_debugfileprefix(void); +int mount_debugfs(char *); +int get_tracers(char ***); +int valid_tracer(char *); + +int setevent(char *event, char *val); +int event_enable(char *event); +int event_disable(char *event); +int event_enable_all(void); +int event_disable_all(void); void warn(char *fmt, ...); void fatal(char *fmt, ...); +void info(char *fmt, ...); #endif /* __RT_UTILS.H */ diff -Nru rt-tests-0.74/src/lib/rt-utils.c rt-tests-0.83/src/lib/rt-utils.c --- rt-tests-0.74/src/lib/rt-utils.c 2011-08-18 14:12:49.000000000 +0000 +++ rt-tests-0.83/src/lib/rt-utils.c 2011-12-02 09:39:14.000000000 +0000 @@ -11,6 +11,11 @@ #include #include #include +#include +#include +#include +#include +#include #include "rt-utils.h" static char debugfileprefix[MAX_PATH]; @@ -23,33 +28,220 @@ char type[100]; FILE *fp; int size; + int found = 0; + struct stat s; if (debugfileprefix[0] != '\0') - return debugfileprefix; + goto out; + /* look in the "standard" mount point first */ + if ((stat("/sys/kernel/debug/tracing", &s) == 0) && S_ISDIR(s.st_mode)) { + strcpy(debugfileprefix, "/sys/kernel/debug/tracing/"); + goto out; + } + + /* now look in the "other standard" place */ + if ((stat("/debug/tracing", &s) == 0) && S_ISDIR(s.st_mode)) { + strcpy(debugfileprefix, "/debug/tracing/"); + goto out; + } + + /* oh well, parse /proc/mounts and see if it's there */ if ((fp = fopen("/proc/mounts","r")) == NULL) - return debugfileprefix; + goto out; while (fscanf(fp, "%*s %" STR(MAX_PATH) "s %99s %*s %*d %*d\n", debugfileprefix, type) == 2) { - if (strcmp(type, "debugfs") == 0) + if (strcmp(type, "debugfs") == 0) { + found = 1; + break; + } + /* stupid check for systemd-style autofs mount */ + if ((strcmp(debugfileprefix, "/sys/kernel/debug") == 0) && + (strcmp(type, "systemd") == 0)) { + found = 1; break; + } } fclose(fp); - if (strcmp(type, "debugfs") != 0) { + if (!found) { debugfileprefix[0] = '\0'; - return debugfileprefix; + goto out; } size = sizeof(debugfileprefix) - strlen(debugfileprefix); strncat(debugfileprefix, "/tracing/", size); +out: return debugfileprefix; } +int mount_debugfs(char *path) +{ + char *mountpoint = path; + char cmd[MAX_PATH]; + char *prefix; + int ret; + + /* if it's already mounted just return */ + prefix = get_debugfileprefix(); + if (strlen(prefix) != 0) { + info("debugfs mountpoint: %s\n", prefix); + return 0; + } + if (!mountpoint) + mountpoint = "/sys/kernel/debug"; + + sprintf(cmd, "mount -t debugfs debugfs %s", mountpoint); + ret = system(cmd); + if (ret != 0) { + fprintf(stderr, "Error mounting debugfs at %s: %s\n", mountpoint, strerror(errno)); + return -1; + } + return 0; + +} + +static char **tracer_list; +static char *tracer_buffer; +static int num_tracers; +#define CHUNKSZ 1024 + +/* + * return a list of the tracers configured into the running kernel + */ + +int get_tracers(char ***list) +{ + int ret; + FILE *fp; + char buffer[CHUNKSZ]; + char *prefix = get_debugfileprefix(); + char *tmpbuf = NULL; + char *ptr; + int tmpsz = 0; + + /* if we've already parse it, return what we have */ + if (tracer_list) { + *list = tracer_list; + return num_tracers; + } + + /* open the tracing file available_tracers */ + sprintf(buffer, "%savailable_tracers", prefix); + if ((fp = fopen(buffer, "r")) == NULL) + fatal ("Can't open %s for reading\n", buffer); + + /* allocate initial buffer */ + ptr = tmpbuf = malloc(CHUNKSZ); + if (ptr == NULL) + fatal("error allocating initial space for tracer list\n"); + + /* read in the list of available tracers */ + while((ret = fread(buffer, sizeof(char), CHUNKSZ, fp))) { + if ((ptr+ret+1) > (tmpbuf+tmpsz)) { + tmpbuf = realloc(tmpbuf, tmpsz + CHUNKSZ); + if (tmpbuf == NULL) + fatal("error allocating space for list of valid tracers\n"); + tmpsz += CHUNKSZ; + } + strncpy(ptr, buffer, ret); + ptr += ret; + } + fclose(fp); + if (tmpsz == 0) + fatal("error reading available tracers\n"); + + tracer_buffer = tmpbuf; + + /* get a buffer for the pointers to tracers */ + if (!(tracer_list = malloc(sizeof(char *)))) + fatal ("error allocatinging tracer list buffer\n"); + + /* parse the buffer */ + ptr = strtok(tmpbuf, " \t\n\r"); + do { + tracer_list[num_tracers++] = ptr; + tracer_list = realloc(tracer_list, sizeof(char*)*(num_tracers+1)); + tracer_list[num_tracers] = NULL; + } while ((ptr = strtok(NULL, " \t\n\r")) != NULL); + + /* return the list and number of tracers */ + *list = tracer_list; + return num_tracers; +} + + +/* + * return zero if tracername is not a valid tracer, non-zero if it is + */ + +int valid_tracer(char *tracername) +{ + char **list; + int ntracers; + int i; + + ntracers = get_tracers(&list); + if (ntracers == 0 || tracername == NULL) + return 0; + for (i = 0; i < ntracers; i++) + if (strncmp(list[i], tracername, strlen(list[i])) == 0) + return 1; + return 0; +} + +/* + * enable event tracepoint + */ +int setevent(char *event, char *val) +{ + char *prefix = get_debugfileprefix(); + char buffer[MAX_PATH]; + int fd; + int ret; + + sprintf(buffer, "%s%s", prefix, event); + if ((fd = open(buffer, O_WRONLY)) < 0) { + warn("unable to open %s\n", buffer); + return -1; + } + if ((ret = write(fd, val, strlen(val))) < 0) { + warn("unable to write %s to %s\n", val, buffer); + close(fd); + return -1; + } + close(fd); + return 0; +} + +int event_enable_all(void) +{ + return setevent("events/enable", "1"); +} + +int event_disable_all(void) +{ + return setevent("events/enable", "0"); +} + +int event_enable(char *event) +{ + char path[MAX_PATH]; + sprintf(path, "events/%s/enable", event); + return setevent(path, "1"); +} + +int event_disable(char *event) +{ + char path[MAX_PATH]; + sprintf(path, "events/%s/enable", event); + return setevent(path, "0"); +} + int check_privs(void) { int policy = sched_getscheduler(0); @@ -80,6 +272,16 @@ return sched_setscheduler(0, policy, &old_param); } +void info(char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + fputs("INFO: ", stderr); + vfprintf(stderr, fmt, ap); + va_end(ap); +} + void warn(char *fmt, ...) { va_list ap;