kprobes: Fix selftest to clear flags field for reusing probes
Fix selftest to clear flags field for reusing probes because the flags field can be modified by Kprobes. This also set NULL to kprobe.addr instead of 0. Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com> Cc: 2nddept-manager@sdl.hitachi.co.jp LKML-Reference: <20101014031024.4100.50107.stgit@ltc236.sdl.hitachi.co.jp> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
0f55a2f3d4
commit
fd02e6f7ae
1 changed files with 9 additions and 3 deletions
|
@ -115,7 +115,9 @@ static int test_kprobes(void)
|
||||||
int ret;
|
int ret;
|
||||||
struct kprobe *kps[2] = {&kp, &kp2};
|
struct kprobe *kps[2] = {&kp, &kp2};
|
||||||
|
|
||||||
kp.addr = 0; /* addr should be cleard for reusing kprobe. */
|
/* addr and flags should be cleard for reusing kprobe. */
|
||||||
|
kp.addr = NULL;
|
||||||
|
kp.flags = 0;
|
||||||
ret = register_kprobes(kps, 2);
|
ret = register_kprobes(kps, 2);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
printk(KERN_ERR "Kprobe smoke test failed: "
|
printk(KERN_ERR "Kprobe smoke test failed: "
|
||||||
|
@ -210,7 +212,9 @@ static int test_jprobes(void)
|
||||||
int ret;
|
int ret;
|
||||||
struct jprobe *jps[2] = {&jp, &jp2};
|
struct jprobe *jps[2] = {&jp, &jp2};
|
||||||
|
|
||||||
jp.kp.addr = 0; /* addr should be cleard for reusing kprobe. */
|
/* addr and flags should be cleard for reusing kprobe. */
|
||||||
|
jp.kp.addr = NULL;
|
||||||
|
jp.kp.flags = 0;
|
||||||
ret = register_jprobes(jps, 2);
|
ret = register_jprobes(jps, 2);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
printk(KERN_ERR "Kprobe smoke test failed: "
|
printk(KERN_ERR "Kprobe smoke test failed: "
|
||||||
|
@ -323,7 +327,9 @@ static int test_kretprobes(void)
|
||||||
int ret;
|
int ret;
|
||||||
struct kretprobe *rps[2] = {&rp, &rp2};
|
struct kretprobe *rps[2] = {&rp, &rp2};
|
||||||
|
|
||||||
rp.kp.addr = 0; /* addr should be cleard for reusing kprobe. */
|
/* addr and flags should be cleard for reusing kprobe. */
|
||||||
|
rp.kp.addr = NULL;
|
||||||
|
rp.kp.flags = 0;
|
||||||
ret = register_kretprobes(rps, 2);
|
ret = register_kretprobes(rps, 2);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
printk(KERN_ERR "Kprobe smoke test failed: "
|
printk(KERN_ERR "Kprobe smoke test failed: "
|
||||||
|
|
Loading…
Reference in a new issue