On 12/29/2009 02:50 PM, Li Zefan wrote:
commit fe4599d210be37a7d1bb2d6a5523b9e29bbd87e1
Author: Rishikesh K Rajak<[email protected]>
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.


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 <[email protected]>
---
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 <[email protected]>                                     
##
 ## Restructure for LTP: Shi Weihua <[email protected]>                     
##
+## Added memcg enable/disable functinality: Rishikesh K Rajak                ##
+##                                             <[email protected]  ##
 ##                                                                            
##
 
################################################################################
 
@@ -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 <[email protected]>                                     
##
+## Added memcg enable/disable functinality: Rishikesh K Rajak                 
##
+##                                              <[email protected]  
##
 ##                                                                            
##
 
################################################################################
 
@@ -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 <[email protected]>                                     
##
 ## Restructure for LTP: Shi Weihua <[email protected]>                     
##
+## Added memcg enable/disable functinality: Rishikesh K Rajak                 
##
+##                                              <[email protected]  
##
 ##                                                                            
##
 
################################################################################
 
@@ -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 <[email protected]>   Created this test    
  #
 #  02/03/09  Miao Xie     <[email protected]>          Add cpuset testset   
  #
 #  07/07/09  Shi Weihua   <[email protected]>      Add cpu testset of 
Fujitsu #
+#  30/12/09  Rishikesh    <[email protected]> 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
 
------------------------------------------------------------------------------
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 
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to