test: Add test programs for #1166

refs: #1166
Change-Id: I9b6dd8628e8a3dcb2281e31f4b8d116e9c7852d8
This commit is contained in:
Tomoki Shirasawa
2019-01-07 16:24:25 +09:00
parent ef9fda23a9
commit 8aaf0f8551
5 changed files with 170 additions and 0 deletions

32
test/issues/1166/README Normal file
View File

@@ -0,0 +1,32 @@
【Issue#1166 動作確認】
□ テスト内容
調査の結果、Issue#1166 の指摘は本来発生しない現象なことが判明したため、
プログラムの変更は行わなかった。
Issue#1166 の指摘の状況を起こすプログラムを実行し、Linux と同様の結果に
なることを確認する。
CT1166T01 /dev/fb0 をオープンできる
CT1166T02 /dev/fb0 を mmap を使って仮想空間にマップできる
CT1166T03 マップした領域に書き込みできる
CT1166T04 マップした領域に書き込んだデータを読み込むことができる
CT1166T05 fork できる (指摘では、fork が失敗しなければならない)
CT1166T06 子プロセス側で親プロセスがマップした領域に書き込みできる
CT1166T07 子プロセス側で親プロセスがマップした領域に書き込んだデータを読める
CT1166T08 CT1166T06 の子プロセスの書き込みが親プロセスのマップ領域に影響
しない (親プロセスでは CT1166T03 のデータが参照されることを確認)
□ 実行手順
$ make test
□ 実行結果
CT1166.txt 参照。
全ての項目が OK となっていることを確認。
□ 注意
1. テストを実行するユーザは /dev/fb0 に書き込み可能であること。
即ち、video グループに属すか、特権ユーザである必要がある。
2. wallabyのビデオデバイス(MATROX G200系)など、幾つかのデバイスは mmap に対応
していないため、CT1166T02 で NG になる。これは Linux も同様である。
このため、Linux で OK となる環境で実行すること。
例えば VMWare 環境では実行可能である。