backtrace issue in MIPS 3.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Ralf,

We observe the following issue in kernel backtrace.

Scenario:1
Correct backtrace - if HAVE_FUNCTION_TRACER is disable.

====[ backtrace testing ]===========
Testing a backtrace from process context.
The following trace is a kernel self test and not a bug!
Testing a backtrace.
The following trace is a kernel self test and not a bug!
Call Trace:
[<80295134>] dump_stack+0x8/0x34
[<c0946060>] backtrace_regression_test+0x60/0x94 [sisc_backtrcae]
[<800004f0>] do_one_initcall+0xf0/0x1d0
[<80060954>] sys_init_module+0x19c8/0x1c60
[<8000a418>] stack_done+0x20/0x40

Scenaro-2:
if HAVE_FUNCTION_TRACER is enabled
       HAVE_FUNCTION_TRACER function enables FRAME_POINTER
     menuconfig->
              kernel hacking->
                                   tracers->
                                                Kernel Function Tracer

====[ backtrace testing ]===========

Testing a backtrace from process context.

The following trace is a kernel self test and not a bug!

Testing a backtrace.

The following trace is a kernel self test and not a bug!

Call Trace:

[<802e5164>] dump_stack+0x1c/0x50

[<802e5164>] dump_stack+0x1c/0x50

====[ end of backtrace testing ]====
 ----------------------------------------------------------------------------------------------------------------------------------------------------

Sample Code:

#include <linux/module.h>
#include <linux/sched.h>
#include <linux/delay.h>
//static struct timer_list backtrace_timer;

static void backtrace_test_timer()
{
       printk("Testing a backtrace.\n");
       printk("The following trace is a kernel self test and not a bug!\n");
       dump_stack();
}
static int backtrace_regression_test(void)
{
       printk("====[ backtrace testing ]===========\n");
       printk("Testing a backtrace from process context.\n");
       printk("The following trace is a kernel self test and not a bug!\n");
       backtrace_test_timer();
       msleep(10);
       printk("====[ end of backtrace testing ]====\n");
       return 0;
}
static void exitf(void)
{
}

module_init(backtrace_regression_test);
module_exit(exitf);
MODULE_LICENSE("GPL");


objdump is also attached.

Thanks

Attachment: scenario-2.dump
Description: Binary data

Attachment: scenario-1.dump
Description: Binary data


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux