kernel
This commit is contained in:
parent
b59f84ee36
commit
cfab1d3ce7
83468 changed files with 37938688 additions and 0 deletions
linux-6.8.1/include/linux
50
linux-6.8.1/include/linux/perf_regs.h
Normal file
50
linux-6.8.1/include/linux/perf_regs.h
Normal file
|
@ -0,0 +1,50 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
#ifndef _LINUX_PERF_REGS_H
|
||||
#define _LINUX_PERF_REGS_H
|
||||
|
||||
#include <linux/sched/task_stack.h>
|
||||
|
||||
struct perf_regs {
|
||||
__u64 abi;
|
||||
struct pt_regs *regs;
|
||||
};
|
||||
|
||||
#ifdef CONFIG_HAVE_PERF_REGS
|
||||
#include <asm/perf_regs.h>
|
||||
|
||||
#ifndef PERF_REG_EXTENDED_MASK
|
||||
#define PERF_REG_EXTENDED_MASK 0
|
||||
#endif
|
||||
|
||||
u64 perf_reg_value(struct pt_regs *regs, int idx);
|
||||
int perf_reg_validate(u64 mask);
|
||||
u64 perf_reg_abi(struct task_struct *task);
|
||||
void perf_get_regs_user(struct perf_regs *regs_user,
|
||||
struct pt_regs *regs);
|
||||
#else
|
||||
|
||||
#define PERF_REG_EXTENDED_MASK 0
|
||||
|
||||
static inline u64 perf_reg_value(struct pt_regs *regs, int idx)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int perf_reg_validate(u64 mask)
|
||||
{
|
||||
return mask ? -ENOSYS : 0;
|
||||
}
|
||||
|
||||
static inline u64 perf_reg_abi(struct task_struct *task)
|
||||
{
|
||||
return PERF_SAMPLE_REGS_ABI_NONE;
|
||||
}
|
||||
|
||||
static inline void perf_get_regs_user(struct perf_regs *regs_user,
|
||||
struct pt_regs *regs)
|
||||
{
|
||||
regs_user->regs = task_pt_regs(current);
|
||||
regs_user->abi = perf_reg_abi(current);
|
||||
}
|
||||
#endif /* CONFIG_HAVE_PERF_REGS */
|
||||
#endif /* _LINUX_PERF_REGS_H */
|
Loading…
Add table
Add a link
Reference in a new issue