[PATCH 7/7] arm64: uprobes - ARM32 instruction probing
Maciej Slodczyk
m.slodczyk2 at partner.samsung.com
Thu Jan 25 02:42:23 PST 2018
On 01/24/2018 05:13 PM, Oleg Nesterov wrote:
> On 01/24, Maciej Slodczyk wrote:
>>
>> Detect what kind of instruction is being probed and depending on the result:
>> - if an A64 instruction handle it the old way, using existing A64 instructions
>> probing code,
>> - if an A32 instruction decode it and handle using the new code, moved from
>> 32 bit arm kernel tree.
>
> how this connects to the change in prepare_uretprobe(),
>
>> --- a/kernel/events/uprobes.c
>> +++ b/kernel/events/uprobes.c
>> @@ -1566,6 +1566,9 @@ static void prepare_uretprobe(struct uprobe *uprobe, struct pt_regs *regs)
>> unsigned long orig_ret_vaddr, trampoline_vaddr;
>> bool chained;
>>
>> + if (!current->mm)
>> + return;
>> +
>
> ?
>
> and how it is possible to hit ->mm == NULL here?
>
That's obviously something that shouldn't have been left here. NULL was
there because of other bug that's been fixed. I put it for testing only
and for some reason forgot to remove. Thanks for pointing that out!
Regards,
Maciej
More information about the linux-arm-kernel
mailing list