37 lines · 1.3 KB · C
RawDownload
/* * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) * Copyright (C) 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __ASM_STACKTRACE_H#define __ASM_STACKTRACE_H #include <linux/sched.h> /** * arc_unwind_core - Unwind the kernel mode stack for an execution context * @tsk:		NULL for current task, specific task otherwise * @regs:		pt_regs used to seed the unwinder {SP, FP, BLINK, PC} * 			If NULL, use pt_regs of @tsk (if !NULL) otherwise * 			use the current values of {SP, FP, BLINK, PC} * @consumer_fn:	Callback invoked for each frame unwound * 			Returns 0 to continue unwinding, -1 to stop * @arg:		Arg to callback * * Returns the address of first function in stack * * Semantics: *  - synchronous unwinding (e.g. dump_stack): @tsk  NULL, @regs  NULL *  - Asynchronous unwinding of sleeping task: @tsk !NULL, @regs  NULL *  - Asynchronous unwinding of intr/excp etc: @tsk !NULL, @regs !NULL */notrace noinline unsigned int arc_unwind_core(	struct task_struct *tsk, struct pt_regs *regs,	int (*consumer_fn) (unsigned int, void *),	void *arg); #endif /* __ASM_STACKTRACE_H */