On 2014/8/28 17:39, Masami Hiramatsu wrote:
> (2014/08/27 22:02), Wang Nan wrote:
>> Copy old kprobe to newly alloced optimized_kprobe before
>> arch_prepare_optimized_kprobe(). Original kprove can brings more
>> information to optimizer.
>>
>> Signed-off-by: Wang Nan <wangn...@huawei.com>
>> Cc: Russell King <li...@arm.linux.org.uk>
>> Cc: "David A. Long" <dave.l...@linaro.org> 
>> Cc: Jon Medhurst <t...@linaro.org>
>> Cc: Taras Kondratiuk <taras.kondrat...@linaro.org>
>> Cc: Ben Dooks <ben.do...@codethink.co.uk>
>> Cc: Ananth N Mavinakayanahalli <ana...@in.ibm.com>
>> Cc: Anil S Keshavamurthy <anil.s.keshavamur...@intel.com>
>> Cc: "David S. Miller" <da...@davemloft.net>
>> Cc: Masami Hiramatsu <masami.hiramatsu...@hitachi.com>
>> Cc: Will Deacon <will.dea...@arm.com>
>> ---
>>  kernel/kprobes.c | 7 ++++++-
>>  1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/kernel/kprobes.c b/kernel/kprobes.c
>> index 3995f54..33cf568 100644
>> --- a/kernel/kprobes.c
>> +++ b/kernel/kprobes.c
>> @@ -730,7 +730,12 @@ static struct kprobe *alloc_aggr_kprobe(struct kprobe 
>> *p)
>>              return NULL;
>>  
>>      INIT_LIST_HEAD(&op->list);
>> -    op->kp.addr = p->addr;
> 
> Do not remove this, since copy_kprobe() doesn't copy kp.addr.
> 
> static inline void copy_kprobe(struct kprobe *ap, struct kprobe *p)
> {
>         memcpy(&p->opcode, &ap->opcode, sizeof(kprobe_opcode_t));
>         memcpy(&p->ainsn, &ap->ainsn, sizeof(struct arch_specific_insn));
> }
> 
> Thank you,
> 

It is my fault. I'll fix it in next version.

Thank you for your comment!

>> +
>> +    /*
>> +     * copy gives arch_prepare_optimized_kprobe
>> +     * more information
>> +     */
>> +    copy_kprobe(p, &op->kp);
>>      arch_prepare_optimized_kprobe(op);
>>  
>>      return &op->kp;
>>
> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to