File update_rtcheck_to_0_7_5-bnc431066.diff of Package ibmrtpkgs

diff -Napur ibmrtpkgs-2/rtcheck/CHANGELOG ibmrtpkgs-2.new/rtcheck/CHANGELOG
--- ibmrtpkgs-2/rtcheck/CHANGELOG	2008-11-04 20:29:58.457931000 +0100
+++ ibmrtpkgs-2.new/rtcheck/CHANGELOG	2008-11-04 16:47:00.000000000 +0100
@@ -1,91 +1,75 @@
-November 3rd, 2008
-Alex Tsariounov <alext@novell.com>
-- Update to version 0.7-4 as shipped by IBM on bnc#431066
-- Remove version number from rtcheck directory
-
-0.6-5:
-May 2nd, 2008
-"Vernon Mauery <vernux@us.ibm.com>"
-* Added fflush() for printf's with no trailing '\n'
-
-0.6-4:
-June 1st, 2007
-"Timothy R. Chavez" <tim.chavez@linux.vnet.ibm.com>
-* Fixed print_help() to print to "stdout" rather than "stderr"
-  and exit with success rather than failure
-* Makefile will now update /etc/rc.local to call 'rtcheck'
-  per-boot upon installation of 'rtcheck'
-June 5th, 2007
-* Added exit(0) to -V (print version) option
-* Added back check for IRQs as threads (this time using the
-  correct return code) for verify_preempt_rt()
-* Removed 'len' variable in verify_mlock().  Using BUF_LEN
-  is sufficient now.
-* Define __USE_UNIX98 and _XOPEN_SOURCE in Makefile via -D
-  rather then hardcoding it into 'rtcheck'
-
-0.6-3:
-May 31st, 2007
-"Timothy R. Chavez" <tim.chavez@linux.vnet.ibm.com>
-* Simplified file read in fetch_rtcheck_status() with fread()
-* Added flags to display Version, ignore cache result and
-  Force execution of all tests, and display a Help message
-* Fixed array "underflow" bug in verify_mlock()
-* Removed duplicate sched_getparam() test in verify_sched()
-* Replaced references to RHEL5-RT with RHEL-RT
-* Removed references to Java in verbose message output
-* Corrected spelling mistakes
-* Reverted verify_preempt_rt() test with check for
-  /proc/loadavgrt; rtcheck now relies on /proc to make
-  determinations on rt capabilities - oh well
-* Added Makefile, README, and CHANGELOG
-* Fixed return values on do_[user|global]_tests()
-* Removed superfulous whitespace
-
-0.6-2:
-May 30th, 2007
-"Timothy R. Chavez" <tim.chavez@linux.vnet.ibm.com>
-* Removed references to Java, making 'rtcheck' more generic
-  real-time capabilities checker
-* Changed verify_sched() to test for SCHED_FIFO rather than
-  SCHED_RR; stronger statement
-* Added check to verify_sched() to ensure real-time scheduling
-  policy took
-* Simplified file read when getting 'boot_id' of system
-* Added warning on failed write to cache file
-* Fixed minor nits (e.g. using exit() in main function rather
-  return)
-* Removed legacy cruft (e.g. unused #define's) from 0.5 and
-  0.6-1
-* Removed any attempt to write result status of Global tests
-  to cache file if the system 'boot_id' was not successfully
-  retrieved.  The cache _must_ be validated with a 'boot_id'.
-"Vernon Mauery" <vernux@us.ibm.com>
-* Fixed buffer overflows on 'boot_id''s
-* Separated tests into two categories: global and user.  Only
-  Global test results can be safely cached.  User test results
-  may very, depending on the user executing 'rtcheck'.
-
-0.6-1:
-May 29th, 2007
-"Timothy R. Chavez" <tim.chavez@linux.vnet.ibm.com>
-* Major revision of 'rtcheck' to move away from /proc interface
-  and symbol maps.
-  - Added ability to cache result status.  A cached value will
-    be used, if possible.  If cached value a success, no tests
-    need to be re-run.  In normal case, allows 'rtcheck' to be
-    run _once_ per-boot.
-  - Lookup symbols and make actual function calls for each symbol
-    to determine user and kernel support for Robust Mutexes
-  - Sample time measurements of nanosleep to determine presence
-    of HRTimers based on timer resolution.
-  - Determine if IRQs are threads to deduce CONFIG_PREEMPT_RT=y
-    on running system
-
-0.5:
-May 7th, 2007
-"Timothy R. Chavez" <tim.chavez@linux.vnet.ibm.com>
-* Added kernel symbol checker to Robust Mutex test
-* Removed 'uname' check with a test to determine
-  CONFIG_PREEMPT_RT=y for running system using /proc/loadavgrt
-* Added HRTimer discovery test using /proc/timer_list
+rtcheck (0.7.5)  
+  * Fix packaging issues
+  * add changelog and init script
+ -- Vernon Mauery <vernux@us.ibm.com>  Mon, 3 Nov 2008 16:09:01 -0700
+
+rtcheck (0.7.4)
+  * Fix the 0us output for timer resolution test in rtcheck
+ -- Vernon Mauery <vernux@us.ibm.com>  Thu, 25 Sep 2008 14:09:01 -0700
+
+rtcheck (0.7.3)
+  * Re-run global tests if boot_id doesn't match
+  * Don't abort on sched and mlockall, continue and put errors in retcode
+ -- Darren Hart <dvhltc@us.ibm.com>  Mon, 15 Sep 2008 12:32:16 -0700
+
+rtcheck (0.7.2)
+  * Rework hrtimer testing to use clock_nanosleep() and clock_gettime()
+    instead of gettimeofday().  Also removed min/max testing.
+  * Run rtcheck as SCHED_FIFO and mlockall()
+  * Clean up output of rtcheck to maintain consistency
+  * Clean up the usage and help routines
+ -- Darren Hart <dvhltc@us.ibm.com>  Mon, 15 Sep 2008 22:11:10 +0000
+
+rtcheck (0.6.3)
+  * Simplified file read in fetch_rtcheck_status() with fread()
+  * Added flags to display Version, ignore cache result and
+    force execution of all tests, and display a Help message
+  * Fixed array "underflow" bug in verify_lick()
+  * Removed duplicate sched_getparam() test in verify_sched()
+  * Replaced references to RHEL5-RT with RHEL-RT
+  * Removed references to Java in verbose message output
+  * Corrected spelling mistakes
+  * Reverted verify_preempt_rt() test with check for
+    /proc/loadavgrt; rtcheck now relies on /proc to make
+    determinations on rt capabilities - oh well
+  * Added Makefile, README, and CHANGELOG
+  * Fixed return values on do_[user|global]_tests()
+  * cosmetic cleanups
+ -- Timothy R. Chavez <tim.chavez@linux.vnet.ibm.com> Wed, 30 May 2007 13:29:38 -0500
+
+rtcheck (0.6.2)
+  * split tests into global tests and per-user tests
+  * global tests get run at boot and cached
+  * per-user tests get run every time
+ -- Vernon Mauery <vernux@us.ibm.com> Wed, 30 May 2007 16:03:12 -0700
+
+rtcheck (0.6.1)
+  * Updated with feedback from partners
+  * mlock a full 32K of memory
+  * check clock resolution using a median value
+ -- Timothy R. Chavez <tim.chavez@linux.vnet.ibm.com> Wed, 30 May 2007 13:29:38 -0500
+
+rtcheck (0.6)
+  * run once at boot and cache results
+  * validate cache using /proc/boot_id
+ -- Timothy R. Chavez <tim.chavez@linux.vnet.ibm.com> Tue, 29 May 2007 22:38:36 -0500
+
+rtcheck (0.5)
+  * Major rewrites to test rather than inspect
+  * look up kernel symbols in /proc/kallsyms
+  * look up glibc symbols with dlsym
+  * verify memlock works
+  * verify real-time scheduling capability
+  * verify real-time kernel by looking for threaded interrupts
+  * verify resolution on hrtimers
+ -- Timothy R. Chavez <tim.chavez@linux.vnet.ibm.com> Mon, 7 May 2007 16:27:42 -0500
+
+rtcheck (0.2)
+  * Determine kernel version using uname() instead of system()
+  * Additional packaging and copyright/license fixes
+ -- John Kacur <jekacur@ca.ibm.com> Fri, 10 Mar 2006 08:06:13 -0800
+
+rtcheck (0.1)
+  * Original version
+ -- Theodore Ts'o <tytso@mit.edu> Mon, 13 Feb 2006 00:00:10 -0500
+
diff -Napur ibmrtpkgs-2/rtcheck/Makefile ibmrtpkgs-2.new/rtcheck/Makefile
--- ibmrtpkgs-2/rtcheck/Makefile	2008-11-04 20:29:58.462922000 +0100
+++ ibmrtpkgs-2.new/rtcheck/Makefile	2008-11-05 01:16:26.912769000 +0100
@@ -1,27 +1,52 @@
-CC = gcc
-
-CFLAGS = -g -O2 -W -Wall -D_XOPEN_SOURCE=600 -D__USE_UNIX98=1
+#
+# © Copyright IBM Corp. 2008.  All Rights Reserved.
+#
+
+VER_MAJOR=0
+VER_MINOR=7.5
+
+DIST_TARGET=rtcheck-$(VER_MAJOR).$(VER_MINOR).tar.bz2
+DIST_FILES=Makefile rtcheck.c rtcheck.init.rhel rtcheck.init.suse README CHANGELOG
+DIRNAME=rtcheck
 
+CC = gcc
+CFLAGS =  -g -O2 -W -Wall
 LIBS = -ldl -lpthread -lrt
 
-%.o: %.c
-	$(CC) -c -o $@ $< $(CFLAGS)
+build: all
 
-.PHONEY: all clean install
+.PHONY: all clean install
 
-build: all
+all: rtcheck dist
 
-all: rtcheck
+rtcheck: rtcheck.c
+	$(CC) -o $@ $< $(CFLAGS) -D_XOPEN_SOURCE=600 -D__USE_UNIX98=1 $(LIBS) -DVERSION="\"$(VER_MAJOR).$(VER_MINOR)\""
 
-rtcheck: rtcheck.o
-	$(CC) -o $@ $< $(CFLAGS) $(LIBS)
 
-install: rtcheck
-	install -o root -g root -m 511 -s rtcheck /usr/bin
-	@echo -n "Updating /etc/rc.local to run 'rtcheck' on boot... "
-	@sed -i '/\/usr\/bin\/rtcheck/d' /etc/rc.local
-	@echo "/usr/bin/rtcheck" >> /etc/rc.local
-	@echo "done"
+dist: $(DIST_FILES)
+	tar -C .. -cjf $(DIST_TARGET) \
+		$(DIRNAME)/Makefile \
+		$(DIRNAME)/rtcheck.c \
+		$(DIRNAME)/rtcheck.init.rhel \
+		$(DIRNAME)/rtcheck.init.suse \
+		$(DIRNAME)/CHANGELOG \
+		$(DIRNAME)/README
+
+
+install: $(DIST_FILES)
+	install -m 0755 rtcheck /usr/bin
+	install -m 0644 README /usr/share/rtcheck-$(VER_MAJOR).$(VER_MINOR)
+	if [ -e /etc/redhat-release ]; then \
+		install -m 755 rtcheck.init.rhel /etc/init.d/rtcheck; \
+	elif [ -e /etc/SuSE-release ]; then \
+		install -m 755 rtcheck.init.suse /etc/init.d/rtcheck; \
+	else \
+		echo "No init file found for this distribution"; \
+		false; \
+	fi
 
 clean:
-	rm -f *.o rtcheck
+	rm -f rtcheck
+
+distclean: clean
+	rm -f $(DIST_TARGET)
diff -Napur ibmrtpkgs-2/rtcheck/README ibmrtpkgs-2.new/rtcheck/README
--- ibmrtpkgs-2/rtcheck/README	2008-11-04 20:29:58.464920000 +0100
+++ ibmrtpkgs-2.new/rtcheck/README	2008-10-23 01:00:39.000000000 +0200
@@ -32,7 +32,7 @@ robust mutexes.
 
 High Resolution Timers:
 -----------------------
-Nanosleep is timed repeatedly using gettimeofday() calls and the median
+Nanosleep is timed using clock_nanosleep() and clock_gettime() calls. The
 value is compared against a threshold large enough to be infeasible on a
 system using hrtimers and small enough to be too fine-grained for a
 system not using hrtimers.  The threshold currently being used is 20us.
diff -Napur ibmrtpkgs-2/rtcheck/rtcheck.c ibmrtpkgs-2.new/rtcheck/rtcheck.c
--- ibmrtpkgs-2/rtcheck/rtcheck.c	2008-11-04 20:29:58.469914000 +0100
+++ ibmrtpkgs-2.new/rtcheck/rtcheck.c	2008-11-04 15:48:55.000000000 +0100
@@ -1,5 +1,6 @@
 /*
  * rt_check.c -- Check for real-time capabilities on the running system.
+ * $Id: $
  *
  * Returns 0 on success, and non-zero on failure.  The failure will indicate
  * what necessary feature was not present.
@@ -54,7 +55,9 @@
 #include <sys/stat.h>
 #include <sys/resource.h>
 
-#define VERSION			"0.7-4"
+#ifndef VERSION
+#define VERSION			".dev"
+#endif
 
 /* test error codes */
 #define FAIL_MEMLOCK		0x0001
diff -Napur ibmrtpkgs-2/rtcheck/rtcheck.init.rhel ibmrtpkgs-2.new/rtcheck/rtcheck.init.rhel
--- ibmrtpkgs-2/rtcheck/rtcheck.init.rhel	1970-01-01 01:00:00.000000000 +0100
+++ ibmrtpkgs-2.new/rtcheck/rtcheck.init.rhel	2008-11-04 21:49:38.070379000 +0100
@@ -0,0 +1,49 @@
+#!/bin/bash
+#
+# © Copyright IBM Corp. 2008.  All Rights Reserved.
+#
+# chkconfig: 234 01 99
+#
+# description: rtcheck checks if the system is Real Time capable.
+#              A run at boot time by root caches all user independent
+#              tests to increase performance at run time.
+
+# source function library
+. /etc/init.d/functions
+
+RETVAL=0
+
+start() {
+	echo -n $"Checking if system is Real Time capable: "
+	/usr/bin/rtcheck -v > /var/log/rtcheck
+	RETVAL=$?
+	if [ $RETVAL ]; then
+		echo "yes"
+	else
+		echo "no"
+	fi
+}
+
+stop() {
+	# reset rtcheck's system cache
+	rm -f /var/cache/rtcheck
+}
+
+case "$1" in
+	start)
+		start
+		;;
+	stop)
+		stop
+		;;
+	restart)
+		stop
+		start
+		;;
+	*)
+		echo $"Usage: $0 {start|stop|restart}"
+		exit 1
+		;;
+esac
+
+exit $RETVAL
diff -Napur ibmrtpkgs-2/rtcheck/rtcheck.init.suse ibmrtpkgs-2.new/rtcheck/rtcheck.init.suse
--- ibmrtpkgs-2/rtcheck/rtcheck.init.suse	1970-01-01 01:00:00.000000000 +0100
+++ ibmrtpkgs-2.new/rtcheck/rtcheck.init.suse	2008-11-04 21:49:38.072369000 +0100
@@ -0,0 +1,63 @@
+#!/bin/bash
+#
+# © Copyright IBM Corp. 2008.  All Rights Reserved.
+#
+# description: rtcheck checks if the system is Real Time capable.
+#              A run at boot time by root caches all user independent
+#              tests to increase performance at run time.
+#
+### BEGIN INIT INFO
+# Provides: rtcheck
+# Required-Start:
+# Required-Stop:
+# Default-Start: 2 3 5
+# Default-Stop: 1 6
+# Description: Run rtcheck system tests
+### END INIT INFO
+
+
+# source function library
+. /etc/rc.status
+
+rc_reset
+
+RETVAL=0
+
+start() {
+	echo -n $"Checking if system is Real Time capable: "
+
+	/usr/bin/rtcheck -v > /var/log/rtcheck
+	RETVAL=$?
+
+	# because this is for global tests only,
+	# return of 1 or 0 is acceptable
+	# 0 => all tests passed
+	# 1 => memlock (per-user-test) failed
+	[[ "$RETVAL" -eq 1 ]] || [[ "$RETVAL" -eq 0 ]]
+
+	rc_status -v
+}
+
+stop() {
+	# reset rtcheck's system cache
+	rm -f /var/cache/rtcheck
+}
+
+case "$1" in
+	start)
+		start
+		;;
+	stop)
+		stop
+		;;
+	restart)
+		stop
+		start
+		;;
+	*)
+		echo $"Usage: $0 {start|stop|restart}"
+		exit 1
+		;;
+esac
+
+exit $RETVAL
diff -Napur ibmrtpkgs-2/rtcheck/rtcheck.sh ibmrtpkgs-2.new/rtcheck/rtcheck.sh
--- ibmrtpkgs-2/rtcheck/rtcheck.sh	2008-11-04 20:29:58.485901000 +0100
+++ ibmrtpkgs-2.new/rtcheck/rtcheck.sh	1970-01-01 01:00:00.000000000 +0100
@@ -1,43 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 2001 SuSE GmbH Nuernberg, Germany.  All rights reserved.
-#
-# /etc/init.d/rtcheck
-#
-### BEGIN INIT INFO
-# Provides:          rtcheck
-# Required-Start:    boot.localfs
-# X-Should-Start:    
-# Required-Stop:
-# Default-Start:     B
-# Default-Stop:
-# Description:       Checks for certain Real Tiem capabilities at startup
-### END INIT INFO
-
-. /etc/rc.status
-
-rc_reset
-
-case "$1" in
-  start)
-	#
-	#
-	if [ -x /sbin/rtcheck ] ; then
-	    /sbin/rtcheck
-	  rc_status -v -r
-	fi
-	;;
-    stop)
-	# skip / do nothing
-	;;
-    status)
-	rc_failed 4
-	rc_status -v
-	;;
-    *)
-	echo "Usage: $0 {start|stop|status}"
-	exit 1
-	;;
-esac
-
-rc_exit