public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Rishikesh <risrajak@linux.vnet.ibm.com>
To: Li Zefan <lizf@cn.fujitsu.com>
Cc: risrajak@in.ibm.com, LTP <ltp-list@lists.sourceforge.net>,
	iranna.ankad@in.ibm.com
Subject: Re: [LTP] [PATCH 2/2] Added check for memory controller ( functional, regression & stress )
Date: Wed, 30 Dec 2009 09:30:20 +0530	[thread overview]
Message-ID: <4B3AD054.5090608@linux.vnet.ibm.com> (raw)
In-Reply-To: <4B39C9F4.1030708@cn.fujitsu.com>

[-- Attachment #1: Type: text/plain, Size: 445 bytes --]

On 12/29/2009 02:50 PM, Li Zefan wrote:
>> commit fe4599d210be37a7d1bb2d6a5523b9e29bbd87e1
>> Author: Rishikesh K Rajak<rishikesh@rishikesh.in.ibm.com>
>> Date:   Mon Dec 28 15:11:54 2009 +0530
>>
>>      Added check for regression and funcitonal memcg test
>>
>>      
> You should add your Signed-off-by.
>    

Sending a fresh patch with signed-off added. Also combined both the 
patches in one & ported to latest intermediate ltp release.



[-- Attachment #2: memcg-enbale-disable.patch --]
[-- Type: text/plain, Size: 9926 bytes --]

Description:
	The current implementation of memory controller in ltp checks only
for kernel support, this patch check for memcg functionality enable or
disable through /proc/cgroups.

Signed-off By : Rishikesh K Rajak <risrajak@linux.vnet.ibm.com>
---
Index: ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/functional/memcg_function_test.sh
===================================================================
--- ltp-intermediate-20091209.orig.orig/testcases/kernel/controllers/memcg/functional/memcg_function_test.sh	2009-12-09 13:18:49.000000000 +0530
+++ ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/functional/memcg_function_test.sh	2009-12-30 09:24:48.000000000 +0530
@@ -20,6 +20,8 @@
 ##                                                                            ##
 ## Author: Li Zefan <lizf@cn.fujitsu.com>                                     ##
 ## Restructure for LTP: Shi Weihua <shiwh@cn.fujitsu.com>                     ##
+## Added memcg enable/disable functinality: Rishikesh K Rajak		      ##
+##						<risrajak@linux.vnet.ibm.com  ##
 ##                                                                            ##
 ################################################################################
 
@@ -28,14 +30,15 @@
 export TST_TOTAL=38
 export TST_COUNT=0
 
-grep -w memory /proc/cgroups 2>&1 > /dev/null
-if [ $? -ne 0 ]; then
-	echo "WARNING:";
-	echo "Kernel does not support for memory resource controller";
-	echo "Skipping all memcgroup testcases....";
-	exit 0
+if [ ! "grep -w memory /proc/cgroups | cut -f4" == "1" ]
+then
+        echo "WARNING:";
+        echo "Either Kernel does not support for memory resource controller or feature not enabled";
+        echo "Skipping all memcgroup testcases....";
+        exit 0
 fi
 
+
 TEST_PATH=$PWD
 
 PASS=0
Index: ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/regression/memcg_regression_test.sh
===================================================================
--- ltp-intermediate-20091209.orig.orig/testcases/kernel/controllers/memcg/regression/memcg_regression_test.sh	2009-12-09 13:18:50.000000000 +0530
+++ ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/regression/memcg_regression_test.sh	2009-12-30 09:21:40.000000000 +0530
@@ -19,6 +19,8 @@
 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA    ##
 ##                                                                            ##
 ## Author: Li Zefan <lizf@cn.fujitsu.com>                                     ##
+## Added memcg enable/disable functinality: Rishikesh K Rajak                 ##
+##                                              <risrajak@linux.vnet.ibm.com  ##
 ##                                                                            ##
 ################################################################################
 
@@ -33,6 +35,14 @@
 	exit 0
 fi
 
+if [ ! "grep -w memory /proc/cgroups | cut -f4" == "1" ]
+then
+        echo "WARNING:";
+        echo "Either Kernel does not support for memory resource controller or feature not enabled";
+        echo "Skipping all memcgroup testcases....";
+        exit 0
+fi
+
 tst_kvercmp 2 6 30
 if [ $? -eq 0 ]; then
 	tst_brkm TBROK ignored "Test should be run with kernel 2.6.30 or newer"
Index: ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh
===================================================================
--- ltp-intermediate-20091209.orig.orig/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh	2009-12-09 13:18:49.000000000 +0530
+++ ltp-intermediate-20091209.orig/testcases/kernel/controllers/memcg/stress/memcg_stress_test.sh	2009-12-30 09:21:51.000000000 +0530
@@ -20,6 +20,8 @@
 ##                                                                            ##
 ## Author: Li Zefan <lizf@cn.fujitsu.com>                                     ##
 ## Restructure for LTP: Shi Weihua <shiwh@cn.fujitsu.com>                     ##
+## Added memcg enable/disable functinality: Rishikesh K Rajak                 ##
+##                                              <risrajak@linux.vnet.ibm.com  ##
 ##                                                                            ##
 ################################################################################
 
@@ -28,12 +30,12 @@
 export TST_TOTAL=2
 export TST_COUNT=0
 
-grep -w memory /proc/cgroups 2>&1 > /dev/null
-if [ $? -ne 0 ]; then
-	echo "WARNING:";
-	echo "Kernel does not support for memory resource controller";
-	echo "Skipping all memcgroup testcases....";
-	exit 0
+if [ ! "grep -w memory /proc/cgroups | cut -f4" == "1" ]
+then
+        echo "WARNING:";
+        echo "Either Kernel does not support for memory resource controller or feature not enabled";
+        echo "Skipping all memcgroup testcases....";
+        exit 0
 fi
 
 RUN_TIME=$(( 60 * 60 ))
Index: ltp-intermediate-20091209.orig/testcases/kernel/controllers/test_controllers.sh
===================================================================
--- ltp-intermediate-20091209.orig.orig/testcases/kernel/controllers/test_controllers.sh	2009-12-09 13:18:51.000000000 +0530
+++ ltp-intermediate-20091209.orig/testcases/kernel/controllers/test_controllers.sh	2009-12-30 09:23:32.000000000 +0530
@@ -33,19 +33,26 @@
 #  20/12/07  Sudhir Kumar <sudhirkumarmalik@in.ibm.com>   Created this test      #
 #  02/03/09  Miao Xie     <miaox@cn.fujitsu.com>          Add cpuset testset     #
 #  07/07/09  Shi Weihua   <shiwh@cn.fujitsu.com>      Add cpu testset of Fujitsu #
+#  30/12/09  Rishikesh    <risrajak@linux.vnet.ibm.com> Added enable/disable     #
 #                                                                                #
 ##################################################################################
 
 if [ -f /proc/cgroups ]
 then
 	CPU_CONTROLLER=`grep -w cpu /proc/cgroups | cut -f1`;
+	CPU_CONTROLLER_VALUE=`grep -w cpu /proc/cgroups | cut -f4`;
 	MEM_CONTROLLER=`grep -w memory /proc/cgroups | cut -f1`;
+	MEM_CONTROLLER_VALUE=`grep -w memory /proc/cgroups | cut -f4`;
 	IOTHROTTLE_CONTROLLER=`grep -w blockio /proc/cgroups | cut -f1`;
+	IOTHROTTLE_CONTROLLER_VALUE=`grep -w blockio /proc/cgroups | cut -f4`;
 	FREEZER=`grep -w freezer /proc/cgroups | cut -f1`;
+	FREEZER_VALUE=`grep -w freezer /proc/cgroups | cut -f4`;
 	CPUSET_CONTROLLER=`grep -w cpuset /proc/cgroups | cut -f1`
+	CPUSET_CONTROLLER_VALUE=`grep -w cpuset /proc/cgroups | cut -f4`
 	CPUACCOUNT_CONTROLLER=`grep -w cpuacct /proc/cgroups | cut -f1`
+	CPUACCOUNT_CONTROLLER_VALUE=`grep -w cpuacct /proc/cgroups | cut -f4`
 
-	if [ "$CPU_CONTROLLER" = "cpu" ]
+	if [ "$CPU_CONTROLLER" = "cpu" ] && [ "$CPU_CONTROLLER_VALUE" = "1" ]
 	then
 		$LTPROOT/testcases/bin/run_cpuctl_test.sh 1;
 		$LTPROOT/testcases/bin/run_cpuctl_test.sh 3;
@@ -63,11 +70,11 @@
 		$LTPROOT/testcases/bin/run_cpuctl_test_fj.sh
 	else
 		echo "CONTROLLERS TESTCASES: WARNING";
-		echo "Kernel does not support for cpu controller";
+		echo "Either Kernel does not support for cpu controller or functionality is not enabled";
 		echo "Skipping all cpu controller testcases....";
 	fi;
 
-	if [ "$MEM_CONTROLLER" = "memory" ]
+	if [ "$MEM_CONTROLLER" = "memory" ] && [ "$MEM_CONTROLLER_VALUE" = "1" ]
 	then
 		$LTPROOT/testcases/bin/run_memctl_test.sh 1;
 		$LTPROOT/testcases/bin/run_memctl_test.sh 2;
@@ -75,28 +82,29 @@
 		$LTPROOT/testcases/bin/run_memctl_test.sh 4;
 	else
 		echo "CONTROLLERS TESTCASES: WARNING";
-		echo "Kernel does not support for memory controller";
+		echo "Either Kernel does not support for memory controller or functionality is not enabled";
 		echo "Skipping all memory controller testcases....";
 	fi
 
-	if [ "$IOTHROTTLE_CONTROLLER" = "blockio" ]
+	if [ "$IOTHROTTLE_CONTROLLER" = "blockio" ] && [ "$IOTHROTTLE_CONTROLLER_VALUE" = "1" ]
 	then
 		$LTPROOT/testcases/bin/run_io_throttle_test.sh;
 	else
 		echo "CONTROLLERS TESTCASES: WARNING";
-		echo "Kernel does not support blockio controller";
+		echo "Either Kernel does not support for io controller or functionality is not enabled";
 		echo "Skipping all block device I/O throttling testcases....";
 	fi
 
-	if [ "$FREEZER" = "freezer" ]
+	if [ "$FREEZER" = "freezer" ] && [ "$FREEZER_VALUE" = "1" ]
 	then
 		"$LTPROOT/testcases/bin/run_freezer.sh"
 	else
 		echo "CONTROLLERS TESTCASES: WARNING";
+		echo "Either Kernel does not support for freezer or functionality is not enabled";
 		echo "Kernel does not support freezer controller";
 		echo "Skipping all freezer testcases....";
 	fi
-	if [ "$CPUSET_CONTROLLER" = "cpuset" ]
+	if [ "$CPUSET_CONTROLLER" = "cpuset" ] && [ "$CPUSET_CONTROLLER_VALUE" = "1" ]
 	then
 		$LTPROOT/testcases/bin/run_cpuset_test.sh 1;
 		$LTPROOT/testcases/bin/run_cpuset_test.sh 2;
@@ -111,21 +119,22 @@
 		$LTPROOT/testcases/bin/run_cpuset_test.sh 11;
 	else
 		echo "CONTROLLERS TESTCASES: WARNING";
-		echo "Kernel does not support cpuset controller";
+		echo "Either Kernel does not support for cpuset controller or functionality is not enabled";
 		echo "Skipping all cpuset controller testcases....";
 	fi
-	if [ "$CPUACCOUNT_CONTROLLER" = "cpuacct" ]
+	if [ "$CPUACCOUNT_CONTROLLER" = "cpuacct" ] && [ "$CPUACCOUNT_CONTROLLER_VALUE" = "1" ]
         then
                 $LTPROOT/testcases/bin/run_cpuacct_test.sh 1;
                 $LTPROOT/testcases/bin/run_cpuacct_test.sh 2;
         else
                 echo "Could not start cpu accounting controller test";
+		echo "Either Kernel does not support for cpu accounting controller or functionality is not enabled";
                 echo "usage: run_cpuacct_test.sh $TEST_NUM ";
                 echo "Skipping the cpu accounting controller test...";
         fi
 else
 	echo "CONTROLLERS TESTCASES: WARNING"
-	echo "Kernel does not support for control groups";
+	echo "Kernel does not support any controller";
 	echo "Skipping all controllers testcases....";
 fi
 

[-- Attachment #3: Type: text/plain, Size: 390 bytes --]

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 

[-- Attachment #4: Type: text/plain, Size: 155 bytes --]

_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

  parent reply	other threads:[~2009-12-30  4:00 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-28 10:46 [LTP] [PATCH 2/2] Added check for memory controller ( functional, regression & stress ) Rishikesh
2009-12-29  9:20 ` Li Zefan
2009-12-29 10:03   ` Rishikesh
2009-12-30  4:00   ` Rishikesh [this message]
2009-12-30  5:21     ` Li Zefan
2010-01-07 10:46       ` Garrett Cooper
2010-01-07 11:06       ` 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=4B3AD054.5090608@linux.vnet.ibm.com \
    --to=risrajak@linux.vnet.ibm.com \
    --cc=iranna.ankad@in.ibm.com \
    --cc=lizf@cn.fujitsu.com \
    --cc=ltp-list@lists.sourceforge.net \
    --cc=risrajak@in.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox