1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0-or-later 3# Copyright (c) 2009 FUJITSU LIMITED 4# Copyright (c) 2016 Cyril Hrubis <chrubis@suse.cz> 5# Copyright (c) 2021 Joerg Vehlow <joerg.vehlow@aox-tech.de> 6# 7# Author: Li Zefan <lizf@cn.fujitsu.com> 8# Restructure for LTP: Shi Weihua <shiwh@cn.fujitsu.com> 9# Added memcg enable/disable functionality: Rishikesh K Rajak <risrajak@linux.vnet.ibm.com> 10 11MEMCG_TESTFUNC=test 12MEMCG_SHMMAX=1 13TST_TEST_DATA="--mmap-anon --mmap-file --shm" 14. memcg_lib.sh 15 16MEMORY_LIMIT=$PAGESIZE 17MEMORY_TO_ALLOCATE=$((MEMORY_LIMIT * 2)) 18 19test() 20{ 21 ROD echo $MEMORY_LIMIT \> memory.limit_in_bytes 22 23 start_memcg_process $2 -s ${MEMORY_TO_ALLOCATE} 24 ROD echo $MEMCG_PROCESS_PID \> tasks 25 26 signal_memcg_process ${MEMORY_TO_ALLOCATE} 27 signal_memcg_process ${MEMORY_TO_ALLOCATE} 28 29 stop_memcg_process 30 31 failcnt=$(cat memory.failcnt) 32 if [ $failcnt -gt 0 ]; then 33 tst_res TPASS "memory.failcnt is $failcnt, > 0 as expected" 34 else 35 tst_res TFAIL "memory.failcnt is $failcnt, <= 0 expected" 36 fi 37} 38 39tst_run 40