test: Add testcase for #1001
Refs: #1001 Change-Id: I3edd750108bd3f887af1f0afe3f2651f1243062b
This commit is contained in:
committed by
Masamichi Takagi
parent
786649d2a3
commit
d4fa953975
67
test/issues/1001/README
Normal file
67
test/issues/1001/README
Normal file
@ -0,0 +1,67 @@
|
||||
【Issue#1001 動作確認】
|
||||
□ テスト内容
|
||||
1. 既存のperf_event_open機能に影響がないことを確認
|
||||
CT_001: 単一イベント種別での計測
|
||||
1. perf_event_open を1回呼び出し、1つのカウンタの設定とfdの取得を行う
|
||||
2. PERF_EVENT_IOC_RESET を取得したfdにioctlで送信し、
|
||||
カウンタの値が0になっていることを確認する
|
||||
3. PERF_EVENT_IOC_ENABLE を取得したfdにioctlで送信し、計測を開始する
|
||||
4. 計測対象プログラム(calc_task(), memory_task())を実行する
|
||||
5. PERF_EVENT_IOC_DISABLE を取得したfdにioctlで送信し、計測を終了する
|
||||
6. 計測終了時のカウンタの値を取得し、表示する
|
||||
7. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
||||
8. カウンタの値が前回取得時から変化していないことを確認する
|
||||
|
||||
CT_002: 複数のイベント種別での計測
|
||||
1. perf_event_open を4回呼び出し、4つのカウンタの設定とfdの取得を行う
|
||||
1つ目のカウンタをリーダーとし、4つのカウンタを1つのグループとして設定する
|
||||
2. PERF_EVENT_IOC_RESET を各fdにioctlで送信し、
|
||||
各カウンタの値が0になっていることを確認する
|
||||
3. PERF_EVENT_IOC_ENABLE をグループリーダーのfdにioctlで送信し、計測を開始する
|
||||
4. 計測対象プログラム(calc_task(), memory_task())を実行する
|
||||
5. PERF_EVENT_IOC_DISABLE をグループリーダーのfdにioctlで送信し、計測を終了する
|
||||
6. 計測終了時の各カウンタの値を取得し、表示する
|
||||
7. 各カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
||||
8. カウンタの値が前回取得時から変化していないことを確認する
|
||||
|
||||
2. 既存のpa_info機能に影響がないことを確認
|
||||
CT_003: 単一のイベント種別での計測
|
||||
1. ihk_os_setperfevent を呼び出し、1種類のイベントの設定を行う
|
||||
2. ihk_os_perfctlをPERF_EVENT_ENABLE指定で呼び出し、計測を開始する
|
||||
3. 計測対象プログラム(calc_task(), memory_task())をmckernel上で実行する
|
||||
4. ihk_os_perfctlをPERF_EVENT_DISABLE指定で呼び出し、計測を終了する
|
||||
5. 計測終了時の各カウンタの値を取得し、表示する
|
||||
6. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
||||
7. カウンタの値が前回取得時から変化していないことを確認する
|
||||
|
||||
CT_004: 複数のイベント種別での計測
|
||||
1. ihk_os_setperfevent を呼び出し、4種類のイベントの設定を行う
|
||||
2. ihk_os_perfctlをPERF_EVENT_ENABLE指定で呼び出し、計測を開始する
|
||||
3. 計測対象プログラム(calc_task(), memory_task())をmckernel上で実行する
|
||||
4. ihk_os_perfctlをPERF_EVENT_DISABLE指定で呼び出し、計測を終了する
|
||||
5. 計測終了時の各カウンタの値を取得し、表示する
|
||||
6. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
||||
7. カウンタの値が前回取得時から変化していないことを確認する
|
||||
|
||||
3. LTPによる動作の確認
|
||||
LT_001: perf_event_open01 で、PERF_TYPE_HARDWARE 種別の計測が行えることを確認
|
||||
1. 上記テスト中の 1-5件目のテストがTPASSであることを確認
|
||||
1. 上記テスト中の 6,7件目のテストがTCONFであることを確認
|
||||
(PERF_TYPE_SOFTWARE指定はMcKernelでは未サポートのため)
|
||||
|
||||
□ 実行手順
|
||||
McKernelのインストール先や、OSTEST, LTPの配置場所は、
|
||||
$HOME/mck_test_config を参照している
|
||||
mck_test_config は、McKernelをビルドした際に生成される
|
||||
mck_test_config.sample ファイルを$HOMEにコピーし、適宜編集する
|
||||
|
||||
$ make test
|
||||
|
||||
実行できない場合は、C1001.shの以下の行を適切に書き換えた後に実行。
|
||||
BIN= mcexec が存在するパス
|
||||
SBIN= mcreboot.sh が存在するパス
|
||||
LTP= LTPが存在するパス
|
||||
|
||||
□ 実行結果
|
||||
result.log 参照。
|
||||
すべての項目をPASSしていることを確認。
|
||||
Reference in New Issue
Block a user