diff --git a/[refs] b/[refs] index b6ccfd11a23b..b3cdd17b330c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e65cefe87beda627c0bfba39b387ee4bffedc93c +refs/heads/master: 278ff9537030bbb292b33504f5e1f6e0126793eb diff --git a/trunk/kernel/kprobes.c b/trunk/kernel/kprobes.c index 95ad7f8db3d6..fef1af8a73ce 100644 --- a/trunk/kernel/kprobes.c +++ b/trunk/kernel/kprobes.c @@ -631,12 +631,12 @@ void __kprobes unregister_kretprobe(struct kretprobe *rp) unregister_kprobe(&rp->kp); /* No race here */ spin_lock_irqsave(&kretprobe_lock, flags); - free_rp_inst(rp); while ((ri = get_used_rp_inst(rp)) != NULL) { ri->rp = NULL; hlist_del(&ri->uflist); } spin_unlock_irqrestore(&kretprobe_lock, flags); + free_rp_inst(rp); } static int __init init_kprobes(void)