This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
【Issue#898,#928 動作確認】
Issue#898, #928が解決され、既存機能に影響がないことをihklibテストスイートを用いた確認( 2項目) と、
McKernelの起動/終了の基本動作確認( 9項目) の計11項目のテストによって確認した。
1. ihklibテストスイートを用いた確認
・Issue#898 (https://postpeta.pccluster.org/redmine/issues/898)
報告で使用されたテストプログラムを1000回繰り返し実行して、現象が再現しないことを確認した。
・Issue#928 (https://postpeta.pccluster.org/redmine/issues/928)
報告で使用されたテストプログラムを1000回繰り返し実行して、現象が再現しないことを確認した。
2. McKernelの起動/終了の基本動作確認
McKernelの状態と、終了処理(shutdown, destroy)の組み合わせで、
9項目のテストを実施した。
基本動作確認の詳細を以下に示す。
(1) ファイルの説明
CT_xxx.c 各テスト項目のテストプログラム
force_shutdown.patch McKernelの状態がRUNNINGにならなかった場合に行う強制シャットダウン処理を
発生させるパッチファイル
result.log テストプログラムの実行結果
(2) テストの実行方法
以下の手順でテストを実行する
1. Makefileの変数MCK_DIRの内容を、McKernelがインストールされているディレクトリに変更する
2. CT_xxx.c の定数MCK_DIRの内容を、McKernelがインストールされているディレクトリに変更する
3. sh make test を実行する
(3) テスト項目
以下の条件でMcKernelの起動/終了が正常に行われることを確認する
なお、McKernelの起動、終了の操作はihklibを用いて実施する
CT_001:
1. McKernelを起動(ihk_os_boot)する
2. 起動の直後にMcKernelを終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0を返す
CT_002:
1. McKernelを起動(ihk_os_boot)する
2. 起動の直後に対象のIHK_OSインスタンスを破棄(ihk_os_destroy)する
⇒ ihk_os_destroyが0を返す
CT_003:
1. McKernelを起動(ihk_os_boot)する
2. McKernelプロセスを実行する
3. McKernelプロセスの実行終了直後にMcKernelを終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0を返す
CT_004:
1. McKernelを起動(ihk_os_boot)する
2. McKernelプロセスを実行する
3. McKernelプロセスの実行終了直後に対象のIHK_OSインスタンスを破棄(ihk_os_destroy)する
⇒ ihk_os_destroyが0を返す
CT_005:
1. McKernelを起動(ihk_os_boot)する
2. McKernelプロセスを実行する
3. McKernelプロセスの実行中にMcKernelを終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0を返す
CT_006:
1. McKernelを起動(ihk_os_boot)する
2. McKernelプロセスを実行する
3. McKernelプロセスの実行中に対象のIHK_OSインスタンスを破棄(ihk_os_destroy)する
⇒ ihk_os_destroyが0以外を返す (ref_count != 0)
CT_007:
1. McKernelの起動処理の中の、カーネルイメージのロード(ihk_os_load)までを実施する
2. McKernelを終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0を返す
CT_008:
1. McKernelを起動(ihk_os_boot)する
2. McKernelプロセスを実行する
3. McKernelプロセスの実行終了直後にMcKernelを終了(ihk_os_shutdown)する
4. ihk_os_get_status がSHUTDOWNまたは、INACTIVEを返すことを確認する
5. 終了したMcKernelに対して、再度終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0以外を返す
CT_009:
前提: force_shutdown.patch を適用してMcKernelをビルドする
1. McKernelを起動(ihk_os_boot)する
2. 起動の直後にMcKernelを終了(ihk_os_shutdown)する
⇒ ihk_os_shutdownが0を返す
(4) 結果
テストプログラムの実行結果はresult.log に出力される。
上記9項目で[OK]が出力されていることを確認した。