Files
mckernel/test/issues/1176

【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 となっていることを確認。