【Issue#1458 動作確認】 □ テスト内容 1. C1458T01 以下のケースでMAP_SHARED指定のmmapをした領域についてページインした後、 最後から2番めのラージページの最後の部分をより小さいページサイズ1ページ分でunmapし、 期待通りの動作となることを確認する また、当該領域への読み書き操作が正常に行えることを確認する - MAP_HUGETLB指定 : munmapが成功する - ラージページサイズの倍数のサイズ : munmapが成功する - ラージページサイズの倍数ではないサイズ :munmapが成功する 2. C1458T02 以下のケースでMAP_SHARED指定のmmapをした領域についてページインする前に、 最後から2番めのラージページの最後の部分をより小さいページサイズ1ページ分でunmapし、 期待通りの動作となることを確認する また、当該領域への読み書き操作が正常に行えることを確認する - MAP_HUGETLB指定 : munmapが成功する - ラージページサイズの倍数のサイズ : munmapが成功する - ラージページサイズの倍数ではないサイズ :munmapが成功する 3. C1458T03 以下のケースでshmget()で作成した共有メモリ領域の、 最後から2番めのラージページの最後の部分をより小さいページサイズ1ページ分でunmapし、 期待通りの動作となることを確認する また、当該領域への読み書き操作が正常に行えることを確認する - MAP_HUGETLB指定 : munmapが成功する - ラージページサイズの倍数のサイズ : munmapが成功する - ラージページサイズの倍数ではないサイズ :munmapが成功する 4. 以下のLTPを用いて既存のshm機能に影響が無いことを確認する - shmat01 - shmat02 - shmat03 - shmctl01 - shmctl02 - shmctl03 - shmctl04 - shmdt01 - shmdt02 - shmget01 - shmget02 - shmget03 - shmget04 - shmget05 □ 実行手順 1. McKernelをビルドした際に生成されるmck_test_config.sample ファイルを $HOME/.mck_test_configとしてコピーし、パスを編集する。 2. 以下の手順でビルドと実行を行う $ (build mckernel) $ cd <mckernel>/test/issues/1458 $ mkdir build && cd build $ cmake ../ -DWITH_MCK=<mck_install_dir> -DWITH_MCK_SRC=<mck_src_dir> -DWITH_MCK_BUILD=<mck_build_dir> -DCMAKE_INSTALL_PREFIX=./install -DCMAKE_INSTALL_PREFIX_SCRIPTS=./install/data/scripts $ make install $ ./install/scripts/issue-C1458T01 $ ./install/scripts/issue-C1458T02 $ ./install/scripts/issue-C1458T03 $ cd <mckernel>/test/issues/1458 $ ./regression_test.sh □ 実行結果 x86_64_result.log aarch64_result.log 参照。 すべての項目をPASSしていることを確認。