p!ranha?
Server IP : 103.169.32.36  /  Your IP : 216.73.217.13
Web Server : Apache
System : Linux web.dpmptsp 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : apache ( 48)
PHP Version : 5.6.40
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/modules/3.10.0-1160.105.1.el7.x86_64/source/include/trace/events/

Upload File :
Curr3nt_D!r [ Writeable ] D0cum3nt_r0Ot [ Writeable ]

 
Command :
Current File : /usr/lib/modules/3.10.0-1160.105.1.el7.x86_64/source/include/trace/events/timer.h
#undef TRACE_SYSTEM
#define TRACE_SYSTEM timer

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

#include <linux/tracepoint.h>
#include <linux/hrtimer.h>
#include <linux/timer.h>

DECLARE_EVENT_CLASS(timer_class,

	TP_PROTO(struct timer_list *timer),

	TP_ARGS(timer),

	TP_STRUCT__entry(
		__field( void *,	timer	)
	),

	TP_fast_assign(
		__entry->timer	= timer;
	),

	TP_printk("timer=%p", __entry->timer)
);

/**
 * timer_init - called when the timer is initialized
 * @timer:	pointer to struct timer_list
 */
DEFINE_EVENT(timer_class, timer_init,

	TP_PROTO(struct timer_list *timer),

	TP_ARGS(timer)
);

/**
 * timer_start - called when the timer is started
 * @timer:	pointer to struct timer_list
 * @expires:	the timers expiry time
 */
TRACE_EVENT(timer_start,

	TP_PROTO(struct timer_list *timer,
		unsigned long expires,
		unsigned int deferrable),

	TP_ARGS(timer, expires, deferrable),

	TP_STRUCT__entry(
		__field( void *,	timer		)
		__field( void *,	function	)
		__field( unsigned long,	expires		)
		__field( unsigned long,	now		)
		__field( unsigned int,	deferrable	)
	),

	TP_fast_assign(
		__entry->timer		= timer;
		__entry->function	= timer->function;
		__entry->expires	= expires;
		__entry->now		= jiffies;
		__entry->deferrable     = deferrable;
	),

	TP_printk("timer=%p function=%pf expires=%lu [timeout=%ld] defer=%c",
		  __entry->timer, __entry->function, __entry->expires,
		  (long)__entry->expires - __entry->now,
		  __entry->deferrable > 0 ? 'y':'n')
);

/**
 * timer_expire_entry - called immediately before the timer callback
 * @timer:	pointer to struct timer_list
 *
 * Allows to determine the timer latency.
 */
TRACE_EVENT(timer_expire_entry,

	TP_PROTO(struct timer_list *timer),

	TP_ARGS(timer),

	TP_STRUCT__entry(
		__field( void *,	timer	)
		__field( unsigned long,	now	)
		__field( void *,	function)
	),

	TP_fast_assign(
		__entry->timer		= timer;
		__entry->now		= jiffies;
		__entry->function	= timer->function;
	),

	TP_printk("timer=%p function=%pf now=%lu", __entry->timer, __entry->function,__entry->now)
);

/**
 * timer_expire_exit - called immediately after the timer callback returns
 * @timer:	pointer to struct timer_list
 *
 * When used in combination with the timer_expire_entry tracepoint we can
 * determine the runtime of the timer callback function.
 *
 * NOTE: Do NOT derefernce timer in TP_fast_assign. The pointer might
 * be invalid. We solely track the pointer.
 */
DEFINE_EVENT(timer_class, timer_expire_exit,

	TP_PROTO(struct timer_list *timer),

	TP_ARGS(timer)
);

/**
 * timer_cancel - called when the timer is canceled
 * @timer:	pointer to struct timer_list
 */
DEFINE_EVENT(timer_class, timer_cancel,

	TP_PROTO(struct timer_list *timer),

	TP_ARGS(timer)
);

/**
 * hrtimer_init - called when the hrtimer is initialized
 * @hrtimer:	pointer to struct hrtimer
 * @clockid:	the hrtimers clock
 * @mode:	the hrtimers mode
 */
TRACE_EVENT(hrtimer_init,

	TP_PROTO(struct hrtimer *hrtimer, clockid_t clockid,
		 enum hrtimer_mode mode),

	TP_ARGS(hrtimer, clockid, mode),

	TP_STRUCT__entry(
		__field( void *,		hrtimer		)
		__field( clockid_t,		clockid		)
		__field( enum hrtimer_mode,	mode		)
	),

	TP_fast_assign(
		__entry->hrtimer	= hrtimer;
		__entry->clockid	= clockid;
		__entry->mode		= mode;
	),

	TP_printk("hrtimer=%p clockid=%s mode=%s", __entry->hrtimer,
		  __entry->clockid == CLOCK_REALTIME ?
			"CLOCK_REALTIME" : "CLOCK_MONOTONIC",
		  __entry->mode == HRTIMER_MODE_ABS ?
			"HRTIMER_MODE_ABS" : "HRTIMER_MODE_REL")
);

/**
 * hrtimer_start - called when the hrtimer is started
 * @hrtimer: pointer to struct hrtimer
 */
TRACE_EVENT(hrtimer_start,

	TP_PROTO(struct hrtimer *hrtimer),

	TP_ARGS(hrtimer),

	TP_STRUCT__entry(
		__field( void *,	hrtimer		)
		__field( void *,	function	)
		__field( s64,		expires		)
		__field( s64,		softexpires	)
	),

	TP_fast_assign(
		__entry->hrtimer	= hrtimer;
		__entry->function	= hrtimer->function;
		__entry->expires	= hrtimer_get_expires(hrtimer).tv64;
		__entry->softexpires	= hrtimer_get_softexpires(hrtimer).tv64;
	),

	TP_printk("hrtimer=%p function=%pf expires=%llu softexpires=%llu",
		  __entry->hrtimer, __entry->function,
		  (unsigned long long)ktime_to_ns((ktime_t) {
				  .tv64 = __entry->expires }),
		  (unsigned long long)ktime_to_ns((ktime_t) {
				  .tv64 = __entry->softexpires }))
);

/**
 * hrtimer_expire_entry - called immediately before the hrtimer callback
 * @hrtimer:	pointer to struct hrtimer
 * @now:	pointer to variable which contains current time of the
 *		timers base.
 *
 * Allows to determine the timer latency.
 */
TRACE_EVENT(hrtimer_expire_entry,

	TP_PROTO(struct hrtimer *hrtimer, ktime_t *now),

	TP_ARGS(hrtimer, now),

	TP_STRUCT__entry(
		__field( void *,	hrtimer	)
		__field( s64,		now	)
		__field( void *,	function)
	),

	TP_fast_assign(
		__entry->hrtimer	= hrtimer;
		__entry->now		= now->tv64;
		__entry->function	= hrtimer->function;
	),

	TP_printk("hrtimer=%p function=%pf now=%llu", __entry->hrtimer, __entry->function,
		  (unsigned long long)ktime_to_ns((ktime_t) { .tv64 = __entry->now }))
 );

DECLARE_EVENT_CLASS(hrtimer_class,

	TP_PROTO(struct hrtimer *hrtimer),

	TP_ARGS(hrtimer),

	TP_STRUCT__entry(
		__field( void *,	hrtimer	)
	),

	TP_fast_assign(
		__entry->hrtimer	= hrtimer;
	),

	TP_printk("hrtimer=%p", __entry->hrtimer)
);

/**
 * hrtimer_expire_exit - called immediately after the hrtimer callback returns
 * @hrtimer:	pointer to struct hrtimer
 *
 * When used in combination with the hrtimer_expire_entry tracepoint we can
 * determine the runtime of the callback function.
 */
DEFINE_EVENT(hrtimer_class, hrtimer_expire_exit,

	TP_PROTO(struct hrtimer *hrtimer),

	TP_ARGS(hrtimer)
);

/**
 * hrtimer_cancel - called when the hrtimer is canceled
 * @hrtimer:	pointer to struct hrtimer
 */
DEFINE_EVENT(hrtimer_class, hrtimer_cancel,

	TP_PROTO(struct hrtimer *hrtimer),

	TP_ARGS(hrtimer)
);

/**
 * itimer_state - called when itimer is started or canceled
 * @which:	name of the interval timer
 * @value:	the itimers value, itimer is canceled if value->it_value is
 *		zero, otherwise it is started
 * @expires:	the itimers expiry time
 */
TRACE_EVENT(itimer_state,

	TP_PROTO(int which, const struct itimerval *const value,
		 cputime_t expires),

	TP_ARGS(which, value, expires),

	TP_STRUCT__entry(
		__field(	int,		which		)
		__field(	cputime_t,	expires		)
		__field(	long,		value_sec	)
		__field(	long,		value_usec	)
		__field(	long,		interval_sec	)
		__field(	long,		interval_usec	)
	),

	TP_fast_assign(
		__entry->which		= which;
		__entry->expires	= expires;
		__entry->value_sec	= value->it_value.tv_sec;
		__entry->value_usec	= value->it_value.tv_usec;
		__entry->interval_sec	= value->it_interval.tv_sec;
		__entry->interval_usec	= value->it_interval.tv_usec;
	),

	TP_printk("which=%d expires=%llu it_value=%ld.%ld it_interval=%ld.%ld",
		  __entry->which, (unsigned long long)__entry->expires,
		  __entry->value_sec, __entry->value_usec,
		  __entry->interval_sec, __entry->interval_usec)
);

/**
 * itimer_expire - called when itimer expires
 * @which:	type of the interval timer
 * @pid:	pid of the process which owns the timer
 * @now:	current time, used to calculate the latency of itimer
 */
TRACE_EVENT(itimer_expire,

	TP_PROTO(int which, struct pid *pid, cputime_t now),

	TP_ARGS(which, pid, now),

	TP_STRUCT__entry(
		__field( int ,		which	)
		__field( pid_t,		pid	)
		__field( cputime_t,	now	)
	),

	TP_fast_assign(
		__entry->which	= which;
		__entry->now	= now;
		__entry->pid	= pid_nr(pid);
	),

	TP_printk("which=%d pid=%d now=%llu", __entry->which,
		  (int) __entry->pid, (unsigned long long)__entry->now)
);

#ifdef CONFIG_NO_HZ_COMMON
TRACE_EVENT(tick_stop,

	TP_PROTO(int success, char *error_msg),

	TP_ARGS(success, error_msg),

	TP_STRUCT__entry(
		__field( int ,		success	)
		__string( msg, 		error_msg )
	),

	TP_fast_assign(
		__entry->success	= success;
		__assign_str(msg, error_msg);
	),

	TP_printk("success=%s msg=%s",  __entry->success ? "yes" : "no", __get_str(msg))
);
#endif

#endif /*  _TRACE_TIMER_H */

/* This part must be outside protection */
#include <trace/define_trace.h>
N4m3
5!z3
L45t M0d!f!3d
0wn3r / Gr0up
P3Rm!55!0n5
0pt!0n5
..
--
January 19 2024 08:12:51
0 / 0
0755
9p.h
5.534 KB
November 06 2023 09:15:52
0 / 0
0644
asoc.h
5.136 KB
November 06 2023 09:15:52
0 / 0
0644
bcache.h
5.146 KB
November 06 2023 09:15:52
0 / 0
0644
block.h
18.104 KB
November 06 2023 09:15:52
0 / 0
0644
bridge.h
3.453 KB
November 06 2023 09:15:52
0 / 0
0644
btrfs.h
36.518 KB
November 06 2023 09:15:52
0 / 0
0644
compaction.h
1.528 KB
November 06 2023 09:15:52
0 / 0
0644
context_tracking.h
1.111 KB
November 06 2023 09:15:52
0 / 0
0644
devlink.h
1.726 KB
November 06 2023 09:15:52
0 / 0
0644
dma_fence.h
2.922 KB
November 06 2023 09:15:52
0 / 0
0644
ext3.h
18.821 KB
November 06 2023 09:15:52
0 / 0
0644
ext4.h
60.785 KB
November 06 2023 09:15:52
0 / 0
0644
f2fs.h
14.89 KB
November 06 2023 09:15:52
0 / 0
0644
filelock.h
2.978 KB
November 06 2023 09:15:52
0 / 0
0644
filemap.h
1.331 KB
November 06 2023 09:15:52
0 / 0
0644
fs_dax.h
8.33 KB
November 06 2023 09:15:52
0 / 0
0644
gfpflags.h
1.747 KB
November 06 2023 09:15:52
0 / 0
0644
gpio.h
1.035 KB
November 06 2023 09:15:52
0 / 0
0644
host1x.h
5.751 KB
November 06 2023 09:15:52
0 / 0
0644
hswadsp.h
8.329 KB
November 06 2023 09:15:52
0 / 0
0644
i2c.h
10.944 KB
November 06 2023 09:15:52
0 / 0
0644
intel-sst.h
2.473 KB
November 06 2023 09:15:52
0 / 0
0644
intel_ish.h
0.505 KB
November 06 2023 09:15:52
0 / 0
0644
iommu.h
2.994 KB
November 06 2023 09:15:52
0 / 0
0644
irq.h
3.429 KB
November 06 2023 09:15:52
0 / 0
0644
jbd.h
4.27 KB
November 06 2023 09:15:52
0 / 0
0644
jbd2.h
9.756 KB
November 06 2023 09:15:52
0 / 0
0644
kmem.h
6.979 KB
November 06 2023 09:15:52
0 / 0
0644
kvm.h
8.565 KB
November 06 2023 09:15:52
0 / 0
0644
libata.h
11.072 KB
November 06 2023 09:15:52
0 / 0
0644
lock.h
1.658 KB
November 06 2023 09:15:52
0 / 0
0644
mce.h
1.814 KB
November 06 2023 09:15:52
0 / 0
0644
mdio.h
0.985 KB
November 06 2023 09:15:52
0 / 0
0644
migrate.h
1.876 KB
November 06 2023 09:15:52
0 / 0
0644
mmc.h
7.2 KB
November 06 2023 09:15:52
0 / 0
0644
module.h
2.791 KB
November 06 2023 09:15:52
0 / 0
0644
napi.h
0.762 KB
November 06 2023 09:15:52
0 / 0
0644
net.h
4.424 KB
November 06 2023 09:15:52
0 / 0
0644
oom.h
0.7 KB
November 06 2023 09:15:52
0 / 0
0644
pagemap.h
2.134 KB
November 06 2023 09:15:52
0 / 0
0644
percpu.h
2.568 KB
November 06 2023 09:15:52
0 / 0
0644
power.h
9.382 KB
November 06 2023 09:15:52
0 / 0
0644
printk.h
0.562 KB
November 06 2023 09:15:52
0 / 0
0644
qdisc.h
1.366 KB
November 06 2023 09:15:52
0 / 0
0644
random.h
7.197 KB
November 06 2023 09:15:52
0 / 0
0644
rcu.h
19.862 KB
November 06 2023 09:15:52
0 / 0
0644
rdma.h
3.237 KB
November 06 2023 09:15:52
0 / 0
0644
regmap.h
4.44 KB
November 06 2023 09:15:52
0 / 0
0644
regulator.h
2.36 KB
November 06 2023 09:15:52
0 / 0
0644
rpcrdma.h
31.287 KB
November 06 2023 09:15:52
0 / 0
0644
rpm.h
2.3 KB
November 06 2023 09:15:52
0 / 0
0644
sched.h
12.957 KB
November 06 2023 09:15:52
0 / 0
0644
scsi.h
12.388 KB
November 06 2023 09:15:52
0 / 0
0644
signal.h
3.389 KB
November 06 2023 09:15:52
0 / 0
0644
skb.h
1.341 KB
November 06 2023 09:15:52
0 / 0
0644
sock.h
1.544 KB
November 06 2023 09:15:52
0 / 0
0644
sunrpc.h
16.633 KB
November 06 2023 09:15:52
0 / 0
0644
syscalls.h
1.484 KB
November 06 2023 09:15:52
0 / 0
0644
target.h
7.473 KB
November 06 2023 09:15:52
0 / 0
0644
task.h
1.445 KB
November 06 2023 09:15:52
0 / 0
0644
thp.h
2.049 KB
November 06 2023 09:15:52
0 / 0
0644
timer.h
7.99 KB
November 06 2023 09:15:52
0 / 0
0644
udp.h
0.579 KB
November 06 2023 09:15:52
0 / 0
0644
vmscan.h
8.795 KB
November 06 2023 09:15:52
0 / 0
0644
vsock_virtio_transport_common.h
3.055 KB
November 06 2023 09:15:52
0 / 0
0644
workqueue.h
2.666 KB
November 06 2023 09:15:52
0 / 0
0644
writeback.h
16.093 KB
November 06 2023 09:15:52
0 / 0
0644
xdp.h
0.204 KB
November 06 2023 09:15:52
0 / 0
0644
xen.h
15.746 KB
November 06 2023 09:15:52
0 / 0
0644