From b2a58ce3e3e2e7327da73f7d6a238c90fd1c4dc7 Mon Sep 17 00:00:00 2001 From: "Shiratori, Takehiro" Date: Wed, 21 Nov 2018 19:49:41 +0900 Subject: [PATCH] Test "Confirm build ID of mcexec, ihk, mckernel" on arm64 Change-Id: Ia5fa6d6d062e8d845c7fedca1b6cc50fbeab1860 --- test/buildid_check/arm64/README | 41 ++++++++++++ test/buildid_check/arm64/result.log | 2 + test/buildid_check/arm64/run.sh | 96 +++++++++++++++++++++++++++++ 3 files changed, 139 insertions(+) create mode 100644 test/buildid_check/arm64/README create mode 100644 test/buildid_check/arm64/result.log create mode 100755 test/buildid_check/arm64/run.sh diff --git a/test/buildid_check/arm64/README b/test/buildid_check/arm64/README new file mode 100644 index 00000000..ee1fe3f9 --- /dev/null +++ b/test/buildid_check/arm64/README @@ -0,0 +1,41 @@ +/* README COPYRIGHT FUJITSU LIMITED 2018 */ + +mcexec, ihk, mckernelのビルドID一致確認テストセットREADME + +(1) テストの実行方法 + 以下の手順でテストを実行する + 1. テスト向けにビルドIDの一致しないihk.ko/ihk-smp-arm64.koを用意し、McKernelインストール先に配置する + ビルドIDは、ビルドに使用したihkのgitリポジトリcommitハッシュ値の + 上8桁を抽出して作成するため、ソース内に処理に影響しないコメントなどを + 追加してコミットして作成することでビルドIDの異なるihk.ko/ihk-smp-arm64.koを作成可能である。 + + 2. $HOME/.mck_test_configを用意する + 当該ファイルは、McKernelをビルドした際に生成されるmck_test_config.sample ファイルを + $HOMEにコピーし、適宜編集する + + 3. ./run.shを実行する + +(2) テスト項目詳細 + TEST001 ビルドIDの一致しないihk.ko/ihk-smp-arm64.koを含む環境でmcreboot.shがエラーとなることを確認する + TEST002 ビルドIDの一致しないihk.ko/ihk-smp-arm64.koを含む環境でmcexecがエラーとなることを確認する + +(3) 実行結果ログ + result.logファイル内に実行時のログを記載する。 + 実行に利用したIHK/McKernelは、IA版における下記の版数相当の + arm64版移植IHK/McKernelである。 + + IHK + commit d6fcbee8cb91f9ec4b49f97c918e696ac0335aaf + Author: Shiratori, Takehiro + Date: Tue Oct 16 16:25:33 2018 +0900 + + McKernel + commit 6f9fef2b13447c74c36d15cf5ebd186f8395ccca + Author: Ken Sato + Date: Tue Sep 25 10:05:41 2018 +0900 + +(4) 備考 + 特になし。 + + +以上。 diff --git a/test/buildid_check/arm64/result.log b/test/buildid_check/arm64/result.log new file mode 100644 index 00000000..870551e3 --- /dev/null +++ b/test/buildid_check/arm64/result.log @@ -0,0 +1,2 @@ +TEST001: OK +TEST002: OK diff --git a/test/buildid_check/arm64/run.sh b/test/buildid_check/arm64/run.sh new file mode 100755 index 00000000..4b623aea --- /dev/null +++ b/test/buildid_check/arm64/run.sh @@ -0,0 +1,96 @@ +#!/bin/sh +## run.sh COPYRIGHT FUJITSU LIMITED 2018 ## + +USELTP=0 +USEOSTEST=0 +MCSTOP=0 +MCREBOOT=0 + +. ../../common.sh + +result=0 + +REBOOT="$SBIN/mcreboot.sh" +STOP="$SBIN/mcstop+release.sh" + +######################################## +## ihk, mckernel, mcexec buildid test ## +######################################## + +output=`${REBOOT} ${BOOTPARAM} 2>&1` +if [ `echo $?` != 0 ]; then + echo "${output}" | grep -q "didn't match McKernel build-id" + + if [ `echo $?` == 0 ]; then + echo "TEST001: OK" + else + echo "TEST001: NG, Buildid mismatch mcreboot.sh (other error)." + echo "${output}" + result=-1 + fi +else + echo "TEST001: NG, Buildid mismatch mcreboot.sh (succeeded)." + result=-1 +fi + +${STOP} + +MCKIMG="${BIN}/../smp-arm64/kernel/mckernel.img" +IHKMOD="${BIN}/../kmod/ihk.ko" +SMPMOD="${BIN}/../kmod/ihk-smp-arm64.ko" +SMPMOD_PARAM="ihk_start_irq=60 ihk_nr_irq=4" +MCCTRLMOD="${BIN}/../kmod/mcctrl.ko" + +PARAM_ARRAY=(${BOOTPARAM}) + +CORE="4-7" +MEMORY="512M@0" + +loop=0 +for OPT in "${PARAM_ARRAY[@]}" +do + loop=`expr ${loop} + 1` + case "${OPT}" in + '-c') + CORE="${PARAM_ARRAY[${loop}]}" + ;; + '-m') + MEMORY="${PARAM_ARRAY[${loop}]}" + ;; + *) + ;; + esac +done + +insmod ${IHKMOD} +insmod ${SMPMOD} ${SMPMOD_PARAM} +insmod ${MCCTRLMOD} +${IHKCONFIG} 0 reserve cpu ${CORE} +${IHKCONFIG} 0 reserve mem ${MEMORY} +${IHKCONFIG} 0 create +${IHKOSCTL} 0 assign cpu ${CORE} +${IHKOSCTL} 0 assign mem ${MEMORY} +${IHKOSCTL} 0 kargs hidos +${IHKOSCTL} 0 load ${MCKIMG} +${IHKOSCTL} 0 boot + +sleep 1 + +output=`${MCEXEC} ls 2>&1` +if [ `echo $?` != 0 ]; then + echo "${output}" | grep -q "didn't match that of IHK" + + if [ `echo $?` == 0 ]; then + echo "TEST002: OK" + else + echo "TEST002: NG, Buildid mismatch mcexec (other error)." + echo "${output}" + result=-1 + fi + +else + echo "TEST002: NG, Buildid mismatch mcexec (succeeded)." + result=-1 +fi + +exit ${result}