include/trace/events/hugetlbfs.h

Source file repositories/reference/linux-study-clean/include/trace/events/hugetlbfs.h

File Facts

System
Linux kernel
Corpus path
include/trace/events/hugetlbfs.h
Extension
.h
Size
3737 bytes
Lines
157
Domain
Repository Root And Misc
Bucket
include
Inferred role
Repository Root And Misc: implementation source
Status
source implementation candidate

Why This File Exists

Top-level or miscellaneous repository surface. Use this as map coverage unless a later manual pass promotes the file into a deeper subsystem dossier.

Dependency Surface

Detected Declarations

Annotated Snippet

#undef TRACE_SYSTEM
#define TRACE_SYSTEM hugetlbfs

#if !defined(_TRACE_HUGETLBFS_H) || defined(TRACE_HEADER_MULTI_READ)
#define _TRACE_HUGETLBFS_H

#include <linux/tracepoint.h>

TRACE_EVENT(hugetlbfs_alloc_inode,

	TP_PROTO(struct inode *inode, struct inode *dir, int mode),

	TP_ARGS(inode, dir, mode),

	TP_STRUCT__entry(
		__field(u64,		ino)
		__field(u64,		dir)
		__field(dev_t,		dev)
		__field(__u16,		mode)
	),

	TP_fast_assign(
		__entry->dev		= inode->i_sb->s_dev;
		__entry->ino		= inode->i_ino;
		__entry->dir		= dir ? dir->i_ino : 0;
		__entry->mode		= mode;
	),

	TP_printk("dev %d,%d ino %llu dir %llu mode 0%o",
		MAJOR(__entry->dev), MINOR(__entry->dev),
		__entry->ino,
		__entry->dir, __entry->mode)
);

DECLARE_EVENT_CLASS(hugetlbfs__inode,

	TP_PROTO(struct inode *inode),

	TP_ARGS(inode),

	TP_STRUCT__entry(
		__field(u64,		ino)
		__field(loff_t,		size)
		__field(blkcnt_t,	blocks)
		__field(dev_t,		dev)
		__field(unsigned int,	nlink)
		__field(unsigned int,	seals)
		__field(__u16,		mode)
	),

	TP_fast_assign(
		__entry->dev		= inode->i_sb->s_dev;
		__entry->ino		= inode->i_ino;
		__entry->mode		= inode->i_mode;
		__entry->size		= inode->i_size;
		__entry->nlink		= inode->i_nlink;
		__entry->seals		= HUGETLBFS_I(inode)->seals;
		__entry->blocks		= inode->i_blocks;
	),

	TP_printk("dev %d,%d ino %llu mode 0%o size %lld nlink %u seals %u blocks %llu",
		MAJOR(__entry->dev), MINOR(__entry->dev), __entry->ino,
		__entry->mode, __entry->size, __entry->nlink, __entry->seals,
		(unsigned long long)__entry->blocks)
);

DEFINE_EVENT(hugetlbfs__inode, hugetlbfs_evict_inode,

	TP_PROTO(struct inode *inode),

	TP_ARGS(inode)
);

DEFINE_EVENT(hugetlbfs__inode, hugetlbfs_free_inode,

	TP_PROTO(struct inode *inode),

	TP_ARGS(inode)
);

TRACE_EVENT(hugetlbfs_setattr,

	TP_PROTO(struct inode *inode, struct dentry *dentry,
		struct iattr *attr),

	TP_ARGS(inode, dentry, attr),

	TP_STRUCT__entry(
		__field(u64,		ino)
		__field(loff_t,		old_size)

Annotation

Implementation Notes