test: rt_sigtimedwait: Add test cases for SIG_IGN and real-time signal
Change-Id: I4abafe73d81cfa77167289477ea8c5af701e7f2e Refs: #1378 Refs: #1440
This commit is contained in:
committed by
Masamichi Takagi
parent
7e748b4ecb
commit
37fd9e0cd2
20
test/issues/1378+1440/C1378.sh
Normal file
20
test/issues/1378+1440/C1378.sh
Normal file
@ -0,0 +1,20 @@
|
||||
#!/bin/sh
|
||||
USELTP=1
|
||||
USEOSTEST=0
|
||||
|
||||
. ../../common.sh
|
||||
|
||||
################################################################################
|
||||
for i in rt_sigtimedwait01:01 kill02:02 kill09:03 kill12:04 llseek01:05 \
|
||||
signal01:06 signal02:07 signal03:08 getrusage03:09 write05:10; do
|
||||
tp=`echo $i|sed 's/:.*//'`
|
||||
id=`echo $i|sed 's/.*://'`
|
||||
sudo PATH=$PATH:$LTPBIN $MCEXEC $LTPBIN/$tp 2>&1 | tee $tp.txt
|
||||
ok=`grep TPASS $tp.txt | wc -l`
|
||||
ng=`grep TFAIL $tp.txt | wc -l`
|
||||
if [ $ng = 0 ]; then
|
||||
echo "*** C1378T$id: $tp PASS ($ok)"
|
||||
else
|
||||
echo "*** C1378T$id: $tp FAIL (ok=$ok ng=$ng)"
|
||||
fi
|
||||
done
|
||||
146
test/issues/1378+1440/C1378_arm64.txt
Normal file
146
test/issues/1378+1440/C1378_arm64.txt
Normal file
@ -0,0 +1,146 @@
|
||||
Script started on 2020-02-20 01:31:48+00:00
|
||||
bash-4.4$ name -m
|
||||
aarch64
|
||||
bash-4.4$ make test
|
||||
sh ./C1378.sh
|
||||
mcstop+release.sh ... done
|
||||
mcreboot.sh -c 2-7,10-15 -m 2G@0 -O ... done
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 1 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 2 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 3 TPASS : Test passed
|
||||
rt_sigtimedwait01 3 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 4 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 5 TPASS : Test passed
|
||||
rt_sigtimedwait01 5 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 6 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 7 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 10
|
||||
rt_sigtimedwait01 8 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 0
|
||||
rt_sigtimedwait01 9 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 12
|
||||
rt_sigtimedwait01 10 TPASS : Test passed
|
||||
rt_sigtimedwait01 10 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 12
|
||||
rt_sigtimedwait01 11 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, 15
|
||||
rt_sigtimedwait01 12 TPASS : Test passed
|
||||
rt_sigtimedwait01 12 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401bf0, -1
|
||||
rt_sigtimedwait01 13 TPASS : Test passed
|
||||
rt_sigtimedwait01 13 TPASS : Test passed
|
||||
rt_sigtimedwait01 13 TPASS : sigwaitinfo restored the original mask
|
||||
*** C1378T01: rt_sigtimedwait01 PASS (19)
|
||||
kill02 1 TPASS : The signal was sent to all processes in the process group.
|
||||
kill02 2 TPASS : The signal was not sent to selective processes that were not in the process group.
|
||||
*** C1378T02: kill02 PASS (2)
|
||||
kill09 1 TPASS : kill(1055, SIGKILL) returned 0
|
||||
*** C1378T03: kill09 PASS (1)
|
||||
kill12 1 TPASS : Test passed
|
||||
*** C1378T04: kill12 PASS (1)
|
||||
llseek01 1 TPASS : Functionality of llseek() on tmp_file successful
|
||||
*** C1378T05: llseek01 PASS (1)
|
||||
signal01 1 TPASS : signal(SIGKILL, 0x1(SIG_IGN)) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : signal(SIGKILL, (nil)(SIG_DFL)) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : signal(SIGKILL, 0x402430(catchsig())) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : Child killed with SIGKILL
|
||||
signal01 2 TPASS : Child killed with SIGKILL
|
||||
signal01 3 TPASS : Child killed with SIGKILL
|
||||
*** C1378T06: signal01 PASS (9)
|
||||
signal02 1 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
signal02 2 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
signal02 3 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
*** C1378T07: signal02 PASS (3)
|
||||
signal03 1 TPASS : signal03 call succeeded
|
||||
signal03 2 TPASS : signal03 call succeeded
|
||||
signal03 3 TPASS : signal03 call succeeded
|
||||
signal03 4 TPASS : signal03 call succeeded
|
||||
signal03 5 TPASS : signal03 call succeeded
|
||||
signal03 6 TPASS : signal03 call succeeded
|
||||
signal03 7 TPASS : signal03 call succeeded
|
||||
signal03 8 TPASS : signal03 call succeeded
|
||||
signal03 9 TPASS : signal03 call succeeded
|
||||
signal03 10 TPASS : signal03 call succeeded
|
||||
signal03 11 TPASS : signal03 call succeeded
|
||||
signal03 12 TPASS : signal03 call succeeded
|
||||
signal03 13 TPASS : signal03 call succeeded
|
||||
signal03 14 TPASS : signal03 call succeeded
|
||||
signal03 15 TPASS : signal03 call succeeded
|
||||
signal03 16 TPASS : signal03 call succeeded
|
||||
signal03 17 TPASS : signal03 call succeeded
|
||||
signal03 18 TPASS : signal03 call succeeded
|
||||
signal03 19 TPASS : signal03 call succeeded
|
||||
signal03 20 TPASS : signal03 call succeeded
|
||||
signal03 21 TPASS : signal03 call succeeded
|
||||
signal03 22 TPASS : signal03 call succeeded
|
||||
signal03 23 TPASS : signal03 call succeeded
|
||||
signal03 24 TPASS : signal03 call succeeded
|
||||
signal03 25 TPASS : signal03 call succeeded
|
||||
signal03 26 TPASS : signal03 call succeeded
|
||||
signal03 27 TPASS : signal03 call succeeded
|
||||
signal03 28 TPASS : signal03 call succeeded
|
||||
signal03 29 TPASS : signal03 call succeeded
|
||||
signal03 30 TPASS : signal03 call succeeded
|
||||
*** C1378T08: signal03 PASS (30)
|
||||
getrusage03 0 TINFO : allocate 100MB
|
||||
getrusage03 0 TINFO : Testcase #01: fork inherit
|
||||
getrusage03 0 TINFO : initial.self = 104704
|
||||
getrusage03 0 TINFO : child.self = 106880
|
||||
getrusage03 1 TPASS : initial.self ~= child.self
|
||||
getrusage03 0 TINFO : Testcase #02: fork inherit(cont.)
|
||||
getrusage03 0 TINFO : initial.children = 106880
|
||||
getrusage03 2 TPASS : initial.children ~= 100MB
|
||||
getrusage03 0 TINFO : child.children = 0
|
||||
getrusage03 3 TPASS : child.children == 0
|
||||
getrusage03 0 TINFO : Testcase #03: fork + malloc
|
||||
getrusage03 0 TINFO : initial.self = 104704
|
||||
getrusage03 0 TINFO : child allocate +50MB
|
||||
getrusage03 0 TINFO : child.self = 158144
|
||||
getrusage03 4 TPASS : initial.self + 50MB ~= child.self
|
||||
getrusage03 0 TINFO : Testcase #04: grandchild maxrss
|
||||
getrusage03 0 TINFO : initial.children = 158144
|
||||
getrusage03_child 0 TINFO : grandchild allocate 300MB
|
||||
getrusage03 0 TINFO : post_wait.children = 311616
|
||||
getrusage03 5 TPASS : child.children ~= 300MB
|
||||
getrusage03 0 TINFO : Testcase #05: zombie
|
||||
getrusage03 0 TINFO : initial.children = 311616
|
||||
getrusage03_child 0 TINFO : child allocate 400MB
|
||||
getrusage03 0 TINFO : pre_wait.children = 311616
|
||||
getrusage03 6 TPASS : initial.children ~= pre_wait.children
|
||||
getrusage03 0 TINFO : post_wait.children = 412800
|
||||
getrusage03 7 TPASS : post_wait.children ~= 400MB
|
||||
getrusage03 0 TINFO : Testcase #06: SIG_IGN
|
||||
getrusage03 0 TINFO : initial.children = 412800
|
||||
getrusage03_child 0 TINFO : child allocate 500MB
|
||||
getrusage03 0 TINFO : after_zombie.children = 412800
|
||||
getrusage03 8 TPASS : initial.children ~= after_zombie.children
|
||||
getrusage03 0 TINFO : Testcase #07: exec without fork
|
||||
getrusage03 0 TINFO : initial.self = 104704, initial.children = 412800
|
||||
getrusage03_child 0 TINFO : exec.self = 104704, exec.children = 412800
|
||||
getrusage03_child 1 TPASS : initial.self ~= exec.self
|
||||
getrusage03_child 2 TPASS : initial.children ~= exec.children
|
||||
*** C1378T09: getrusage03 PASS (10)
|
||||
write05 0 TINFO : Enter Block 1: test with bad fd
|
||||
write05 1 TPASS : received EBADF as expected.
|
||||
write05 0 TINFO : Exit Block 1
|
||||
write05 0 TINFO : Enter Block 2: test with a bad address
|
||||
write05 2 TPASS : received EFAULT as expected.
|
||||
write05 0 TINFO : Exit Block 2
|
||||
write05 0 TINFO : Enter Block 3: test with invalid pipe
|
||||
write05 3 TPASS : received EPIPE as expected.
|
||||
write05 0 TINFO : Exit Block 3
|
||||
*** C1378T10: write05 PASS (3)
|
||||
bash-4.4$ exit
|
||||
exit
|
||||
|
||||
Script done on 2020-02-20 01:33:17+00:00
|
||||
147
test/issues/1378+1440/C1378_x86_64.txt
Normal file
147
test/issues/1378+1440/C1378_x86_64.txt
Normal file
@ -0,0 +1,147 @@
|
||||
Script started on Thu Feb 20 10:36:48 2020
|
||||
bash-4.2$ uname -m
|
||||
x86_64
|
||||
bash-4.2$ make test
|
||||
sh ./C1378.sh
|
||||
mcstop+release.sh ... done
|
||||
mcreboot.sh -c 1-7,9-15,17-23,25-31 -m 10G@0,10G@1 -r 1-7:0+9-15:8+17-23:16+25-31:24 ... done
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 1 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 2 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 3 TPASS : Test passed
|
||||
rt_sigtimedwait01 3 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 4 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 5 TPASS : Test passed
|
||||
rt_sigtimedwait01 5 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 6 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 7 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 10
|
||||
rt_sigtimedwait01 8 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 0
|
||||
rt_sigtimedwait01 9 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 12
|
||||
rt_sigtimedwait01 10 TPASS : Test passed
|
||||
rt_sigtimedwait01 10 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 12
|
||||
rt_sigtimedwait01 11 TPASS : Test passed
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, 15
|
||||
rt_sigtimedwait01 12 TPASS : Test passed
|
||||
rt_sigtimedwait01 12 TPASS : sigwaitinfo restored the original mask
|
||||
rt_sigtimedwait01 0 TINFO : 0x401ba0, -1
|
||||
rt_sigtimedwait01 13 TPASS : Test passed
|
||||
rt_sigtimedwait01 13 TPASS : Test passed
|
||||
rt_sigtimedwait01 13 TPASS : sigwaitinfo restored the original mask
|
||||
*** C1378T01: rt_sigtimedwait01 PASS (19)
|
||||
kill02 1 TPASS : The signal was sent to all processes in the process group.
|
||||
kill02 2 TPASS : The signal was not sent to selective processes that were not in the process group.
|
||||
*** C1378T02: kill02 PASS (2)
|
||||
kill09 1 TPASS : kill(8015, SIGKILL) returned 0
|
||||
*** C1378T03: kill09 PASS (1)
|
||||
kill12 1 TPASS : Test passed
|
||||
*** C1378T04: kill12 PASS (1)
|
||||
llseek01 1 TPASS : Functionality of llseek() on tmp_file successful
|
||||
*** C1378T05: llseek01 PASS (1)
|
||||
signal01 1 TPASS : signal(SIGKILL, 0x1(SIG_IGN)) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : signal(SIGKILL, (nil)(SIG_DFL)) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : signal(SIGKILL, 0x4023d0(catchsig())) failed with EINVAL
|
||||
signal01 0 TINFO : Child process returned TPASS
|
||||
signal01 1 TPASS : Child killed with SIGKILL
|
||||
signal01 2 TPASS : Child killed with SIGKILL
|
||||
signal01 3 TPASS : Child killed with SIGKILL
|
||||
*** C1378T06: signal01 PASS (9)
|
||||
signal02 1 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
signal02 2 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
signal02 3 TPASS : expected failure - errno = 22 - Invalid argument
|
||||
*** C1378T07: signal02 PASS (3)
|
||||
signal03 1 TPASS : signal03 call succeeded
|
||||
signal03 2 TPASS : signal03 call succeeded
|
||||
signal03 3 TPASS : signal03 call succeeded
|
||||
signal03 4 TPASS : signal03 call succeeded
|
||||
signal03 5 TPASS : signal03 call succeeded
|
||||
signal03 6 TPASS : signal03 call succeeded
|
||||
signal03 7 TPASS : signal03 call succeeded
|
||||
signal03 8 TPASS : signal03 call succeeded
|
||||
signal03 9 TPASS : signal03 call succeeded
|
||||
signal03 10 TPASS : signal03 call succeeded
|
||||
signal03 11 TPASS : signal03 call succeeded
|
||||
signal03 12 TPASS : signal03 call succeeded
|
||||
signal03 13 TPASS : signal03 call succeeded
|
||||
signal03 14 TPASS : signal03 call succeeded
|
||||
signal03 15 TPASS : signal03 call succeeded
|
||||
signal03 16 TPASS : signal03 call succeeded
|
||||
signal03 17 TPASS : signal03 call succeeded
|
||||
signal03 18 TPASS : signal03 call succeeded
|
||||
signal03 19 TPASS : signal03 call succeeded
|
||||
signal03 20 TPASS : signal03 call succeeded
|
||||
signal03 21 TPASS : signal03 call succeeded
|
||||
signal03 22 TPASS : signal03 call succeeded
|
||||
signal03 23 TPASS : signal03 call succeeded
|
||||
signal03 24 TPASS : signal03 call succeeded
|
||||
signal03 25 TPASS : signal03 call succeeded
|
||||
signal03 26 TPASS : signal03 call succeeded
|
||||
signal03 27 TPASS : signal03 call succeeded
|
||||
signal03 28 TPASS : signal03 call succeeded
|
||||
signal03 29 TPASS : signal03 call succeeded
|
||||
signal03 30 TPASS : signal03 call succeeded
|
||||
signal03 31 TPASS : signal03 call succeeded
|
||||
*** C1378T08: signal03 PASS (31)
|
||||
getrusage03 0 TINFO : allocate 100MB
|
||||
getrusage03 0 TINFO : Testcase #01: fork inherit
|
||||
getrusage03 0 TINFO : initial.self = 103344
|
||||
getrusage03 0 TINFO : child.self = 105368
|
||||
getrusage03 1 TPASS : initial.self ~= child.self
|
||||
getrusage03 0 TINFO : Testcase #02: fork inherit(cont.)
|
||||
getrusage03 0 TINFO : initial.children = 105372
|
||||
getrusage03 2 TPASS : initial.children ~= 100MB
|
||||
getrusage03 0 TINFO : child.children = 0
|
||||
getrusage03 3 TPASS : child.children == 0
|
||||
getrusage03 0 TINFO : Testcase #03: fork + malloc
|
||||
getrusage03 0 TINFO : initial.self = 103344
|
||||
getrusage03 0 TINFO : child allocate +50MB
|
||||
getrusage03 0 TINFO : child.self = 156572
|
||||
getrusage03 4 TPASS : initial.self + 50MB ~= child.self
|
||||
getrusage03 0 TINFO : Testcase #04: grandchild maxrss
|
||||
getrusage03 0 TINFO : initial.children = 156572
|
||||
getrusage03_child 0 TINFO : grandchild allocate 300MB
|
||||
getrusage03 0 TINFO : post_wait.children = 310116
|
||||
getrusage03 5 TPASS : child.children ~= 300MB
|
||||
getrusage03 0 TINFO : Testcase #05: zombie
|
||||
getrusage03 0 TINFO : initial.children = 310116
|
||||
getrusage03_child 0 TINFO : child allocate 400MB
|
||||
getrusage03 0 TINFO : pre_wait.children = 310116
|
||||
getrusage03 6 TPASS : initial.children ~= pre_wait.children
|
||||
getrusage03 0 TINFO : post_wait.children = 412084
|
||||
getrusage03 7 TPASS : post_wait.children ~= 400MB
|
||||
getrusage03 0 TINFO : Testcase #06: SIG_IGN
|
||||
getrusage03 0 TINFO : initial.children = 412084
|
||||
getrusage03_child 0 TINFO : child allocate 500MB
|
||||
getrusage03 0 TINFO : after_zombie.children = 412084
|
||||
getrusage03 8 TPASS : initial.children ~= after_zombie.children
|
||||
getrusage03 0 TINFO : Testcase #07: exec without fork
|
||||
getrusage03 0 TINFO : initial.self = 103344, initial.children = 412084
|
||||
getrusage03_child 0 TINFO : exec.self = 103344, exec.children = 412084
|
||||
getrusage03_child 1 TPASS : initial.self ~= exec.self
|
||||
getrusage03_child 2 TPASS : initial.children ~= exec.children
|
||||
*** C1378T09: getrusage03 PASS (10)
|
||||
write05 0 TINFO : Enter Block 1: test with bad fd
|
||||
write05 1 TPASS : received EBADF as expected.
|
||||
write05 0 TINFO : Exit Block 1
|
||||
write05 0 TINFO : Enter Block 2: test with a bad address
|
||||
write05 2 TPASS : received EFAULT as expected.
|
||||
write05 0 TINFO : Exit Block 2
|
||||
write05 0 TINFO : Enter Block 3: test with invalid pipe
|
||||
write05 3 TPASS : received EPIPE as expected.
|
||||
write05 0 TINFO : Exit Block 3
|
||||
*** C1378T10: write05 PASS (3)
|
||||
bash-4.2$ exit
|
||||
exit
|
||||
|
||||
Script done on Thu Feb 20 10:37:30 2020
|
||||
10
test/issues/1378+1440/Makefile
Normal file
10
test/issues/1378+1440/Makefile
Normal file
@ -0,0 +1,10 @@
|
||||
CC = gcc
|
||||
TARGET =
|
||||
|
||||
all:: $(TARGET)
|
||||
|
||||
test:: all
|
||||
sh ./C1378.sh
|
||||
|
||||
clean::
|
||||
rm -f $(TARGET) *.o
|
||||
28
test/issues/1378+1440/README
Normal file
28
test/issues/1378+1440/README
Normal file
@ -0,0 +1,28 @@
|
||||
【Issue#1378, Issue#1440 動作確認】
|
||||
□ テスト内容
|
||||
1. Issue 指摘事項の再現確認
|
||||
C1378T01 LTP rt_sigtimedwait01を実行し、全てのテストケースがPASSすること。
|
||||
|
||||
2. LTP を用いて既存処理に影響しないことを確認
|
||||
シグナルのSIG_IGN処理を変更したため、SIG_IGNを使っているLTPを選定した。
|
||||
全てPASSすること。
|
||||
C1378T02 kill02: kill の基本機能の確認
|
||||
C1378T03 kill09: kill の基本機能の確認
|
||||
C1378T04 kill12: kill の基本機能の確認
|
||||
C1378T05 llseek01: llseek の基本機能の確認
|
||||
C1378T06 signal01: signal の基本機能の確認
|
||||
C1378T07 signal01: signal の基本機能の確認
|
||||
C1378T08 signal01: signal の基本機能の確認
|
||||
C1378T09 getrusage03: getrusage の基本機能の確認
|
||||
C1378T10 write05: write の基本機能の確認
|
||||
|
||||
□ 実行手順
|
||||
$ make test
|
||||
|
||||
McKernelのインストール先や LTP の配置場所は、$HOME/.mck_test_config を
|
||||
参照する。.mck_test_config は、McKernel をビルドした際に生成される
|
||||
mck_test_config.sample ファイルを $HOME にコピーし、適宜編集すること。
|
||||
|
||||
□ 実行結果
|
||||
C1378_x86_64.txt(x86_64実行結果)、C1378_arm64.txt(arm64実行結果)参照。
|
||||
全ての項目が PASS していることを確認。
|
||||
Reference in New Issue
Block a user