test: Fix tests of "user_space"

user_space/swapout/swapout_copy_to_01.sh:
* Use ~/.mck_test_config
* Fix checking if McKernel version is written in swap-file

user_space/futex/futex_test.sh:
* Use ~/.mck_test_config

user_space/perf_event_open/perf_event_open_test.sh
* Use ~/.mck_test_config

Change-Id: Id93b207ed0e3e9ebf307073db81b40335bc5b140
This commit is contained in:
Masamichi Takagi
2018-09-19 17:08:11 +09:00
parent 159092c58e
commit 3df82d61ce
7 changed files with 22 additions and 27 deletions

View File

@ -4,3 +4,4 @@
: ${OSTEST:=} : ${OSTEST:=}
: ${LTP:=} : ${LTP:=}
: ${BOOTPARAM:=-c 1-7,9-15,17-23,25-31 -m 10G@0,10G@1 -r 1-7:0+9-15:8+17-23:16+25-31:24} : ${BOOTPARAM:=-c 1-7,9-15,17-23,25-31 -m 10G@0,10G@1 -r 1-7:0+9-15:8+17-23:16+25-31:24}
: ${MCKERNEL_VERSION:=@MCKERNEL_VERSION@}

View File

@ -1,6 +1,12 @@
User spaceテストについて User spaceテストについて
1.テストの準備 1.テストの準備
1.1 パッチファイル 1.1 設定ファイル
以下のコマンドでシェルスクリプトの変数設定用includeファイルを準備します。
cp -i <build>/mckernel/mck_test_config.sample ~/.mck_test_config
1.2 パッチファイル
テストは、修正部分にkprintfをパッチで追加し確認を行います。 テストは、修正部分にkprintfをパッチで追加し確認を行います。
パッチファイルは以下のディレクトリに格納しています。 パッチファイルは以下のディレクトリに格納しています。
 mckernel/test/user_space/patch/  mckernel/test/user_space/patch/
@ -18,7 +24,7 @@ User spaceテストについて
なし swapout so_023-so_025 なし swapout so_023-so_025
qlmpilib.patch swapout so_026 qlmpilib.patch swapout so_026
1.2 パッチの適用 1.3 パッチの適用
mckernelディレクトリで以下コマンドを実行してパッチを当ててください。 mckernelディレクトリで以下コマンドを実行してパッチを当ててください。
パッチ実行後ビルドしてください。 パッチ実行後ビルドしてください。
@ -26,7 +32,7 @@ User spaceテストについて
(XXXX.patchはパッチファイル名) (XXXX.patchはパッチファイル名)
1.3 その他プログラムのコンパイル 1.4 その他プログラムのコンパイル
(1)user_space/swapoutディレクトリで、makeし、swaptest実行モジュールを作成してください。 (1)user_space/swapoutディレクトリで、makeし、swaptest実行モジュールを作成してください。
(2)qlmpi/qlmpi_testsuiteディレクトリで、テスト用プログラムのコンパイルを実施してください。 (2)qlmpi/qlmpi_testsuiteディレクトリで、テスト用プログラムのコンパイルを実施してください。
(3)LTPプログラムの実行モジュールを準備する必要があります。 (3)LTPプログラムの実行モジュールを準備する必要があります。

View File

@ -1,2 +0,0 @@
MCPATH=/home/iizuka/mckernel
LTP_EXE_DIR=/home/iizuka/LTP/futex

View File

@ -32,7 +32,7 @@ function ng_out() {
function ltp_test() { function ltp_test() {
TEST_NAME=$1 TEST_NAME=$1
#LTP programを実行 logを保存 #LTP programを実行 logを保存
sudo ${MCPATH}/bin/mcexec ${LTP_EXE_DIR}/${TEST_NAME} >./result/${TEST_NAME}.log sudo ${MCK_DIR}/bin/mcexec ${LTP}/testcases/bin/${TEST_NAME} >./result/${TEST_NAME}.log
#LTP log 確認 #LTP log 確認
NUM=`cat ./test_cases/${TEST_NAME}.txt |wc -l` NUM=`cat ./test_cases/${TEST_NAME}.txt |wc -l`
@ -56,21 +56,16 @@ TEST_CODE=001
TEST_PREFIX=futex_ TEST_PREFIX=futex_
ME=`whoami` ME=`whoami`
if [ $# -ne 2 ]; then source ${HOME}/.mck_test_config
source ./config
else
MCPATH=$1
LTP_EXE_DIR=$2/futex
fi
mkdir -p result mkdir -p result
reboot reboot
#LTP programを実行 logを保存 #LTP programを実行 logを保存
mcexec ${LTP_EXE_DIR}/futex_wait01 >./result/futex_wait01.log ${MCK_DIR}/bin/mcexec ${LTP}/testcases/bin/futex_wait01 >./result/futex_wait01.log
#kmsgを保存 #kmsgを保存
sudo ${MCPATH}/sbin/ihkosctl 0 kmsg >./result/futex_wait01.kmsg sudo ${MCK_DIR}/sbin/ihkosctl 0 kmsg >./result/futex_wait01.kmsg
#kmsgで結果を出力する。 #kmsgで結果を出力する。
#futex-001 アドレスが正しく引き継いでいることを確認 #futex-001 アドレスが正しく引き継いでいることを確認

View File

@ -1,2 +0,0 @@
MCPATH=/home/iizuka/mckernel
LTP_EXE_DIR=/home/iizuka/LTP/perf_event_open

View File

@ -32,7 +32,7 @@ function ng_out() {
function ltp_test() { function ltp_test() {
TEST_NAME=$1 TEST_NAME=$1
#LTP programを実行 logを保存 #LTP programを実行 logを保存
${MCPATH}/bin/mcexec ${LTP_EXE_DIR}/${TEST_NAME} >./result/${TEST_NAME}.log ${MCK_DIR}/bin/mcexec ${LTP}/testcases/bin/${TEST_NAME} >./result/${TEST_NAME}.log
#LTP log 確認 #LTP log 確認
NUM=`cat ./test_cases/${TEST_NAME}.txt |wc -l` NUM=`cat ./test_cases/${TEST_NAME}.txt |wc -l`
@ -55,20 +55,15 @@ TEST_CODE=001
TEST_PREFIX=perf_ TEST_PREFIX=perf_
ME=`whoami` ME=`whoami`
if [ $# -ne 2 ]; then source ${HOME}/.mck_test_config
source ./config
else
MCPATH=$1
LTP_EXE_DIR=$2/perf_event_open
fi
mkdir -p ./result mkdir -p ./result
reboot reboot
#LTP programを実行 logを保存 #LTP programを実行 logを保存
mcexec ${LTP_EXE_DIR}/perf_event_open01 >./result/perf_event_open01.log ${MCK_DIR}/bin/mcexec ${LTP}/testcases/bin/perf_event_open01 >./result/perf_event_open01.log
#kmsgを保存 #kmsgを保存
sudo ${MCPATH}/sbin/ihkosctl 0 kmsg >./result/perf_event_open01.kmsg sudo ${MCK_DIR}/sbin/ihkosctl 0 kmsg >./result/perf_event_open01.kmsg
#kmsgで結果を出力する。 #kmsgで結果を出力する。
NUM=`cat ./test_cases/perd_event_open01.kmsg.txt |wc -l` NUM=`cat ./test_cases/perd_event_open01.kmsg.txt |wc -l`

View File

@ -1,5 +1,7 @@
#!/bin/sh #!/bin/sh
. ${HOME}/.mck_test_config
# Functions # Functions
function reboot() { function reboot() {
count=`pgrep -c -f 'mcexec '` count=`pgrep -c -f 'mcexec '`
@ -99,8 +101,8 @@ fi
#swapout011 do_pageout si->swphdr->version #swapout011 do_pageout si->swphdr->version
version=`grep "do_pageout:.*,si->swphdr->version" ./result/swapout_copy_to_01.kmsg | head -n 1 | sed s/"^.*copy_to_user .*,si->swphdr->version:\(.*\),si->swphdr->count_sarea:.*$"/"\1"/ ` version=`grep "do_pageout:.*,si->swphdr->version" ./result/swapout_copy_to_01.kmsg | head -n 1 | sed s/"^.*copy_to_user .*,si->swphdr->version:\(.*\),si->swphdr->count_sarea:.*$"/"\1"/ `
#echo ${version} #echo ${version}
if [ "${version}" = "0.9.0" ]; then if [ "${version}" = "${MCKERNEL_VERSION}" ]; then
text=`echo "do_pageout:si->swphdr->version is 0.9.0"` text=`echo "do_pageout:si->swphdr->version is ${MCKERNEL_VERSION}"`
ok_out "${text} :(${version})" ok_out "${text} :(${version})"
else else
ng_out "do_pageout: does not match the value of si->swphdr->version." ng_out "do_pageout: does not match the value of si->swphdr->version."