arm: kprobes: Remove jprobe test case
cover arm: kprobes: Remove jprobe test case
Hi,
This series fixes a typo and remove jprobe test case because jprobe is deprecated feature. The typo is related to jprobe so need to be fixed in this series.
Thank you,
---
Masami Hiramatsu (2):
arm: kprobes: Fix kretprobe test to check correct counter
arm: kprobes: Remove jprobe test case
arch/arm/probes/kprobes/test-core.c | 59 +---------------------------------- 1 file changed, 1 insertion(+), 58 deletions(-)
--
Masami Hiramatsu (Linaro) <[email protected]>
PATCH 1/2 arm: kprobes: Fix kretprobe test to check correct counter
test_kretprobe() uses jprobe_func_called at the last test, but it must check kretprobe_handler_called.
--- arch/arm/probes/kprobes/test-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/probes/kprobes/test-core.c +1 -1
@@ -451,7 +451,7 @@ static int test_kretprobe(long (*func)(long, long)) }if (!call_test_func (func, false))return -EINVAL ; -if (jprobe_func_called == test_func_instance) { +if (kretprobe_handler_called == test_func_instance) {pr_err ("FAIL: kretprobe called after unregistering\n" );return -EINVAL ; }
tip-bot for Masami Hiramatsu
merge bot[tip:perf/kprobes] arm/kprobes: Fix kretprobe test to check correct counter
arm/kprobes: Fix kretprobe test to check correct counter
Commit-ID: 4650209b166789182657c8eb0612cecd5b54d591 Gitweb: https://git.kernel.org/tip/4650209b166789182657c8eb0612cecd5b54d591 Author: Masami Hiramatsu <[email protected]> AuthorDate: Sat, 4 Nov 2017 13:30:52 +0900 Committer: Ingo Molnar <[email protected]> CommitDate: Tue, 7 Nov 2017 11:25:14 +0100
arm/kprobes: Fix kretprobe test to check correct counter
test_kretprobe() uses jprobe_func_called at the last test, but it must check kretprobe_handler_called.
--- arch/arm/probes/kprobes/test-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/probes/kprobes/test-core.c +1 -1
@@ -451,7 +451,7 @@ static int test_kretprobe(long (*func)(long, long)) }if (!call_test_func (func, false))return -EINVAL ; -if (jprobe_func_called == test_func_instance) { +if (kretprobe_handler_called == test_func_instance) {pr_err ("FAIL: kretprobe called after unregistering\n" );return -EINVAL ; }
PATCH 2/2 arm: kprobes: Remove jprobe test case
In reply to Masami HiramatsuRemove jprobe test case because jprobe is deprecated feature. We must not use it.
--- arch/arm/probes/kprobes/test-core.c | 57 ----------------------------------- 1 file changed, 57 deletions(-)
arch/arm/probes/kprobes/test-core.c +0 -57
@@ -227,7 +227,6 @@ static bool test_regs_ok;static int test_func_instance;static int pre_handler_called;static int post_handler_called; -static int jprobe_func_called;static int kretprobe_handler_called;static int tests_failed;
@@ -370,50 +369,6 @@ static int test_kprobe(long (*func)(long, long))return 0 ; } -static void __kprobes jprobe_func (long r0,long r1) -{ - jprobe_func_called = test_func_instance; -if (r0 ==FUNC_ARG1 && r1 ==FUNC_ARG2 ) - test_regs_ok = true; -jprobe_return (); -} - -static struct jprobe the_jprobe = { - .entry = jprobe_func, -}; - -static int test_jprobe (long (*func)(long ,long )) -{ -int ret; - - the_jprobe.kp.addr = (kprobe_opcode_t *)func; - ret =register_jprobe (&the_jprobe); -if (ret <0 ) { -pr_err ("FAIL: register_jprobe failed with %d\n" , ret); -return ret; - } - - ret =call_test_func (func, true); - -unregister_jprobe (&the_jprobe); - the_jprobe.kp.flags =0 ;/* Clear disable flag to allow reuse */ - -if (!ret) -return -EINVAL ; -if (jprobe_func_called != test_func_instance) { -pr_err ("FAIL: jprobe handler function not called\n" ); -return -EINVAL ; - } -if (!call_test_func (func, false)) -return -EINVAL ; -if (jprobe_func_called == test_func_instance) { -pr_err ("FAIL: probe called after unregistering\n" ); -return -EINVAL ; - } - -return 0 ; -} -static int __kprobes kretprobe_handler (struct kretprobe_instance *ri,struct pt_regs *regs) {
@@ -468,18 +423,6 @@ static int run_api_tests(long (*func)(long, long))if (ret <0 )return ret; -pr_info (" jprobe\n" ); - ret =test_jprobe (func); -#if defined(CONFIG_THUMB2_KERNEL ) && !defined(MODULE ) -if (ret == -EINVAL ) { -pr_err ("FAIL: Known longtime bug with jprobe on Thumb kernels\n" ); - tests_failed = ret; - ret =0 ; - } -#endif -if (ret <0 ) -return ret; -pr_info (" kretprobe\n" ); ret =test_kretprobe (func);if (ret <0 )
tip-bot for Masami Hiramatsu
merge bot[tip:perf/kprobes] arm/kprobes: Remove jprobe test case
arm/kprobes: Remove jprobe test case
Commit-ID: a443026a48ad7a8b1b966b00fb5d7111b81a219b Gitweb: https://git.kernel.org/tip/a443026a48ad7a8b1b966b00fb5d7111b81a219b Author: Masami Hiramatsu <[email protected]> AuthorDate: Sat, 4 Nov 2017 13:31:21 +0900 Committer: Ingo Molnar <[email protected]> CommitDate: Tue, 7 Nov 2017 11:25:14 +0100
arm/kprobes: Remove jprobe test case
Remove the jprobes test case because jprobes is a deprecated feature.
--- arch/arm/probes/kprobes/test-core.c | 57 ------------------------------------- 1 file changed, 57 deletions(-)
arch/arm/probes/kprobes/test-core.c +0 -57
@@ -227,7 +227,6 @@ static bool test_regs_ok;static int test_func_instance;static int pre_handler_called;static int post_handler_called; -static int jprobe_func_called;static int kretprobe_handler_called;static int tests_failed;
@@ -370,50 +369,6 @@ static int test_kprobe(long (*func)(long, long))return 0 ; } -static void __kprobes jprobe_func (long r0,long r1) -{ - jprobe_func_called = test_func_instance; -if (r0 ==FUNC_ARG1 && r1 ==FUNC_ARG2 ) - test_regs_ok = true; -jprobe_return (); -} - -static struct jprobe the_jprobe = { - .entry = jprobe_func, -}; - -static int test_jprobe (long (*func)(long ,long )) -{ -int ret; - - the_jprobe.kp.addr = (kprobe_opcode_t *)func; - ret =register_jprobe (&the_jprobe); -if (ret <0 ) { -pr_err ("FAIL: register_jprobe failed with %d\n" , ret); -return ret; - } - - ret =call_test_func (func, true); - -unregister_jprobe (&the_jprobe); - the_jprobe.kp.flags =0 ;/* Clear disable flag to allow reuse */ - -if (!ret) -return -EINVAL ; -if (jprobe_func_called != test_func_instance) { -pr_err ("FAIL: jprobe handler function not called\n" ); -return -EINVAL ; - } -if (!call_test_func (func, false)) -return -EINVAL ; -if (jprobe_func_called == test_func_instance) { -pr_err ("FAIL: probe called after unregistering\n" ); -return -EINVAL ; - } - -return 0 ; -} -static int __kprobes kretprobe_handler (struct kretprobe_instance *ri,struct pt_regs *regs) {
@@ -468,18 +423,6 @@ static int run_api_tests(long (*func)(long, long))if (ret <0 )return ret; -pr_info (" jprobe\n" ); - ret =test_jprobe (func); -#if defined(CONFIG_THUMB2_KERNEL ) && !defined(MODULE ) -if (ret == -EINVAL ) { -pr_err ("FAIL: Known longtime bug with jprobe on Thumb kernels\n" ); - tests_failed = ret; - ret =0 ; - } -#endif -if (ret <0 ) -return ret; -pr_info (" kretprobe\n" ); ret =test_kretprobe (func);if (ret <0 )