* GPL HEADER END
*/
/*
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved
+ * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
* Use is subject to license terms.
*/
/*
#include "tracefile.h"
-#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,5,0))
#include <linux/kallsyms.h>
-#endif
char lnet_upcall[1024] = "/usr/lib/lustre/lnet_upcall";
char lnet_debug_log_upcall[1024] = "/usr/lib/lustre/lnet_debug_log_upcall";
{
libcfs_catastrophe = 1;
libcfs_debug_msg(NULL, 0, D_EMERG, file, func, line,
- "LBUG - trying to dump log to %s\n", debug_file_path);
+ "LBUG - trying to dump log to %s\n",
+ libcfs_debug_file_path);
libcfs_debug_dumplog();
libcfs_run_lbug_upcall(file, func, line);
asm("int $3");
static void
print_trace_warning_symbol(void *data, char *msg, unsigned long symbol)
{
- printk(data);
+ printk("%s", (char *)data);
print_symbol(msg, symbol);
printk("\n");
}
.warning_symbol = print_trace_warning_symbol,
.stack = print_trace_stack,
.address = print_trace_address,
+#ifdef STACKTRACE_OPS_HAVE_WALK_STACK
+ .walk_stack = print_context_stack,
+#endif
};
#endif
#elif defined(HAVE_DUMP_TRACE)
/* dump_stack() */
/* show_trace() */
+ if (tsk == NULL)
+ tsk = current;
printk("Pid: %d, comm: %.20s\n", tsk->pid, tsk->comm);
/* show_trace_log_lvl() */
printk("\nCall Trace:\n");
* console on the rare cases it is ever triggered. */
if (in_interrupt()) {
- trace_debug_print();
+ cfs_trace_debug_print();
} else {
while (current->lock_depth >= 0)
unlock_kernel();