1 TEST SUITE: 2 3 The directory memctl contains the tests related to memory controller. 4 More testcases are expected to be added in future. 5 6 TESTS AIM: 7 8 The aim of the tests is to test memory controller functionality. 9 10 FILES DESCRIPTION: 11 12 memctl_testN.c 13 --------------- 14 These are the tasks to run for memory controller testing. 15 The tasks have been automated in the sense that they can assign themselves 16 to the appropriate group, can migrate to another group etc. 17 Maximum effort has been made to reuse the code and keep total code size low. 18 19 myfunctions.sh 20 ---------- 21 This file contains the functions which are common for all the tests. For ex. 22 the setup and cleanup functions which do the setup for running the test and do 23 the cleanup once the test finishes. The setup() function creates /dev/memctl 24 directory and mounts cgroup filesystem on it with memory controller. It then 25 creates a number(n) of groups in /dev/memctl. The cleanup function does a 26 complete cleanup of the system. 27 28 Most of the error scenarios have been taken care of for a sane cleanup of the 29 system. However if cleanup fails in any case, just manually execute the 30 commands written in cleanup function in myfunctions.sh. 31 One of the most common causes of failed cleanup is that you have done cd into 32 any of the groups in controller dir tree. 33 34 run_memctl_test.sh 35 ------------------ 36 This script creates different scenarios for memory controller testing and 37 fires (n) tasks in different groups to do some memory allocations etc. It 38 waits for the return status from tasks and reports test pass/fail accordingly. 39 40 Makefile 41 -------- 42 43 The usual makefile for this directory 44 45 PASS/FAIL CRITERION: 46 ================== 47 The test cases are intelligent enough in deciding the pass or failure of a 48 test. 49 50 README: 51 -------- 52 The one you have gone through. 53 54