Add test cases of memory.memsw.limit_in_bytes.
Signed-off-by: Peng Haitao <[email protected]>
---
runtest/controllers | 1 +
.../functional/memcg_memsw_limit_in_bytes_test.sh | 140 ++++++++++++++++++++
2 files changed, 141 insertions(+), 0 deletions(-)
create mode 100644
testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
diff --git a/runtest/controllers b/runtest/controllers
index 1ea7914..8cf2dc7 100644
--- a/runtest/controllers
+++ b/runtest/controllers
@@ -4,6 +4,7 @@ memcg_regression memcg_regression_test.sh
memcg_function memcg_function_test.sh
memcg_max_usage_in_bytes memcg_max_usage_in_bytes_test.sh
memcg_move_charge_at_immigrate memcg_move_charge_at_immigrate_test.sh
+memcg_memsw_limit_in_bytes memcg_memsw_limit_in_bytes_test.sh
memcg_stress memcg_stress_test.sh
memcg_control PAGESIZE=$(mem_process -p);memcg_control_test.sh
$PAGESIZE $PAGESIZE $((PAGESIZE * 2))
cgroup_fj run_cgroup_test_fj.sh
diff --git
a/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
b/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
new file mode 100644
index 0000000..88dbd70
--- /dev/null
+++
b/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
@@ -0,0 +1,140 @@
+#! /bin/sh
+
+################################################################################
+##
##
+## Copyright (c) 2012 FUJITSU LIMITED
##
+##
##
+## This program is free software; you can redistribute it and#or modify
##
+## it under the terms of the GNU General Public License as published by
##
+## the Free Software Foundation; either version 2 of the License, or
##
+## (at your option) any later version.
##
+##
##
+## This program is distributed in the hope that it will be useful, but
##
+## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
##
+## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
##
+## for more details.
##
+##
##
+## You should have received a copy of the GNU General Public License
##
+## along with this program; if not, write to the Free Software
##
+## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##
+##
##
+################################################################################
+#
+# File : memcg_memsw_limit_in_bytes_test.sh
+# Description: Tests memory.memsw.limit_in_bytes.
+# Author: Peng Haitao <[email protected]>
+# History: 2012/01/3 - Created.
+#
+
+export TCID="memcg_memsw_limit_in_bytes_test"
+export TST_TOTAL=12
+export TST_COUNT=0
+
+. memcg_lib.sh || exit 1
+
+testcase_1()
+{
+ test_proc_kill $PAGESIZE "--mmap-lock1" $((PAGESIZE*2)) 1
+}
+
+testcase_2()
+{
+ test_proc_kill $PAGESIZE "--mmap-lock2" $((PAGESIZE*2)) 1
+}
+
+testcase_3()
+{
+ test_proc_kill 0 "--mmap-anon" $PAGESIZE 1
+}
+
+testcase_4()
+{
+ test_proc_kill 0 "--mmap-file" $PAGESIZE 1
+}
+
+testcase_5()
+{
+ test_proc_kill 0 "--shm -k 21" $PAGESIZE 1
+}
+
+testcase_6()
+{
+ test_limit_in_bytes $((PAGESIZE-1)) $PAGESIZE 1
+}
+
+testcase_7()
+{
+ test_limit_in_bytes $((PAGESIZE+1)) $((PAGESIZE*2)) 1
+}
+
+testcase_8()
+{
+ test_limit_in_bytes 1 $PAGESIZE 1
+}
+
+testcase_9()
+{
+ echo 10M > memory.limit_in_bytes
+ echo -1 > memory.memsw.limit_in_bytes 2> /dev/null
+ ret=$?
+ tst_kvercmp 2 6 31
+ if [ $? -eq 0 ]; then
+ result $(( !($ret != 0) )) "return value is $ret"
+ else
+ result $(( !($ret == 0) )) "return value is $ret"
+ fi
+}
+
+testcase_10()
+{
+ echo 10M > memory.limit_in_bytes
+ echo 1.0 > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+testcase_11()
+{
+ echo 10M > memory.limit_in_bytes
+ echo 1xx > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+testcase_12()
+{
+ echo 10M > memory.limit_in_bytes
+ echo xx > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+# Run all the test cases
+for i in $(seq 1 $TST_TOTAL)
+do
+ export TST_COUNT=$(( $TST_COUNT + 1 ))
+ cur_id=$i
+
+ do_mount;
+ if [ $? -ne 0 ]; then
+ echo "Cannot create memcg"
+ exit 1
+ fi
+
+ # prepare
+ mkdir /dev/memcg/$i 2> /dev/null
+ cd /dev/memcg/$i
+
+ # run the case
+ testcase_$i
+
+ # clean up
+ sleep 1
+ cd $TEST_PATH
+ rmdir /dev/memcg/$i
+
+ cleanup;
+done
+
+if [ $failed -ne 0 ]; then
+ exit $failed
+else
+ exit 0
+fi
--
1.7.1
--
Best Regards,
Peng
Add test cases of memory.memsw.limit_in_bytes.
Signed-off-by: Peng Haitao <[email protected]>
---
runtest/controllers | 1 +
.../functional/memcg_memsw_limit_in_bytes_test.sh | 140 ++++++++++++++++++++
2 files changed, 141 insertions(+), 0 deletions(-)
create mode 100644
testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
diff --git a/runtest/controllers b/runtest/controllers
index 1ea7914..8cf2dc7 100644
--- a/runtest/controllers
+++ b/runtest/controllers
@@ -4,6 +4,7 @@ memcg_regression memcg_regression_test.sh
memcg_function memcg_function_test.sh
memcg_max_usage_in_bytes memcg_max_usage_in_bytes_test.sh
memcg_move_charge_at_immigrate memcg_move_charge_at_immigrate_test.sh
+memcg_memsw_limit_in_bytes memcg_memsw_limit_in_bytes_test.sh
memcg_stress memcg_stress_test.sh
memcg_control PAGESIZE=$(mem_process -p);memcg_control_test.sh
$PAGESIZE $PAGESIZE $((PAGESIZE * 2))
cgroup_fj run_cgroup_test_fj.sh
diff --git
a/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
b/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
new file mode 100644
index 0000000..88dbd70
--- /dev/null
+++
b/testcases/kernel/controllers/memcg/functional/memcg_memsw_limit_in_bytes_test.sh
@@ -0,0 +1,140 @@
+#! /bin/sh
+
+################################################################################
+##
##
+## Copyright (c) 2012 FUJITSU LIMITED
##
+##
##
+## This program is free software; you can redistribute it and#or modify
##
+## it under the terms of the GNU General Public License as published by
##
+## the Free Software Foundation; either version 2 of the License, or
##
+## (at your option) any later version.
##
+##
##
+## This program is distributed in the hope that it will be useful, but
##
+## WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
##
+## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
##
+## for more details.
##
+##
##
+## You should have received a copy of the GNU General Public License
##
+## along with this program; if not, write to the Free Software
##
+## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##
+##
##
+################################################################################
+#
+# File : memcg_memsw_limit_in_bytes_test.sh
+# Description: Tests memory.memsw.limit_in_bytes.
+# Author: Peng Haitao <[email protected]>
+# History: 2012/01/3 - Created.
+#
+
+export TCID="memcg_memsw_limit_in_bytes_test"
+export TST_TOTAL=12
+export TST_COUNT=0
+
+. memcg_lib.sh || exit 1
+
+testcase_1()
+{
+ test_proc_kill $PAGESIZE "--mmap-lock1" $((PAGESIZE*2)) 1
+}
+
+testcase_2()
+{
+ test_proc_kill $PAGESIZE "--mmap-lock2" $((PAGESIZE*2)) 1
+}
+
+testcase_3()
+{
+ test_proc_kill 0 "--mmap-anon" $PAGESIZE 1
+}
+
+testcase_4()
+{
+ test_proc_kill 0 "--mmap-file" $PAGESIZE 1
+}
+
+testcase_5()
+{
+ test_proc_kill 0 "--shm -k 21" $PAGESIZE 1
+}
+
+testcase_6()
+{
+ test_limit_in_bytes $((PAGESIZE-1)) $PAGESIZE 1
+}
+
+testcase_7()
+{
+ test_limit_in_bytes $((PAGESIZE+1)) $((PAGESIZE*2)) 1
+}
+
+testcase_8()
+{
+ test_limit_in_bytes 1 $PAGESIZE 1
+}
+
+testcase_9()
+{
+ echo 10M > memory.limit_in_bytes
+ echo -1 > memory.memsw.limit_in_bytes 2> /dev/null
+ ret=$?
+ tst_kvercmp 2 6 31
+ if [ $? -eq 0 ]; then
+ result $(( !($ret != 0) )) "return value is $ret"
+ else
+ result $(( !($ret == 0) )) "return value is $ret"
+ fi
+}
+
+testcase_10()
+{
+ echo 10M > memory.limit_in_bytes
+ echo 1.0 > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+testcase_11()
+{
+ echo 10M > memory.limit_in_bytes
+ echo 1xx > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+testcase_12()
+{
+ echo 10M > memory.limit_in_bytes
+ echo xx > memory.memsw.limit_in_bytes 2> /dev/null
+ result $(( !($? != 0) )) "return value is $?"
+}
+
+# Run all the test cases
+for i in $(seq 1 $TST_TOTAL)
+do
+ export TST_COUNT=$(( $TST_COUNT + 1 ))
+ cur_id=$i
+
+ do_mount;
+ if [ $? -ne 0 ]; then
+ echo "Cannot create memcg"
+ exit 1
+ fi
+
+ # prepare
+ mkdir /dev/memcg/$i 2> /dev/null
+ cd /dev/memcg/$i
+
+ # run the case
+ testcase_$i
+
+ # clean up
+ sleep 1
+ cd $TEST_PATH
+ rmdir /dev/memcg/$i
+
+ cleanup;
+done
+
+if [ $failed -ne 0 ]; then
+ exit $failed
+else
+ exit 0
+fi
--
1.7.1
------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list