All of lore.kernel.org
 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 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.