File Index
Files and directories
Sign in
FILE

unwind_user_types.h

File preview with syntax highlighting.

linux-6.19.14/include/linux/unwind_user_types.h C
 1/* SPDX-License-Identifier: GPL-2.0 */
 2#ifndef _LINUX_UNWIND_USER_TYPES_H
 3#define _LINUX_UNWIND_USER_TYPES_H
 4
 5#include <linux/types.h>
 6
 7/*
 8 * Unwind types, listed in priority order: lower numbers are attempted first if
 9 * available.
10 */
11enum unwind_user_type_bits {
12	UNWIND_USER_TYPE_FP_BIT =		0,
13
14	NR_UNWIND_USER_TYPE_BITS,
15};
16
17enum unwind_user_type {
18	/* Type "none" for the start of stack walk iteration. */
19	UNWIND_USER_TYPE_NONE =			0,
20	UNWIND_USER_TYPE_FP =			BIT(UNWIND_USER_TYPE_FP_BIT),
21};
22
23struct unwind_stacktrace {
24	unsigned int	nr;
25	unsigned long	*entries;
26};
27
28struct unwind_user_frame {
29	s32 cfa_off;
30	s32 ra_off;
31	s32 fp_off;
32	bool use_fp;
33};
34
35struct unwind_user_state {
36	unsigned long				ip;
37	unsigned long				sp;
38	unsigned long				fp;
39	unsigned int				ws;
40	enum unwind_user_type			current_type;
41	unsigned int				available_types;
42	bool					topmost;
43	bool					done;
44};
45
46#endif /* _LINUX_UNWIND_USER_TYPES_H */
~/ Read-only file preview.