50 lines
2.5 KiB
Plaintext
50 lines
2.5 KiB
Plaintext
【Issue#765 動作確認】
|
|
□ テスト内容
|
|
1. 共有可能なページがラージページに割り当てられないことの確認
|
|
Issue#765の問題は、共有可能なラージページをスモールページに分割したとき、
|
|
共有情報が不正になることであった。
|
|
しかし、McKernel は共有対象の領域をラージページに割り当てないため、共有
|
|
可能なページが分割されることはあり得ず、Issueが顕在化することは無い。
|
|
このことをテストプログラムを用いて確認する。
|
|
|
|
C765T01 スタック領域がラージページに割り当てられ、共有不能なことを確認する。
|
|
C765T02 ヒープ領域がスモールページに割り当てられ、共有不能なことを確認する。
|
|
C765T03 mmapで8kBのMAP_PRIVATE領域がスモールページに割り当てられ、共有不能な
|
|
ことを確認する。
|
|
C765T04 mmapで2MBのMAP_PRIVATE領域がラージページに割り当てられ、共有不能な
|
|
ことを確認する。
|
|
C765T05 mmapで8kBのMAP_SHARED領域がスモールページに割り当てられ、共有可能な
|
|
ことを確認する。
|
|
C765T06 mmapで2MBのMAP_SHARED領域がスモールページに割り当てられ、共有可能な
|
|
ことを確認する。
|
|
C765T07 shmatで8kBの領域がスモールページに割り当てられ、共有可能なことを
|
|
確認する。
|
|
C765T08 shmatで2MBの領域がスモールページに割り当てられ、共有可能なことを
|
|
確認する。
|
|
|
|
2. 指摘プログラムで現象が発生しないことの確認
|
|
ostestのmem_limitsを実行し、現象が発生しないことを確認する。
|
|
|
|
C765T09 struct pageの参照カウンタが負にならないことを確認する。
|
|
|
|
□ パッチ適用
|
|
動作確認のため、McKernelにパッチを適用する。
|
|
$ cd /path/to/mckernel
|
|
$ patch -p0 < test/issue/765/C765.patch
|
|
$ <configure, build, install>
|
|
|
|
C765.patch 指定されたメモリのページサイズと共有状況を調べるシステムコールを
|
|
追加するパッチ。
|
|
|
|
□ 実行手順
|
|
$ make test
|
|
|
|
McKernelのインストール先や、OSTEST, LTPの配置場所は、
|
|
$HOME/.mck_test_config を参照している
|
|
.mck_test_config は、McKernelをビルドした際に生成されるmck_test_config.sample ファイルを
|
|
$HOMEにコピーし、適宜編集する
|
|
|
|
□ 実行結果
|
|
C765.txt 参照。
|
|
全ての項目が OK となっていることを確認。
|