49 lines
2.6 KiB
Plaintext
49 lines
2.6 KiB
Plaintext
【Issue#1176 動作確認】
|
|
□ テスト内容
|
|
1. 指摘の現象が解消されていることを確認する。
|
|
|
|
C1176T01 指摘の現象が解消されていることを、テストプログラムを用いて確認
|
|
mcexec test_mck -s getrusage -n 2
|
|
|
|
2. 修正が正しく動作することをテストプログラムを用いて確認する。
|
|
変更は以下の3点である。
|
|
(1) システムコール出口で高速化のためシグナル処理を呼び出していなかったが、
|
|
ロック無しでシグナル受信を判定後に、シグナル処理を呼び出すようにした。
|
|
(2) futex_wait 処理で高速化のためシグナル受信の判定処理をしていなかったが、
|
|
ロック無しでシグナル受信を判定し、受信していた場合にfutex_wait
|
|
処理を脱出するようにした。(その後、システムコール出口でシグナルが
|
|
処理される)
|
|
(3) 高速化のためシステムコール出口での再スケジュール処理を呼び出して
|
|
いなかったが、ロック無しで再スケジュール要否を判定し、再スケジュールが
|
|
必要な場合は再スケジュール処理を行うよにした。
|
|
|
|
C1176T02 システムコールオフロード中にシグナル受信し、システムコールが中断
|
|
してシグナル処理されることを確認
|
|
|
|
C1176T03 futex_wait 処理中にシグナル受信し、futex_waitが中断してシグナルが
|
|
処理されることを確認
|
|
|
|
C1176T04 2つのプロセスを同一CPUに割り当てた状態で、各々1秒sleepするとき、
|
|
それぞれのプロセスが正しく処理されることを確認。
|
|
sleep完了後にシステムコール出口で再スケジュール処理が行われる
|
|
|
|
3. 修正が既存処理に影響しないことをLTPを用いて確認する。
|
|
シグナル関連処理(正常系)を中心にテストプログラムを選定した。
|
|
|
|
C1176T05 kill01: kill の基本機能の確認
|
|
C1176T06 kill12: kill, wait, signal の組み合わせ確認
|
|
C1176T07 pause02: pause の基本機能の確認
|
|
C1176T08 sigaction01: sigaction の基本機能の確認
|
|
|
|
□ 実行手順
|
|
$ make test
|
|
|
|
McKernelのインストール先や、OSTEST, LTPの配置場所は、
|
|
$HOME/.mck_test_config を参照している
|
|
.mck_test_config は、McKernelをビルドした際に生成されるmck_test_config.sample ファイルを
|
|
$HOMEにコピーし、適宜編集する
|
|
|
|
□ 実行結果
|
|
C1176.txt 参照。
|
|
全ての項目が OK となっていることを確認。
|