[PATCH 1/5] Kprobes: Temporary disarming of reentrant probe
Ananth N Mavinakayanahalli
amavin@redhat.com
Tue May 24 19:02:00 GMT 2005
Andi Kleen wrote:
Hi Andi,
>>@@ -55,6 +61,9 @@ struct kprobe {
>> /* list of kprobes for multi-handler support */
>> struct list_head list;
>>
>>+ /*count the number of times this probe was temporarily disarmed */
>>+ unsigned long nmissed;
>
>
> You declare a variable.
>
>
>>+
>> /* location of the probe point */
>> kprobe_opcode_t *addr;
>>
>>diff -puN kernel/kprobes.c~kprobes-temporary-disarming-on-reentrancy-generic kernel/kprobes.c
>>--- linux-2.6.12-rc4-mm2/kernel/kprobes.c~kprobes-temporary-disarming-on-reentrancy-generic 2005-05-24 15:28:08.000000000 +0530
>>+++ linux-2.6.12-rc4-mm2-prasanna/kernel/kprobes.c 2005-05-24 15:28:08.000000000 +0530
>>@@ -334,6 +334,7 @@ int register_kprobe(struct kprobe *p)
>> }
>> spin_lock_irqsave(&kprobe_lock, flags);
>> old_p = get_kprobe(p->addr);
>>+ p->nmissed = 0;
>
>
> And then you set it to 0.
>
> And nothing more. Surely this patch does not do anything. Looks like
> some code is missing.
No Andi - nmissed is incremented in the arch/xxx/kernel/kprobes.c
everytime the probe is "reentered". This is part of the subsequent
patches in the series.
Ananth
More information about the Systemtap
mailing list