#include <linux/kallsyms.h>
#endif
+/* We need to pass a pointer here, but elsewhere this must be a const */
+static char *debug_file_path = &libcfs_debug_file_path_arr[0];
+CFS_MODULE_PARM(debug_file_path, "s", charp, 0644,
+ "Path for dumping debug logs (deprecated)");
+
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");
}
#elif defined(HAVE_DUMP_TRACE)
/* dump_stack() */
/* show_trace() */
- printk("Pid: %d, comm: %.20s\n", current->pid, current->comm);
+ if (tsk == NULL)
+ tsk = current;
+ printk("Pid: %d, comm: %.20s\n", tsk->pid, tsk->comm);
/* show_trace_log_lvl() */
printk("\nCall Trace:\n");
dump_trace(tsk, NULL, NULL,
* 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();