[PATCH 1/2] arm64: Fix static use of function graph

Julien Thierry julien.thierry at arm.com
Fri Nov 3 02:25:07 PDT 2017


Hi,

On 02/11/17 10:18, Russell King - ARM Linux wrote:
> On Thu, Nov 02, 2017 at 01:43:07PM +0900, AKASHI Takahiro wrote:
>> On Wed, Nov 01, 2017 at 02:33:43PM +0000, Julien Thierry wrote:
>>> Function graph does not work currently when CONFIG_DYNAMIC_TRACE is not
>>> set. This is because ftrace_function_trace is not always set to ftrace_stub
>>> when function_graph is in use.
>>>
>>> Do not skip checking of graph tracer functions when ftrace_function_trace
>>> is set.
>>>
>>> Signed-off-by: Julien Thierry <julien.thierry at arm.com>
>>> Cc: Catalin Marinas <catalin.marinas at arm.com>
>>> Cc: Will Deacon <will.deacon at arm.com>
>>> Cc: Mark Rutland <mark.rutland at arm.com>
>>> Cc: AKASHI Takahiro <takahiro.akashi at linaro.org>
>>
>> Reviewed-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
>>
>> I think that arm has the same issue, hoping the following patch
>> will fix it:

Thanks for noticing this and for the patch. I'll re-spin a version for 
this series and include your patch.

>> ===
>> >From e25bcf50d1acde698285a0c64f72d97f8b17e3fb Mon Sep 17 00:00:00 2001
>> From: AKASHI Takahiro <takahiro.akashi at linaro.org>
>> Date: Thu, 2 Nov 2017 11:35:04 +0900
>> Subject: [PATCH] arm: ftrace: function_graph with DYNAMIC_FTRACE
>>
>> ---
>>   arch/arm/kernel/entry-ftrace.S | 12 +++++-------
>>   1 file changed, 5 insertions(+), 7 deletions(-)
>>
>> diff --git a/arch/arm/kernel/entry-ftrace.S b/arch/arm/kernel/entry-ftrace.S
>> index efcd9f25a14b..ef94c73ad996 100644
>> --- a/arch/arm/kernel/entry-ftrace.S
>> +++ b/arch/arm/kernel/entry-ftrace.S
>> @@ -68,8 +68,12 @@
>>   	ldr	r2, [r0]
>>   	adr	r0, .Lftrace_stub
>>   	cmp	r0, r2
>> -	bne	1f
>> +	beq	1f
>>   
>> + 	mcount_get_lr	r1			@ lr of instrumented func
>> +	mcount_adjust_addr	r0, lr		@ instrumented function
>> +	blx	r2
> 
> NAK.  Not all CPUs support "blx".  I don't see why you'd make this
> gratuitous change when just moving code around.  Please separate
> your changes in future.
> 

I'll change the blx back to the badr + mov instructions in the new version.

Thanks,

-- 
Julien Thierry



More information about the linux-arm-kernel mailing list