Test "fix: Bug for getrusage" on arm64
The following test set: fix: Bug for getrusage return incorrect ru_maxrss fix: Bug for getrusage(RUSAGE_CHILDREN) return parent info (POSTK_DEBUG_TEMP_FIX_72) fix: Bug for getrusage often return incorrect ru_stime Change-Id: I6734b1e34565d5d2715f9901a04ba5b6f0278032 Refs: #1032 Refs: #1033 Refs: #1034
This commit is contained in:
committed by
Masamichi Takagi
parent
a11d4d7a9d
commit
ec844bb6e3
262
test/mng_mod/issues/1032-34/x86_64/result.log
Normal file
262
test/mng_mod/issues/1032-34/x86_64/result.log
Normal file
@ -0,0 +1,262 @@
|
||||
①Issueで報告されたテストプログラムによる確認
|
||||
$ mcexec ./test_mck -s getrusage -n 0
|
||||
TEST_SUITE: getrusage
|
||||
TEST_NUMBER: 0
|
||||
ARGS:
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=0s + 565us
|
||||
ru_stime=0s + 14923us
|
||||
ru_maxrss=6088
|
||||
------------------------------
|
||||
allocation memory 16777216 byte(16384 KiB)
|
||||
alarm 2 seconds wait.
|
||||
sleep 2 seconds wait.
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=1s + 998545us
|
||||
ru_stime=2s + 17802us
|
||||
ru_maxrss=22492
|
||||
------------------------------
|
||||
free memory 16777216 byte(16384 KiB)
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=1s + 998554us
|
||||
ru_stime=2s + 17932us
|
||||
ru_maxrss=22492
|
||||
------------------------------
|
||||
RESULT: you need check rusage value
|
||||
|
||||
$ mcexec ./test_mck -s getrusage -n 1
|
||||
TEST_SUITE: getrusage
|
||||
TEST_NUMBER: 1
|
||||
ARGS:
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=0s + 0us
|
||||
ru_stime=0s + 0us
|
||||
ru_maxrss=0
|
||||
------------------------------
|
||||
allocation memory 16777216 byte(16384 KiB)
|
||||
alarm 2 seconds wait.
|
||||
sleep 2 seconds wait.
|
||||
free memory 16777216 byte(16384 KiB)
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=1s + 998065us
|
||||
ru_stime=2s + 2942us
|
||||
ru_maxrss=21828
|
||||
------------------------------
|
||||
RESULT: you need check rusage value
|
||||
|
||||
$ mcexec ./test_mck -s getrusage -n 2
|
||||
TEST_SUITE: getrusage
|
||||
TEST_NUMBER: 2
|
||||
ARGS:
|
||||
[parent before]
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=0s + 563us
|
||||
ru_stime=0s + 10281us
|
||||
ru_maxrss=6096
|
||||
------------------------------
|
||||
[child before]
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=0s + 7us
|
||||
ru_stime=0s + 30us
|
||||
ru_maxrss=14304
|
||||
------------------------------
|
||||
allocation memory 16777216 byte(16384 KiB)
|
||||
alarm 2 seconds wait.
|
||||
sleep 2 seconds wait.
|
||||
free memory 16777216 byte(16384 KiB)
|
||||
[child after]
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=1s + 997905us
|
||||
ru_stime=2s + 3090us
|
||||
ru_maxrss=30708
|
||||
------------------------------
|
||||
[parent after]
|
||||
------------------------------
|
||||
show_rusage():
|
||||
ru_utime=0s + 580us
|
||||
ru_stime=4s + 12829us
|
||||
ru_maxrss=30712
|
||||
------------------------------
|
||||
RESULT: you need check rusage value
|
||||
|
||||
②McKernelでのgetrusage()の基本動作確認
|
||||
/home/satoken/ppos/bin/mcexec ./CT_001
|
||||
---- just started ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 0.000529 s (+ 0.000529 s)
|
||||
[OK] stime: 0.024795 s (+ 0.024795 s)
|
||||
---- add utime 2sec ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 1.997453 s (+ 1.996924 s)
|
||||
[OK] stime: 0.024974 s (+ 0.000179 s)
|
||||
---- add stime 1sec ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 1.997461 s (+ 0.000008 s)
|
||||
[OK] stime: 1.023560 s (+ 0.998586 s)
|
||||
*** CT_001 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_002
|
||||
---- just started ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 6012 KB (+ 6012 KB)
|
||||
---- mmap and access 12MB (12288 KB) ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 18352 KB (+ 12340 KB)
|
||||
---- munmap 12MB (12288 KB) ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 18352 KB (+ 0 KB)
|
||||
---- mmap and access 16MB (16384 KB) ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 22448 KB (+ 4096 KB)
|
||||
*** CT_002 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_003
|
||||
---- just started ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 0.000531 s (+ 0.000531 s)
|
||||
[OK] stime: 0.009804 s (+ 0.009804 s)
|
||||
---- create thread and join ----
|
||||
---- add utime 2sec in sub thread ----
|
||||
---- add stime 1sec in sub thread ----
|
||||
---- sub thread exit ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 1.997496 s (+ 1.996965 s) <- サブスレッド増分2秒
|
||||
[OK] stime: 4.005407 s (+ 3.995603 s) <- サブスレッド増分1秒 + メインスレッドjoin待ち3秒
|
||||
*** CT_003 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_004
|
||||
---- just started ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 6008 KB (+ 6008 KB)
|
||||
---- create thread and join ----
|
||||
---- mmap and access 16MB (16384 KB) in sub thread ----
|
||||
---- munmap 16MB (16384 KB) in sub thread ----
|
||||
---- sub thread exit ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] maxrss: 30652 KB (+ 24644 KB)
|
||||
*** CT_004 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_005
|
||||
---- just started ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 0.000523 s (+ 0.000523 s)
|
||||
[OK] stime: 0.009879 s (+ 0.009879 s)
|
||||
[OK] maxrss: 6012 KB (+ 6012 KB)
|
||||
---- fork child process ----
|
||||
---- add utime 3sec in parent ----
|
||||
---- add utime 1sec in child ----
|
||||
---- add stime 1sec in child ----
|
||||
---- mmap and access 16MB (16384 KB) in child ----
|
||||
---- munmap 16MB (16384 KB) in child ----
|
||||
---- child process exit ----
|
||||
---- wait child's exit ----
|
||||
[ RUSAGE_SELF ]
|
||||
[OK] utime: 2.995900 s (+ 2.995377 s)
|
||||
[OK] stime: 0.015519 s (+ 0.005640 s)
|
||||
[OK] maxrss: 6084 KB (+ 72 KB)
|
||||
*** CT_005 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_006
|
||||
---- just started ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] utime: 0.000000 s (+ 0.000000 s)
|
||||
[OK] stime: 0.000000 s (+ 0.000000 s)
|
||||
---- fork child process ----
|
||||
---- add utime 1sec in parent ----
|
||||
---- add utime 2sec in child ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] utime: 0.000000 s (+ 0.000000 s) <- 子プロセスが未終了のため、0
|
||||
[OK] stime: 0.000000 s (+ 0.000000 s) <- 子プロセスが未終了のため、0
|
||||
---- wait child's exit ----
|
||||
---- add stime 1sec in child ----
|
||||
---- child process exit ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] utime: 1.996949 s (+ 1.996949 s)
|
||||
[OK] stime: 0.998664 s (+ 0.998664 s)
|
||||
*** CT_006 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_007
|
||||
---- just started ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] maxrss: 0 KB (+ 0 KB)
|
||||
---- fork child process ----
|
||||
---- mmap and access 32MB (32768 KB) in parent ----
|
||||
---- add utime 1sec in child ----
|
||||
---- munmap 32MB (32768 KB) in parent ----
|
||||
---- wait child's exit ----
|
||||
---- mmap and access 16MB (16384 KB) in child ----
|
||||
---- munmap 16MB (16384 KB) in child ----
|
||||
---- child process exit ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] maxrss: 21516 KB (+ 21516 KB) <- 子プロセス終了後に更新 (プロセス生成時の5~6M + mmapでの16M)
|
||||
*** CT_007 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_008
|
||||
---- just started ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] utime: 0.000000 s (+ 0.000000 s)
|
||||
[OK] stime: 0.000000 s (+ 0.000000 s)
|
||||
[OK] maxrss: 0 KB (+ 0 KB)
|
||||
---- fork child process ----
|
||||
---- wait child's exit ----
|
||||
---- fork grand_child process ----
|
||||
---- add utime 2sec in child ----
|
||||
---- add utime 1sec in grand_child ----
|
||||
---- add stime 1sec in grand_child ----
|
||||
---- add stime 1sec in child ----
|
||||
---- mmap and access 32MB (32768 KB) in grand_child ----
|
||||
---- munmap 32MB (32768 KB) in grand_child ----
|
||||
---- grand_child process exit ----
|
||||
---- mmap and access 8MB (8192 KB) in child ----
|
||||
---- munmap 8MB (8192 KB) in child ----
|
||||
---- wait grand_child's exit ----
|
||||
---- child process exit ----
|
||||
[ RUSAGE_CHILDREN ]
|
||||
[OK] utime: 2.999773 s (+ 2.999773 s) <- 子プロセス2秒、孫プロセス1秒の和
|
||||
[OK] stime: 2.009370 s (+ 2.009370 s) <- 子プロセス1秒、孫プロセス1秒の和
|
||||
[OK] maxrss: 37896 KB (+ 37896 KB) <- 子、孫のmaxrssの最大値
|
||||
*** CT_008 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_009
|
||||
---- just started ----
|
||||
[OK] utime: 0.000533 s (+ 0.000533 s)
|
||||
[OK] stime: 0.009959 s (+ 0.009959 s)
|
||||
---- add utime 1sec in main thread ----
|
||||
---- create thread and join ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] utime: 0.000005 s (+ 0.000005 s)
|
||||
[OK] stime: 0.000013 s (+ 0.000013 s)
|
||||
---- add utime 2sec in sub thread ----
|
||||
---- add stime 1sec in sub thread ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] utime: 1.996928 s (+ 1.996928 s)
|
||||
[OK] stime: 0.998632 s (+ 0.998632 s)
|
||||
---- sub thread exit ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] utime: 0.999024 s (+ 0.998491 s)
|
||||
[OK] stime: 3.006973 s (+ 2.997014 s) <- join待ち3秒
|
||||
*** CT_009 PASS
|
||||
|
||||
/home/satoken/ppos/bin/mcexec ./CT_010
|
||||
---- just started ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] maxrss: 6008 KB (+ 6008 KB)
|
||||
---- mmap and access 8MB (8192 KB) in main thread ----
|
||||
---- munmap 8MB (8192 KB) in main thread ----
|
||||
---- create and join thread ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] maxrss: 14264 KB
|
||||
---- mmap and access 16MB (16384 KB) in sub thread ----
|
||||
---- munmap 16MB (16384 KB) in sub thread ----
|
||||
---- sub thread exit ----
|
||||
[ RUSAGE_THREAD ]
|
||||
[OK] maxrss: 30652 KB (+ 24644 KB)
|
||||
*** CT_010 PASS
|
||||
Reference in New Issue
Block a user