All of lore.kernel.org
 help / color / mirror / Atom feed
From: Poornima Nayak <mpnayak@linux.vnet.ibm.com>
To: vaidy <svaidy@linux.vnet.ibm.com>,
	ltp-list@lists.sourceforge.net, gautham <ego@in.ibm.com>,
	arun@linux.vnet.ibm.com
Subject: [LTP] Patch for PM Master script to integrate new testcases
Date: Thu, 20 Aug 2009 21:37:50 +0530	[thread overview]
Message-ID: <20090820160750.30926.34693.sendpatchset@localhost.localdomain> (raw)
In-Reply-To: <20090820160655.30926.34854.sendpatchset@localhost.localdomain>

Modified Master script of power management testcases to include new test case
and to increase test coverage on system which is not multi core but hyper threaded.

Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>

diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh
--- ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh	2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh	2009-08-20 20:41:02.000000000 +0530
@@ -40,6 +40,7 @@ export contacts="mpnayak@linux.vnet.ibm.
 export analysis="/proctstat"
 
 YES=0
+NO=1
 #List of reusable functions defined in pm_include.sh
 . ./pm_include.sh
 
@@ -61,34 +62,50 @@ if [ $RC -eq 1 ] ; then
 fi
 
 is_hyper_threaded; hyper_threaded=$?
+is_multi_socket; multi_socket=$?
+is_multi_core; multi_core=$?
+is_dual_core; dual_core=$?
 
 #Checking sched_mc sysfs interface
 #check_config.sh config_sched_mc || RC=$?
 TST_COUNT=1
-if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
-	if test_sched_mc.sh ; then
-		tst_resm TPASS "SCHED_MC sysfs tests"
+if [ $multi_socket -eq $YES -a $dual_core -eq $YES ] ; then
+	if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
+		if test_sched_mc.sh ; then
+			tst_resm TPASS "SCHED_MC sysfs tests"
+		else
+			RC=$?
+			tst_resm TFAIL "SCHED_MC sysfs tests"
+		fi
 	else
-		RC=$?
-		tst_resm TFAIL "SCHED_MC sysfs tests"
+    	tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
 	fi
 else
-    tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
+	if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
+		tst_resm TFAIL "sched_mc_power_savings interface in system which is not a multi socket &(/) multi core"
+	else
+		tst_resm TCONF "Not a suitable architecture for SCHED_MC test"
+	fi
 fi
 
 # Test sched_smt_power_savings interface on HT machines
 : $(( TST_COUNT += 1 ))
-if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
-    if test_sched_smt.sh; then
-		tst_resm TPASS "SCHED_SMT sysfs test"
+if [ $hyper_threaded -eq $YES ]; then
+	if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
+    	if test_sched_smt.sh; then
+			tst_resm TPASS "SCHED_SMT sysfs test"
+		else
+			RC=$?
+        	tst_resm TFAIL "SCHED_SMT sysfs test"
+    	fi
 	else
 		RC=$?
-        tst_resm TFAIL "SCHED_SMT sysfs test"
-    fi
+		tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
+	fi
 else
-    if [ $hyper_threaded -eq $YES ]; then
+	if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
 		RC=$?
-        tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
+        tst_resm TFAIL "sched_smt_power_saving interface in system not hyper-threaded"
     else
         tst_resm TCONF "Required Hyper Threading support for SCHED_SMT test"
     fi
@@ -152,13 +169,13 @@ if [ $? -ne 0 ] ; then
 	tst_resm TCONF "Python is not installed, CPU Consoldation\
 test cannot run"
 else
-	get_max_sched_mc; max_sched_mc=$?
+	get_sched_values sched_mc; max_sched_mc=$?
 	for sched_mc in `seq 0 $max_sched_mc`; do
 		: $(( TST_COUNT+=1))
 		sched_domain.py -c $sched_mc; RC=$?
 		analyze_sched_domain_result $sched_mc $RC 
 		if [ $hyper_threaded -eq $YES ]; then
-			get_max_sched_smt ; max_sched_smt=$?
+			get_sched_values sched_smt; max_sched_smt=$?
 			for sched_smt in `seq 0 $max_sched_smt`; do
 				# Testcase to validate sched_domain tree
 				: $(( TST_COUNT+=1))
@@ -168,32 +185,54 @@ else
 		fi
 	done
 fi
+
+: $(( TST_COUNT+=1))
+if [ -f /proc/sys/kernel/timer_migration ]; then
+	if test_timer_migration.sh; then
+        tst_resm TPASS "Timer Migration interface test"
+    else
+        RC=$?
+        tst_resm TFAIL "Timer migration interface test"
+    fi
+else
+	check_kv_arch "timer_migration"; supp=$? 
+	if [ $supp -eq $YES ]; then
+		RC=$?
+		tst_resm TFAIL "Timer migration interface missing"
+	else
+		tst_resm TCONF "Kernel version does not support Timer migration"
+	fi
+fi
+
+: $(( TST_COUNT+=1))	
+if check_cpufreq_sysfs_files.sh; then
+        tst_resm TPASS "CPUFREQ sysfs tests"
+    else
+        RC=$?
+        tst_resm TFAIL "CPUFREQ sysfs tests "
+    fi
+
 if [ $# -gt 0 -a "$1" = "-exclusive" ]; then 
 	# Test CPU consolidation 
-	which python > /dev/null
-	if [ $? -ne 0 ] ; then
-		tst_resm TCONF "Python is not installed, CPU Consoldation\
- test not run"
-	else
-		sched_mc_smt_pass_cnt=0
+	if [ $multi_socket -eq $YES -a $multi_core -eq $YES ]; then
 		work_loads_list="ebizzy kernbench"
 		for sched_mc in `seq 0 $max_sched_mc`; do
 			for work_load in ${work_loads_list}
-            do
+           	do
 				: $(( TST_COUNT += 1 ))
 				sched_mc_pass_cnt=0
 				for repeat_test in `seq 1  10`; do
-					 #Testcase to validate CPU consolidation for sched_mc
+					#Testcase to validate CPU consolidation for sched_mc
 					if cpu_consolidation.py -c $sched_mc -w $work_load ; then
 						: $(( sched_mc_pass_cnt += 1 ))
 					fi
 				done
-				analyze_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt	
+				analyze_package_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt	
 			done	
 			if [ $hyper_threaded -eq $YES ]; then
 				for sched_smt in `seq 0 $max_sched_smt`; do
 					for work_load in ${work_loads_list}; do
-                    	: $(( TST_COUNT += 1 ))
+                   		: $(( TST_COUNT += 1 ))
 						sched_mc_smt_pass_cnt=0
 						for repeat_test in `seq 1  10`; do
 							# Testcase to validate CPU consolidation for
@@ -201,24 +240,26 @@ if [ $# -gt 0 -a "$1" = "-exclusive" ]; 
 							if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load; then
 								: $(( sched_mc_smt_pass_cnt += 1 ))
 							fi
+							echo "sched_mc_smt_pass_cnt = $sched_mc_smt_pass_cnt"
 						done
-						analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
-
-						#Testcase to validate consolidation at core level
-						sched_mc_smt_pass_cnt=0
-						stress="thread"
-						: $(( TST_COUNT += 1 ))
-						for repeat_test in `seq 1  10`; do
-							if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
-								: $(( sched_mc_smt_pass_cnt += 1 ))
-							fi
-						done
-						analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt $stress
+						analyze_package_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
 					done
 				done
 			fi
 		done
 	fi
+	if [ $hyper_threaded -eq $YES ]; then
+		#Testcase to validate consolidation at core level
+		sched_smt_pass_cnt=0
+		: $(( TST_COUNT += 1 ))
+		stress="thread"
+		for repeat_test in `seq 1  10`; do
+			if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
+				: $(( sched_smt_pass_cnt += 1 ))
+			fi
+		done
+		analyze_core_consolidation_result $sched_smt $work_load $sched_smt_pass_cnt
+	fi
 fi
 
 exit $RC

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

  parent reply	other threads:[~2009-08-20 16:08 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
2009-08-20 16:52   ` Garrett Cooper
2009-08-23  7:29     ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch to include workload for consolidation verification Poornima Nayak
2009-08-23  7:29   ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch to get max sched mc & smt values based on kernel version Poornima Nayak
2009-08-23  7:29   ` Subrata Modak
2009-08-20 16:07 ` [LTP] New & modified reusable functions for new & existing testcases Poornima Nayak
2009-08-20 16:51   ` Garrett Cooper
2009-08-23  7:29     ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue Poornima Nayak
2009-08-20 17:01   ` Garrett Cooper
2009-08-23  7:28     ` Subrata Modak
2009-08-20 16:07 ` Poornima Nayak [this message]
2009-08-23  7:29   ` [LTP] Patch for PM Master script to integrate new testcases Subrata Modak
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
2009-08-20 17:00   ` Garrett Cooper
2009-08-23  7:28   ` Subrata Modak
2009-08-20 16:08 ` [LTP] New testcase to test timer_migration interface Poornima Nayak
2009-08-20 16:57   ` Garrett Cooper
2009-08-20 16:57     ` Garrett Cooper
2009-08-23  7:29     ` Subrata Modak
2009-08-20 16:53 ` [LTP] Patch to fix kernbench integration issue Garrett Cooper
2009-08-23  7:29   ` Subrata Modak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090820160750.30926.34693.sendpatchset@localhost.localdomain \
    --to=mpnayak@linux.vnet.ibm.com \
    --cc=arun@linux.vnet.ibm.com \
    --cc=ego@in.ibm.com \
    --cc=ltp-list@lists.sourceforge.net \
    --cc=svaidy@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.