18637c099SIngo Molnar /* 28637c099SIngo Molnar * kernel/stacktrace.c 38637c099SIngo Molnar * 48637c099SIngo Molnar * Stack trace management functions 58637c099SIngo Molnar * 68637c099SIngo Molnar * Copyright (C) 2006 Red Hat, Inc., Ingo Molnar <[email protected]> 78637c099SIngo Molnar */ 88637c099SIngo Molnar #include <linux/sched.h> 9*8594698eSIngo Molnar #include <linux/module.h> 108637c099SIngo Molnar #include <linux/kallsyms.h> 118637c099SIngo Molnar #include <linux/stacktrace.h> 128637c099SIngo Molnar 138637c099SIngo Molnar void print_stack_trace(struct stack_trace *trace, int spaces) 148637c099SIngo Molnar { 15a5a242dcSVegard Nossum int i; 168637c099SIngo Molnar 17bfeeeeb9SJohannes Berg if (WARN_ON(!trace->entries)) 18bfeeeeb9SJohannes Berg return; 19bfeeeeb9SJohannes Berg 208637c099SIngo Molnar for (i = 0; i < trace->nr_entries; i++) { 21a5a242dcSVegard Nossum printk("%*c", 1 + spaces, ' '); 22a5a242dcSVegard Nossum print_ip_sym(trace->entries[i]); 238637c099SIngo Molnar } 248637c099SIngo Molnar } 25*8594698eSIngo Molnar EXPORT_SYMBOL_GPL(print_stack_trace); 268637c099SIngo Molnar 27