【Issue#452 動作確認】 □ テスト内容 1. Issue 指摘事項の再現確認 以下のパッチ (C452.patch) を McKernel に適用し、意図的に memory_range_lock の 競合を起こすことでテストを容易にする。 - mmap処理のmemory_range_lock取得中にsleep可能とする - mmap処理のmemory_range_lock取得中にsleepするかどうかを制御する システムコールを追加する このパッチ適用カーネルを使ってテストする。 C452T01 memory_range_lock 取得中に /proc/*/maps を参照し、PASS すること 2. LTP を用いて既存処理に影響しないことを確認 メモリ関連処理を変更したため、関連するシステムコールのテストを選定した。 C452T02 mmap01: mmap の基本機能の確認 C452T03 mmap02: mmap の基本機能の確認 C452T04 mmap03: mmap の基本機能の確認 C452T05 mmap04: mmap の基本機能の確認 C452T06 mmap12: mmap の基本機能の確認 C452T07 brk01: brk の基本機能の確認 C452T08 fork01: fork の基本機能の確認 (fork時メモリがコピーされる) C452T09 fork02: fork の基本機能の確認 C452T10 fork03: fork の基本機能の確認 □ 実行手順 $ make test McKernelのインストール先や LTP の配置場所は、$HOME/.mck_test_config を 参照する。.mck_test_config は、McKernel をビルドした際に生成される mck_test_config.sample ファイルを $HOME にコピーし、適宜編集すること。 尚、テスト実行には C452.patch を適用した McKernel を使用すること。 □ 実行結果 C452.txt 参照。 全ての項目が PASS していることを確認。