2 #define TRACE_SYSTEM random
4 #if !defined(_TRACE_RANDOM_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_RANDOM_H
7 #include <linux/writeback.h>
8 #include <linux/tracepoint.h>
10 DECLARE_EVENT_CLASS(random__mix_pool_bytes
,
11 TP_PROTO(const char *pool_name
, int bytes
, unsigned long IP
),
13 TP_ARGS(pool_name
, bytes
, IP
),
16 __field( const char *, pool_name
)
18 __field(unsigned long, IP
)
22 __entry
->pool_name
= pool_name
;
23 __entry
->bytes
= bytes
;
27 TP_printk("%s pool: bytes %d caller %pF",
28 __entry
->pool_name
, __entry
->bytes
, (void *)__entry
->IP
)
31 DEFINE_EVENT(random__mix_pool_bytes
, mix_pool_bytes
,
32 TP_PROTO(const char *pool_name
, int bytes
, unsigned long IP
),
34 TP_ARGS(pool_name
, bytes
, IP
)
37 DEFINE_EVENT(random__mix_pool_bytes
, mix_pool_bytes_nolock
,
38 TP_PROTO(const char *pool_name
, int bytes
, unsigned long IP
),
40 TP_ARGS(pool_name
, bytes
, IP
)
43 TRACE_EVENT(credit_entropy_bits
,
44 TP_PROTO(const char *pool_name
, int bits
, int entropy_count
,
45 int entropy_total
, unsigned long IP
),
47 TP_ARGS(pool_name
, bits
, entropy_count
, entropy_total
, IP
),
50 __field( const char *, pool_name
)
52 __field( int, entropy_count
)
53 __field( int, entropy_total
)
54 __field(unsigned long, IP
)
58 __entry
->pool_name
= pool_name
;
60 __entry
->entropy_count
= entropy_count
;
61 __entry
->entropy_total
= entropy_total
;
65 TP_printk("%s pool: bits %d entropy_count %d entropy_total %d "
66 "caller %pF", __entry
->pool_name
, __entry
->bits
,
67 __entry
->entropy_count
, __entry
->entropy_total
,
71 TRACE_EVENT(get_random_bytes
,
72 TP_PROTO(int nbytes
, unsigned long IP
),
77 __field( int, nbytes
)
78 __field(unsigned long, IP
)
82 __entry
->nbytes
= nbytes
;
86 TP_printk("nbytes %d caller %pF", __entry
->nbytes
, (void *)__entry
->IP
)
89 DECLARE_EVENT_CLASS(random__extract_entropy
,
90 TP_PROTO(const char *pool_name
, int nbytes
, int entropy_count
,
93 TP_ARGS(pool_name
, nbytes
, entropy_count
, IP
),
96 __field( const char *, pool_name
)
97 __field( int, nbytes
)
98 __field( int, entropy_count
)
99 __field(unsigned long, IP
)
103 __entry
->pool_name
= pool_name
;
104 __entry
->nbytes
= nbytes
;
105 __entry
->entropy_count
= entropy_count
;
109 TP_printk("%s pool: nbytes %d entropy_count %d caller %pF",
110 __entry
->pool_name
, __entry
->nbytes
, __entry
->entropy_count
,
115 DEFINE_EVENT(random__extract_entropy
, extract_entropy
,
116 TP_PROTO(const char *pool_name
, int nbytes
, int entropy_count
,
119 TP_ARGS(pool_name
, nbytes
, entropy_count
, IP
)
122 DEFINE_EVENT(random__extract_entropy
, extract_entropy_user
,
123 TP_PROTO(const char *pool_name
, int nbytes
, int entropy_count
,
126 TP_ARGS(pool_name
, nbytes
, entropy_count
, IP
)
131 #endif /* _TRACE_RANDOM_H */
133 /* This part must be outside protection */
134 #include <trace/define_trace.h>