kprobe: reverse kp->flags when arm_kprobe failed
[linux-block.git] / kernel / kprobes.c
index 3220b0a2fb4a318d4d10d8dda288a082d0499b2f..cd9f5a66a6909a8ebe8a15b4a2e21e86e5a7fb5f 100644 (file)
@@ -2429,8 +2429,11 @@ int enable_kprobe(struct kprobe *kp)
        if (!kprobes_all_disarmed && kprobe_disabled(p)) {
                p->flags &= ~KPROBE_FLAG_DISABLED;
                ret = arm_kprobe(p);
-               if (ret)
+               if (ret) {
                        p->flags |= KPROBE_FLAG_DISABLED;
+                       if (p != kp)
+                               kp->flags |= KPROBE_FLAG_DISABLED;
+               }
        }
 out:
        mutex_unlock(&kprobe_mutex);