Files
mckernel/test/issues/1458
Yoshihisa Morizumi 47aec70f5f shmobj: support large page
Change-Id: I104c1b8551b87f5cbfedb13262e77c00c38e9643
2021-03-03 05:07:49 +00:00
..
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00
2021-03-03 05:07:49 +00:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

【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していることを確認。