1#! /bin/sh
2# SPDX-License-Identifier: GPL-2.0-or-later
3# Copyright (c) 2012 FUJITSU LIMITED
4# Copyright (c) 2014-2016 Linux Test Project
5# Copyright (c) 2021 Joerg Vehlow <[email protected]>
6#
7# Author: Peng Haitao <[email protected]>
8
9MEMCG_TESTFUNC=test
10TST_CNT=12
11
12
13test1()
14{
15	test_proc_kill $PAGESIZE "--mmap-lock1" $((PAGESIZE*2)) 1
16}
17
18test2()
19{
20	test_proc_kill $PAGESIZE "--mmap-lock2" $((PAGESIZE*2)) 1
21}
22
23test3()
24{
25	test_proc_kill 0 "--mmap-anon" $PAGESIZE 1
26}
27
28test4()
29{
30	test_proc_kill 0 "--mmap-file" $PAGESIZE 1
31}
32
33test5()
34{
35	test_proc_kill 0 "--shm -k 21" $PAGESIZE 1
36}
37
38test6()
39{
40	test_limit_in_bytes $((PAGESIZE - 1)) 1
41}
42
43test7()
44{
45	test_limit_in_bytes $((PAGESIZE + 1)) 1
46}
47
48test8()
49{
50	test_limit_in_bytes 1 1
51}
52
53test9()
54{
55	memcg_require_memsw
56
57	ROD echo 10M \> memory.limit_in_bytes
58
59	EXPECT_PASS echo -1 \> memory.memsw.limit_in_bytes
60}
61
62test10()
63{
64	memcg_require_memsw
65
66	ROD echo 10M \> memory.limit_in_bytes
67	EXPECT_FAIL echo 1.0 \> memory.memsw.limit_in_bytes
68}
69
70test11()
71{
72	memcg_require_memsw
73
74	ROD echo 10M \> memory.limit_in_bytes
75	EXPECT_FAIL echo 1xx \> memory.memsw.limit_in_bytes
76}
77
78test12()
79{
80	memcg_require_memsw
81
82	ROD echo 10M \> memory.limit_in_bytes
83	EXPECT_FAIL echo xx \> memory.memsw.limit_in_bytes
84}
85
86. memcg_lib.sh
87tst_run
88