tools/perf/util/bpf_skel/vmlinux/vmlinux.h

Source file repositories/reference/linux-study-clean/tools/perf/util/bpf_skel/vmlinux/vmlinux.h

File Facts

System
Linux kernel
Corpus path
tools/perf/util/bpf_skel/vmlinux/vmlinux.h
Extension
.h
Size
4966 bytes
Lines
216
Domain
Support Tooling And Documentation
Bucket
tools
Inferred role
Support Tooling And Documentation: implementation source
Status
source implementation candidate

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

struct timespec64 {
        time64_t        tv_sec;
        long int        tv_nsec;
};

enum cgroup_subsys_id {
	perf_event_cgrp_id  = 8,
};

enum {
	HI_SOFTIRQ = 0,
	TIMER_SOFTIRQ,
	NET_TX_SOFTIRQ,
	NET_RX_SOFTIRQ,
	BLOCK_SOFTIRQ,
	IRQ_POLL_SOFTIRQ,
	TASKLET_SOFTIRQ,
	SCHED_SOFTIRQ,
	HRTIMER_SOFTIRQ,
	RCU_SOFTIRQ,    /* Preferable RCU should always be the last softirq */

	NR_SOFTIRQS
};

typedef struct {
	s64	counter;
} __attribute__((preserve_access_index)) atomic64_t;

typedef atomic64_t atomic_long_t;

struct raw_spinlock {
	int rawlock;
} __attribute__((preserve_access_index));

typedef struct raw_spinlock raw_spinlock_t;

typedef struct {
	struct raw_spinlock rlock;
} __attribute__((preserve_access_index)) spinlock_t;

struct sighand_struct {
	spinlock_t siglock;
} __attribute__((preserve_access_index));

struct rw_semaphore {
	atomic_long_t owner;
} __attribute__((preserve_access_index));

struct mutex {
	atomic_long_t owner;
} __attribute__((preserve_access_index));

struct kernfs_node {
	u64 id;
} __attribute__((preserve_access_index));

struct cgroup {
	struct kernfs_node *kn;
	int                level;
}  __attribute__((preserve_access_index));

struct cgroup_subsys_state {
	struct cgroup *cgroup;
} __attribute__((preserve_access_index));

struct css_set {
	struct cgroup_subsys_state *subsys[13];
	struct cgroup *dfl_cgrp;
} __attribute__((preserve_access_index));

struct mm_struct {
	struct rw_semaphore mmap_lock;
} __attribute__((preserve_access_index));

struct task_struct {
	unsigned int	      flags;
	struct mm_struct      *mm;
	pid_t		      pid;
	pid_t		      tgid;
	char		      comm[16];
	struct sighand_struct *sighand;
	struct css_set	      *cgroups;
} __attribute__((preserve_access_index));

struct trace_entry {
	short unsigned int type;
	unsigned char	   flags;
	unsigned char	   preempt_count;
	int		   pid;
} __attribute__((preserve_access_index));

Annotation

Implementation Notes