add test for Issue#873, 1011
This commit is contained in:
13
test/error_handling/Issue1011/1011.patch
Normal file
13
test/error_handling/Issue1011/1011.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/executer/user/mcexec.c b/executer/user/mcexec.c
|
||||
index 2d0d50e..9f109aa 100644
|
||||
--- a/executer/user/mcexec.c
|
||||
+++ b/executer/user/mcexec.c
|
||||
@@ -470,7 +470,7 @@ struct program_load_desc *load_interp(struct program_load_desc *desc0, FILE *fp)
|
||||
j++;
|
||||
}
|
||||
}
|
||||
- desc->num_sections = j;
|
||||
+ desc->num_sections = -1; // Test for num_secionts check Issue#1011
|
||||
|
||||
desc->entry = hdr.e_entry;
|
||||
desc->interp_align = align;
|
||||
17
test/error_handling/Issue1011/README
Normal file
17
test/error_handling/Issue1011/README
Normal file
@ -0,0 +1,17 @@
|
||||
■ Issue#1011 動作確認
|
||||
1. ファイルの説明
|
||||
1011.patch mcexec からmcctrl.ko に渡すprogram_load_des構造体のnum_sections に
|
||||
常に-1 を設定するパッチ
|
||||
|
||||
2. 確認方法
|
||||
1. 上記パッチを適用していない状態でMcKernelを起動する
|
||||
2. mcexec hostname を実行し、ホスト名が表示されることを確認する
|
||||
3. 上記パッチをMcKernelに適用後、ビルドと起動を行う
|
||||
4. mcexec hostname を実行し、ホスト名が表示されず、"prepare: Invalid argument"が
|
||||
コンソールに出力されることを確認する
|
||||
5. /var/log/messages に"kernel: mcexec_prepare_image: ERROR: # of sections: -1"が
|
||||
出力されていることを確認する
|
||||
|
||||
3. 確認結果
|
||||
上記確認方法で期待される動作が確認できたため、問題ない。
|
||||
|
||||
@ -2,18 +2,6 @@ diff --git a/executer/user/mcexec.c b/executer/user/mcexec.c
|
||||
index 2d0d50e..70856e7 100644
|
||||
--- a/executer/user/mcexec.c
|
||||
+++ b/executer/user/mcexec.c
|
||||
@@ -71,9 +71,9 @@
|
||||
#else /* POSTK_DEBUG_ARCH_DEP_35 */
|
||||
#include <sys/user.h>
|
||||
#endif /* POSTK_DEBUG_ARCH_DEP_35 */
|
||||
-#include <sys/prctl.h>
|
||||
+//#include <sys/prctl.h>
|
||||
#ifndef POSTK_DEBUG_ARCH_DEP_77 /* arch depend hide */
|
||||
-#include <asm/prctl.h>
|
||||
+//#include <asm/prctl.h>
|
||||
#endif /* !POSTK_DEBUG_ARCH_DEP_77 */
|
||||
#include "../include/uprotocol.h"
|
||||
#include <getopt.h>
|
||||
@@ -3732,7 +3732,9 @@ return_execve1:
|
||||
|
||||
/* Copy program image phase */
|
||||
|
||||
12
test/error_handling/Issue873/README
Normal file
12
test/error_handling/Issue873/README
Normal file
@ -0,0 +1,12 @@
|
||||
■ Issue#873 動作確認
|
||||
1. ファイルの説明
|
||||
mck_boot_test.sh McKernelの停止→起動 を100回繰り返すスクリプト
|
||||
すべてで成功した場合には[OK]メッセージを、途中で失敗した場合には[NG] メッセージを出力する
|
||||
|
||||
2. 確認方法
|
||||
1. mck_boot_test.sh のMCK_DIR にMcKernelのインストールディレクトリを指定する
|
||||
2. sh ./mck_boot_test.sh を実行する
|
||||
3. [OK]メッセージがコンソールに出力されることを確認する
|
||||
|
||||
3. 確認結果
|
||||
上記の確認方法で期待される動作が確認できたため、問題ない。
|
||||
18
test/error_handling/Issue873/mck_boot_test.sh
Executable file
18
test/error_handling/Issue873/mck_boot_test.sh
Executable file
@ -0,0 +1,18 @@
|
||||
#!/bin/sh
|
||||
|
||||
MCK_DIR=/home/satoken/ppos
|
||||
REP_NUM=100
|
||||
|
||||
for i in `seq 1 ${REP_NUM}`
|
||||
do
|
||||
sudo ${MCK_DIR}/sbin/mcstop+release.sh
|
||||
sleep 1
|
||||
sudo ${MCK_DIR}/sbin/mcreboot.sh
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "[NG] failed to boot Mckernel :${i}"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
echo "[OK] succeed to boot McKernel ${i} times"
|
||||
Reference in New Issue
Block a user