diff mbox

arm64: Change 'Call trace' to 'Call Trace' for tool scanners

Message ID 1423157427-41997-1-git-send-email-ddutile@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Donald Dutile Feb. 5, 2015, 5:30 p.m. UTC
Receiving reports from service folks that arm64 uses
'Call trace' when dumping stack, instead of the more familiar
'Call Trace'; the former is not being seen by tools that
scan for the latter text.  Checking various arches,
it appears the mainstream server arches (ia64, mips, ppc,
s390, sparc, x86) use 'Call Trace'.
This kernel tools script scans for the latter text string as well
  tools/testing/selftests/rcutorture/bin/parse-console.sh
so it doesn't appear to be arch or vendor specific.

Expecting there aren't a significant number of arm64 dump
scanners matching on 'Call trace' so recommend making this change
now to minimize changes to dump scanning tools for arm64 servers.

Signed-off-by: Donald Dutile <ddutile@redhat.com>
---
 arch/arm64/kernel/traps.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Russell King - ARM Linux Feb. 5, 2015, 5:37 p.m. UTC | #1
On Thu, Feb 05, 2015 at 12:30:27PM -0500, Donald Dutile wrote:
> Receiving reports from service folks that arm64 uses
> 'Call trace' when dumping stack, instead of the more familiar
> 'Call Trace'; the former is not being seen by tools that
> scan for the latter text.  Checking various arches,
> it appears the mainstream server arches (ia64, mips, ppc,
> s390, sparc, x86) use 'Call Trace'.
> This kernel tools script scans for the latter text string as well
>   tools/testing/selftests/rcutorture/bin/parse-console.sh
> so it doesn't appear to be arch or vendor specific.

That script should also be changed to accept "Backtrace" which we've had
for eons on ARM.  I would not be happy to change that given that ARM has
used "Backtrace" there for a very long time now (not far off 20 years.)
Donald Dutile Feb. 5, 2015, 6:18 p.m. UTC | #2
On 02/05/2015 12:37 PM, Russell King - ARM Linux wrote:
> On Thu, Feb 05, 2015 at 12:30:27PM -0500, Donald Dutile wrote:
>> Receiving reports from service folks that arm64 uses
>> 'Call trace' when dumping stack, instead of the more familiar
>> 'Call Trace'; the former is not being seen by tools that
>> scan for the latter text.  Checking various arches,
>> it appears the mainstream server arches (ia64, mips, ppc,
>> s390, sparc, x86) use 'Call Trace'.
>> This kernel tools script scans for the latter text string as well
>>    tools/testing/selftests/rcutorture/bin/parse-console.sh
>> so it doesn't appear to be arch or vendor specific.
>
> That script should also be changed to accept "Backtrace" which we've had
> for eons on ARM.  I would not be happy to change that given that ARM has
> used "Backtrace" there for a very long time now (not far off 20 years.)
>
So you're saying:
(a) you want 'Backtrace' added to parse-console.sh
(b) 'not happy to change that' .. where 'that' == ?
-dd
Russell King - ARM Linux Feb. 5, 2015, 6:30 p.m. UTC | #3
On Thu, Feb 05, 2015 at 01:18:13PM -0500, Don Dutile wrote:
> On 02/05/2015 12:37 PM, Russell King - ARM Linux wrote:
> >On Thu, Feb 05, 2015 at 12:30:27PM -0500, Donald Dutile wrote:
> >>Receiving reports from service folks that arm64 uses
> >>'Call trace' when dumping stack, instead of the more familiar
> >>'Call Trace'; the former is not being seen by tools that
> >>scan for the latter text.  Checking various arches,
> >>it appears the mainstream server arches (ia64, mips, ppc,
> >>s390, sparc, x86) use 'Call Trace'.
> >>This kernel tools script scans for the latter text string as well
> >>   tools/testing/selftests/rcutorture/bin/parse-console.sh
> >>so it doesn't appear to be arch or vendor specific.
> >
> >That script should also be changed to accept "Backtrace" which we've had
> >for eons on ARM.  I would not be happy to change that given that ARM has
> >used "Backtrace" there for a very long time now (not far off 20 years.)
> >
> So you're saying:
> (a) you want 'Backtrace' added to parse-console.sh

Correct

> (b) 'not happy to change that' .. where 'that' == ?

that = "Backtrace" in the ARM code.
Donald Dutile Feb. 5, 2015, 6:46 p.m. UTC | #4
On 02/05/2015 01:30 PM, Russell King - ARM Linux wrote:
> On Thu, Feb 05, 2015 at 01:18:13PM -0500, Don Dutile wrote:
>> On 02/05/2015 12:37 PM, Russell King - ARM Linux wrote:
>>> On Thu, Feb 05, 2015 at 12:30:27PM -0500, Donald Dutile wrote:
>>>> Receiving reports from service folks that arm64 uses
>>>> 'Call trace' when dumping stack, instead of the more familiar
>>>> 'Call Trace'; the former is not being seen by tools that
>>>> scan for the latter text.  Checking various arches,
>>>> it appears the mainstream server arches (ia64, mips, ppc,
>>>> s390, sparc, x86) use 'Call Trace'.
>>>> This kernel tools script scans for the latter text string as well
>>>>    tools/testing/selftests/rcutorture/bin/parse-console.sh
>>>> so it doesn't appear to be arch or vendor specific.
>>>
>>> That script should also be changed to accept "Backtrace" which we've had
>>> for eons on ARM.  I would not be happy to change that given that ARM has
>>> used "Backtrace" there for a very long time now (not far off 20 years.)
>>>
>> So you're saying:
>> (a) you want 'Backtrace' added to parse-console.sh
>
> Correct
>
>> (b) 'not happy to change that' .. where 'that' == ?
>
> that = "Backtrace" in the ARM code.
>

Thanks for clarification.
I found the use of 'Backtrace' in parisc, unicore32, tile & arm.

This patch isn't trying to resolve it for arm (or other) arch(es),
just arm64.

As I stated, I was trying to get the change done before
arm64 systems are (much more) common, and dump tools used for
other arches that scan for 'Call Trace' start to be exercised commonly on arm64.

So, if arm(32) has a similar need, it can be done via another
patch (set).

- dd
Catalin Marinas Feb. 6, 2015, 3:34 p.m. UTC | #5
On Thu, Feb 05, 2015 at 05:30:27PM +0000, Donald Dutile wrote:
> Receiving reports from service folks that arm64 uses
> 'Call trace' when dumping stack, instead of the more familiar
> 'Call Trace'; the former is not being seen by tools that
> scan for the latter text.  Checking various arches,
> it appears the mainstream server arches (ia64, mips, ppc,
> s390, sparc, x86) use 'Call Trace'.
> This kernel tools script scans for the latter text string as well
>   tools/testing/selftests/rcutorture/bin/parse-console.sh
> so it doesn't appear to be arch or vendor specific.
> 
> Expecting there aren't a significant number of arm64 dump
> scanners matching on 'Call trace' so recommend making this change
> now to minimize changes to dump scanning tools for arm64 servers.

Can you not fix the scripts to check for "Call trace" as well? There are
4 more architectures in the kernel using this string (avr32, c6x, metag,
sh). I also wouldn't count kernel logs as user ABI.
Donald Dutile Feb. 6, 2015, 6:43 p.m. UTC | #6
On 02/06/2015 10:34 AM, Catalin Marinas wrote:
> On Thu, Feb 05, 2015 at 05:30:27PM +0000, Donald Dutile wrote:
>> Receiving reports from service folks that arm64 uses
>> 'Call trace' when dumping stack, instead of the more familiar
>> 'Call Trace'; the former is not being seen by tools that
>> scan for the latter text.  Checking various arches,
>> it appears the mainstream server arches (ia64, mips, ppc,
>> s390, sparc, x86) use 'Call Trace'.
>> This kernel tools script scans for the latter text string as well
>>    tools/testing/selftests/rcutorture/bin/parse-console.sh
>> so it doesn't appear to be arch or vendor specific.
>>
>> Expecting there aren't a significant number of arm64 dump
>> scanners matching on 'Call trace' so recommend making this change
>> now to minimize changes to dump scanning tools for arm64 servers.
>
> Can you not fix the scripts to check for "Call trace" as well? There are
> 4 more architectures in the kernel using this string (avr32, c6x, metag,
> sh). I also wouldn't count kernel logs as user ABI.
>
I could, but I first received this report from other tools used within RH
that scan for 'Call Trace'.   I pointed to parse-console.sh to show
that RH tools weren't the only ones that were wired with that expectation.

So, adding 'Call trace' to parse-console.sh won't resolve all the other
(primarily server crash) tools that currently match on 'Call Trace'.

I agree with you that I don't consider kernel logs as user ABI, but
as I said, the majority of the heavy, server arches have it that way,
and the tools used on those servers have leaned on this expectation to date.

I didn't modify the other arch's b/c they aren't heavy server arches.

We could carry a patch in our downstream, but then the tools don't resolve
the same way when we do upstream<->downstream comparisons which typically
occur with knarly crash scenarios, which this string would likely show up in.

Cheers, Don
diff mbox

Patch

diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
index 0a801e3..832e721 100644
--- a/arch/arm64/kernel/traps.c
+++ b/arch/arm64/kernel/traps.c
@@ -155,7 +155,7 @@  static void dump_backtrace(struct pt_regs *regs, struct task_struct *tsk)
 		frame.pc = thread_saved_pc(tsk);
 	}
 
-	pr_emerg("Call trace:\n");
+	pr_emerg("Call Trace:\n");
 	while (1) {
 		unsigned long where = frame.pc;
 		int ret;