sysinfo: support basic entries
Change-Id: I27f3e55058cc29f895831a1dddfafbc8585746a5 refs: #1389
This commit is contained in:
@ -83,6 +83,7 @@ SYSCALL_HANDLED(175, geteuid)
|
||||
SYSCALL_HANDLED(176, getgid)
|
||||
SYSCALL_HANDLED(177, getegid)
|
||||
SYSCALL_HANDLED(178, gettid)
|
||||
SYSCALL_HANDLED(179, sysinfo)
|
||||
SYSCALL_DELEGATED(188, msgrcv)
|
||||
SYSCALL_DELEGATED(189, msgsnd)
|
||||
SYSCALL_DELEGATED(192, semtimedop)
|
||||
|
||||
@ -74,6 +74,7 @@ SYSCALL_DELEGATED(89, readlink)
|
||||
SYSCALL_HANDLED(96, gettimeofday)
|
||||
SYSCALL_HANDLED(97, getrlimit)
|
||||
SYSCALL_HANDLED(98, getrusage)
|
||||
SYSCALL_HANDLED(99, sysinfo)
|
||||
SYSCALL_HANDLED(100, times)
|
||||
SYSCALL_HANDLED(101, ptrace)
|
||||
SYSCALL_HANDLED(102, getuid)
|
||||
|
||||
@ -56,6 +56,24 @@ rusage_total_memory_add(unsigned long size)
|
||||
#endif
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_total_memory()
|
||||
{
|
||||
return rusage.total_memory;
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_free_memory()
|
||||
{
|
||||
return rusage.total_memory - rusage.total_memory_usage;
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_usage_memory()
|
||||
{
|
||||
return rusage.total_memory_usage;
|
||||
}
|
||||
|
||||
static inline void
|
||||
rusage_rss_add(unsigned long size)
|
||||
{
|
||||
@ -399,6 +417,24 @@ rusage_rss_add(unsigned long size)
|
||||
{
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_total_memory()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_free_memory()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline unsigned long
|
||||
rusage_get_usage_memory()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void
|
||||
rusage_rss_sub(unsigned long size)
|
||||
{
|
||||
|
||||
@ -443,6 +443,22 @@ struct rusage {
|
||||
long ru_nivcsw;
|
||||
};
|
||||
|
||||
struct sysinfo {
|
||||
long uptime; /* Seconds since boot */
|
||||
unsigned long loads[3]; /* 1, 5, and 15 minute load averages */
|
||||
unsigned long totalram; /* Total usable main memory size */
|
||||
unsigned long freeram; /* Available memory size */
|
||||
unsigned long sharedram; /* Amount of shared memory */
|
||||
unsigned long bufferram; /* Memory used by buffers */
|
||||
unsigned long totalswap; /* Total swap space size */
|
||||
unsigned long freeswap; /* swap space still available */
|
||||
unsigned short procs; /* Number of current processes */
|
||||
unsigned long totalhigh; /* Total high memory size */
|
||||
unsigned long freehigh; /* Available high memory size */
|
||||
unsigned int mem_unit; /* Memory unit size in bytes */
|
||||
char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding for libc5 */
|
||||
};
|
||||
|
||||
extern void terminate(int, int);
|
||||
|
||||
struct tod_data_s {
|
||||
|
||||
@ -6708,6 +6708,27 @@ SYSCALL_DECLARE(getrusage)
|
||||
return 0;
|
||||
}
|
||||
|
||||
SYSCALL_DECLARE(sysinfo)
|
||||
{
|
||||
struct sysinfo *sysinfo = (struct sysinfo *)ihk_mc_syscall_arg0(ctx);
|
||||
struct sysinfo __sysinfo;
|
||||
int ret = 0;
|
||||
|
||||
memset(&__sysinfo, '\0', sizeof(struct sysinfo));
|
||||
|
||||
__sysinfo.totalram = rusage_get_total_memory();
|
||||
__sysinfo.freeram = rusage_get_free_memory();
|
||||
__sysinfo.mem_unit = 1; // always one unit for McKernel
|
||||
|
||||
if (copy_to_user(sysinfo, &__sysinfo, sizeof(struct sysinfo))) {
|
||||
ret = -EFAULT;
|
||||
goto out;
|
||||
}
|
||||
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
extern int ptrace_traceme(void);
|
||||
extern void set_single_step(struct thread *thread);
|
||||
|
||||
|
||||
43
test/issues/1389/C1389.sh
Executable file
43
test/issues/1389/C1389.sh
Executable file
@ -0,0 +1,43 @@
|
||||
#/bin/sh
|
||||
|
||||
USELTP=1
|
||||
USEOSTEST=0
|
||||
|
||||
BOOTPARAM="-c 1-7 -m 10G@0,10G@1 -O"
|
||||
. ../../common.sh
|
||||
|
||||
issue="1389"
|
||||
tid=01
|
||||
|
||||
for tsuf in "01" "02.sh"
|
||||
do
|
||||
tname=`printf "C${issue}T%02d" ${tid}`
|
||||
echo "*** ${tname} start *******************************"
|
||||
${MCEXEC} ./C1389T${tsuf}
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "*** ${tname} PASSED ******************************"
|
||||
else
|
||||
echo "*** ${tname} FAILED ******************************"
|
||||
fi
|
||||
let tid++
|
||||
echo ""
|
||||
done
|
||||
|
||||
for tp in "mtest01 -p80" "mtest01 -p80 -w" "mem01"
|
||||
do
|
||||
tname=`printf "C${issue}T%02d" ${tid}`
|
||||
echo "*** ${tname} start *******************************"
|
||||
echo ${tp}
|
||||
sudo $MCEXEC $LTPBIN/$tp 2>&1 | tee ${tname}.txt
|
||||
ok=`grep PASS ${tname}.txt | wc -l`
|
||||
ng=`grep FAIL ${tname}.txt | wc -l`
|
||||
if [ $ng = 0 ]; then
|
||||
echo "*** ${tname} PASSED ($ok)"
|
||||
else
|
||||
echo "*** ${tname} FAILED (ok=$ok ng=$ng)"
|
||||
fi
|
||||
let tid++
|
||||
echo ""
|
||||
done
|
||||
|
||||
65
test/issues/1389/C1389T01.c
Normal file
65
test/issues/1389/C1389T01.c
Normal file
@ -0,0 +1,65 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <linux/kernel.h>
|
||||
#include <sys/sysinfo.h>
|
||||
#include <errno.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
struct sysinfo *info;
|
||||
int ret = 0, rc = 0;
|
||||
unsigned long assigned_mem = (20UL << 30);
|
||||
unsigned long _totalram, _freeram;
|
||||
unsigned int _mem_unit;
|
||||
|
||||
info = malloc(sizeof(struct sysinfo));
|
||||
rc = sysinfo(info);
|
||||
if (rc) {
|
||||
perror("sysinfo fail: ");
|
||||
ret = -1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
_totalram = info->totalram;
|
||||
_freeram = info->freeram;
|
||||
_mem_unit = info->mem_unit;
|
||||
|
||||
// Check totalram
|
||||
if (0.95 * assigned_mem < _totalram &&
|
||||
_totalram < assigned_mem) {
|
||||
printf("[OK] totalram: %ld\n", _totalram);
|
||||
}
|
||||
else {
|
||||
printf("[NG] unexpected totalram: %ld\n", _totalram);
|
||||
printf(" expected range: %ld - %ld\n",
|
||||
(unsigned long)(0.95 * assigned_mem),
|
||||
assigned_mem);
|
||||
ret = -1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
// Check freeram
|
||||
if (0.95 * _totalram < _freeram &&
|
||||
_freeram < _totalram) {
|
||||
printf("[OK] freeram: %ld\n", _freeram);
|
||||
}
|
||||
else {
|
||||
printf("[NG] unexpected freeram: %ld\n", _freeram);
|
||||
ret = -1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
// Check mem_unit
|
||||
if (_mem_unit == 1) {
|
||||
printf("[OK] mem_unit: %ld\n", _mem_unit);
|
||||
}
|
||||
else {
|
||||
printf("[NG] unexpected mem_unit: %ld\n", _mem_unit);
|
||||
ret = -1;
|
||||
goto out;
|
||||
}
|
||||
|
||||
free(info);
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
88
test/issues/1389/C1389T02.sh
Executable file
88
test/issues/1389/C1389T02.sh
Executable file
@ -0,0 +1,88 @@
|
||||
#!/bin/sh
|
||||
|
||||
ASSIGNED_MEM=`echo '1024 * 1024 * 1024 * 20' | bc`
|
||||
cat /proc/meminfo > ./cur_meminfo.txt
|
||||
|
||||
# Check MemTotal
|
||||
MemTotalTxt=`cat ./cur_meminfo.txt | grep MemTotal | awk '{print $(NF-1)}'`
|
||||
MemTotal=`echo "1024 * ${MemTotalTxt}" | bc`
|
||||
|
||||
lower_limit=`echo "${ASSIGNED_MEM} * 0.95" | bc`
|
||||
lower_limit=${lower_limit%.*}
|
||||
upper_limit=${ASSIGNED_MEM}
|
||||
tgt=${MemTotal}
|
||||
|
||||
if [ ${tgt} -ge ${lower_limit} -a ${tgt} -lt ${upper_limit} ]; then
|
||||
echo "[OK] MemTotal: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected MemTotal: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check MemFree
|
||||
MemFreeTxt=`cat ./cur_meminfo.txt | grep MemFree | awk '{print $(NF-1)}'`
|
||||
MemFree=`echo "1024 * ${MemFreeTxt}" | bc`
|
||||
|
||||
lower_limit=`echo "${MemTotal} * 0.95" | bc`
|
||||
lower_limit=${lower_limit%.*}
|
||||
upper_limit=${MemTotal}
|
||||
tgt=${MemFree}
|
||||
|
||||
if [ ${tgt} -ge ${lower_limit} -a ${tgt} -lt ${upper_limit} ]; then
|
||||
echo "[OK] MemFree: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected MemFree: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check SwapTotal
|
||||
SwapTotalTxt=`cat ./cur_meminfo.txt | grep SwapTotal | awk '{print $(NF-1)}'`
|
||||
SwapTotal=`echo "1024 * ${SwapTotalTxt}" | bc`
|
||||
|
||||
tgt=${SwapTotal}
|
||||
|
||||
if [ ${tgt} -eq 0 ]; then
|
||||
echo "[OK] SwapTotal: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected SwapTotal: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check SwapFree
|
||||
SwapFreeTxt=`cat ./cur_meminfo.txt | grep SwapFree | awk '{print $(NF-1)}'`
|
||||
SwapFree=`echo "1024 * ${SwapFreeTxt}" | bc`
|
||||
|
||||
tgt=${SwapFree}
|
||||
|
||||
if [ ${tgt} -eq 0 ]; then
|
||||
echo "[OK] SwapFree: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected SwapFree: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check CommitLimit
|
||||
CommitLimitTxt=`cat ./cur_meminfo.txt | grep CommitLimit | awk '{print $(NF-1)}'`
|
||||
CommitLimit=`echo "1024 * ${CommitLimitTxt}" | bc`
|
||||
|
||||
tgt=${CommitLimit}
|
||||
|
||||
if [ ${tgt} -eq ${MemFree} ]; then
|
||||
echo "[OK] CommitLimit: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected CommitLimit: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check Committed_AS
|
||||
Committed_ASTxt=`cat ./cur_meminfo.txt | grep Committed_AS | awk '{print $(NF-1)}'`
|
||||
Committed_AS=`echo "1024 * ${Committed_ASTxt}" | bc`
|
||||
|
||||
tgt=${Committed_AS}
|
||||
|
||||
if [ ${tgt} -eq $((${MemTotal} - ${MemFree})) ]; then
|
||||
echo "[OK] Committed_AS: ${tgt}"
|
||||
else
|
||||
echo "[NG] unexpected Committed_AS: ${tgt}"
|
||||
exit 1
|
||||
fi
|
||||
11
test/issues/1389/Makefile
Normal file
11
test/issues/1389/Makefile
Normal file
@ -0,0 +1,11 @@
|
||||
CFLAGS=-g
|
||||
LDFLAGS=
|
||||
|
||||
TARGET=C1389T01
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
test: all
|
||||
sh ./C1389.sh
|
||||
clean:
|
||||
rm -f $(TARGET) *.o *.txt
|
||||
46
test/issues/1389/README
Normal file
46
test/issues/1389/README
Normal file
@ -0,0 +1,46 @@
|
||||
【Issue#1389 動作確認】
|
||||
□ テスト内容
|
||||
本Issueの対応で、sysinfo()と/proc/meminfo の下記項目においてMcKernelの情報を
|
||||
返すようにした。
|
||||
[sysinfo]
|
||||
totalram : rusage_global の total_memory
|
||||
freeram : rusage_global の total_memory - usage_memory
|
||||
mem_unit : 常に1
|
||||
[/proc/meminfo]
|
||||
MemTotal : rusage_global の total_memory
|
||||
MemFree : rusage_global の total_memory - usage_memory
|
||||
SwapTotal : 常に0
|
||||
SwapFree : 常に0
|
||||
CommitLimit : rusage_global の total_memory - usage_memory
|
||||
Committed_AS : rusage_global の usage_memory
|
||||
|
||||
1. 本Issueで対応したsysinfo() と /proc/meminfo の値が想定どおりとなっていることを確認
|
||||
McKernelへのメモリ割り当てを 10G@0,10G@1 とした状態で下記プログラムを実行
|
||||
C1389T01: sysinfo() で取得される値が下記のとおりであることを確認
|
||||
totalram : 20GiB * 0.95 以上、20GiB 未満であること
|
||||
freeram : totralram * 0.95 以上、totalram 未満であること
|
||||
mem_unit : 1 であること
|
||||
C1389T02: /proc/meminfo から取得される値が下記のとおりであることを確認
|
||||
MemTotal : 20GiB * 0.95 以上、20GiB 未満であること
|
||||
MemFree : MemTotal * 0.95 以上、MemTotal 未満であること
|
||||
SwapTotal : 0 であること
|
||||
SwapFree : 0 であること
|
||||
CommitLimit : MemFreeと同値であること
|
||||
Committed_AS : MemTotal - MemFree と同値であること
|
||||
|
||||
2. 本Issueで対応したsysinfo() の項目を利用する以下のLTPを実行し、PASSすることを確認
|
||||
- mtest01 -p80
|
||||
- mtest01 -p80 -w
|
||||
- mem01
|
||||
|
||||
□ 実行手順
|
||||
$ make test
|
||||
|
||||
McKernelのインストール先や、OSTEST, LTPの配置場所は、
|
||||
$HOME/.mck_test_config を参照している
|
||||
.mck_test_config は、McKernelをビルドした際に生成されるmck_test_config.sample ファイルを
|
||||
$HOMEにコピーし、適宜編集する
|
||||
|
||||
□ 実行結果
|
||||
x86_64_result.log aarch64_result.log 参照。
|
||||
すべての項目をPASSしていることを確認。
|
||||
77
test/issues/1389/aarch64_result.log
Normal file
77
test/issues/1389/aarch64_result.log
Normal file
@ -0,0 +1,77 @@
|
||||
sh ./C1389.sh
|
||||
mcstop+release.sh ... done
|
||||
mcreboot.sh -c 1-7 -m 10G@0,10G@1 -O ... done
|
||||
*** C1389T01 start *******************************
|
||||
[OK] totalram: 21472215040
|
||||
[OK] freeram: 21461794816
|
||||
[OK] mem_unit: 1
|
||||
*** C1389T01 PASSED ******************************
|
||||
|
||||
*** C1389T02 start *******************************
|
||||
[OK] MemTotal: 21472215040
|
||||
[OK] MemFree: 21452750848
|
||||
[OK] SwapTotal: 0
|
||||
[OK] SwapFree: 0
|
||||
[OK] CommitLimit: 21452750848
|
||||
[OK] Committed_AS: 19464192
|
||||
*** C1389T02 PASSED ******************************
|
||||
|
||||
*** C1389T03 start *******************************
|
||||
mtest01 -p80
|
||||
tst_test.c:1096: INFO: Timeout per run is 0h 05m 00s
|
||||
mtest01.c:134: INFO: Filling up 80% of free ram which is 16760729 kbytes
|
||||
mtest01.c:149: INFO: ... child 50935 starting
|
||||
mtest01.c:149: INFO: ... child 50944 starting
|
||||
mtest01.c:149: INFO: ... child 50953 starting
|
||||
mtest01.c:149: INFO: ... child 50962 starting
|
||||
mtest01.c:149: INFO: ... child 50971 starting
|
||||
mtest01.c:149: INFO: ... child 50980 starting
|
||||
mtest01.c:169: INFO: ... [t=300] 1434451968 bytes allocated only in child 50980
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 50935
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 50944
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 50953
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 50962
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 50971
|
||||
mtest01.c:221: PASS: 16760729 kbytes allocated
|
||||
|
||||
Summary:
|
||||
passed 1
|
||||
failed 0
|
||||
skipped 0
|
||||
warnings 0
|
||||
*** C1389T03 PASSED (1)
|
||||
|
||||
*** C1389T04 start *******************************
|
||||
mtest01 -p80 -w
|
||||
tst_test.c:1096: INFO: Timeout per run is 0h 05m 00s
|
||||
mtest01.c:134: INFO: Filling up 80% of free ram which is 16759654 kbytes
|
||||
mtest01.c:149: INFO: ... child 51017 starting
|
||||
mtest01.c:149: INFO: ... child 51026 starting
|
||||
mtest01.c:149: INFO: ... child 51035 starting
|
||||
mtest01.c:149: INFO: ... child 51044 starting
|
||||
mtest01.c:149: INFO: ... child 51053 starting
|
||||
mtest01.c:149: INFO: ... child 51062 starting
|
||||
mtest01.c:166: INFO: ... [t=300] 1433403392 bytes allocated and used in child 51062
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 51017
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 51026
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 51035
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 51044
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 51053
|
||||
mtest01.c:221: PASS: 16759654 kbytes allocated (and written to)
|
||||
|
||||
Summary:
|
||||
passed 1
|
||||
failed 0
|
||||
skipped 0
|
||||
warnings 0
|
||||
*** C1389T04 PASSED (1)
|
||||
|
||||
*** C1389T05 start *******************************
|
||||
mem01
|
||||
mem01 0 TINFO : Free Mem: 20465 Mb
|
||||
mem01 0 TINFO : Free Swap: 0 Mb
|
||||
mem01 0 TINFO : Total Free: 20465 Mb
|
||||
mem01 0 TINFO : Total Tested: 3056 Mb
|
||||
mem01 0 TINFO : touching 3056MB of malloc'ed memory (linear)
|
||||
mem01 1 TPASS : malloc - alloc of 3056MB succeeded
|
||||
*** C1389T05 PASSED (1)
|
||||
77
test/issues/1389/x86_64_result.log
Normal file
77
test/issues/1389/x86_64_result.log
Normal file
@ -0,0 +1,77 @@
|
||||
sh ./C1389.sh
|
||||
mcstop+release.sh ... done
|
||||
mcreboot.sh -c 1-7 -m 10G@0,10G@1 -O ... done
|
||||
*** C1389T01 start *******************************
|
||||
[OK] totalram: 21463240704
|
||||
[OK] freeram: 21459673088
|
||||
[OK] mem_unit: 1
|
||||
*** C1389T01 PASSED ******************************
|
||||
|
||||
*** C1389T02 start *******************************
|
||||
[OK] MemTotal: 21463240704
|
||||
[OK] MemFree: 21453983744
|
||||
[OK] SwapTotal: 0
|
||||
[OK] SwapFree: 0
|
||||
[OK] CommitLimit: 21453983744
|
||||
[OK] Committed_AS: 9256960
|
||||
*** C1389T02 PASSED ******************************
|
||||
|
||||
*** C1389T03 start *******************************
|
||||
mtest01 -p80
|
||||
tst_test.c:1096: INFO: Timeout per run is 0h 05m 00s
|
||||
mtest01.c:134: INFO: Filling up 80% of free ram which is 16762396 kbytes
|
||||
mtest01.c:149: INFO: ... child 20718 starting
|
||||
mtest01.c:149: INFO: ... child 20727 starting
|
||||
mtest01.c:149: INFO: ... child 20736 starting
|
||||
mtest01.c:149: INFO: ... child 20745 starting
|
||||
mtest01.c:149: INFO: ... child 20754 starting
|
||||
mtest01.c:149: INFO: ... child 20763 starting
|
||||
mtest01.c:169: INFO: ... [t=300] 1436549120 bytes allocated only in child 20763
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 20718
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 20727
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 20736
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 20745
|
||||
mtest01.c:169: INFO: ... [t=299] 3145728000 bytes allocated only in child 20754
|
||||
mtest01.c:221: PASS: 16762396 kbytes allocated
|
||||
|
||||
Summary:
|
||||
passed 1
|
||||
failed 0
|
||||
skipped 0
|
||||
warnings 0
|
||||
*** C1389T03 PASSED (1)
|
||||
|
||||
*** C1389T04 start *******************************
|
||||
mtest01 -p80 -w
|
||||
tst_test.c:1096: INFO: Timeout per run is 0h 05m 00s
|
||||
mtest01.c:134: INFO: Filling up 80% of free ram which is 16761132 kbytes
|
||||
mtest01.c:149: INFO: ... child 20802 starting
|
||||
mtest01.c:149: INFO: ... child 20811 starting
|
||||
mtest01.c:149: INFO: ... child 20820 starting
|
||||
mtest01.c:149: INFO: ... child 20829 starting
|
||||
mtest01.c:149: INFO: ... child 20838 starting
|
||||
mtest01.c:149: INFO: ... child 20847 starting
|
||||
mtest01.c:166: INFO: ... [t=300] 1435500544 bytes allocated and used in child 20847
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 20802
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 20811
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 20820
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 20829
|
||||
mtest01.c:166: INFO: ... [t=299] 3145728000 bytes allocated and used in child 20838
|
||||
mtest01.c:221: PASS: 16761132 kbytes allocated (and written to)
|
||||
|
||||
Summary:
|
||||
passed 1
|
||||
failed 0
|
||||
skipped 0
|
||||
warnings 0
|
||||
*** C1389T04 PASSED (1)
|
||||
|
||||
*** C1389T05 start *******************************
|
||||
mem01
|
||||
mem01 0 TINFO : Free Mem: 20463 Mb
|
||||
mem01 0 TINFO : Free Swap: 0 Mb
|
||||
mem01 0 TINFO : Total Free: 20463 Mb
|
||||
mem01 0 TINFO : Total Tested: 3056 Mb
|
||||
mem01 0 TINFO : touching 3056MB of malloc'ed memory (linear)
|
||||
mem01 1 TPASS : malloc - alloc of 3056MB succeeded
|
||||
*** C1389T05 PASSED (1)
|
||||
Reference in New Issue
Block a user