43 pevent_set_file_bigendian(pevent, file_bigendian);
44 pevent_set_host_bigendian(pevent, host_bigendian);
78 ret = get_common_field(context, &size, &offset,
92 ret = get_common_field(context, &size, &offset,
106 ret = get_common_field(context, &size, &offset,
107 "common_preempt_count");
118 unsigned long long val;
140 offset = *(
int *)(data + field->
offset);
146 return data + field->
offset;
176 memset(&record, 0,
sizeof(record));
192 warning(
"ug! no event found for type %d", type);
200 unsigned long long nsecs,
char *comm)
226 unsigned long long addr;
234 line = strtok_r(file,
"\n", &next);
237 addr_str = strtok_r(line,
" ", &fmt);
240 strtok_r(
NULL,
" ", &fmt);
241 func = strtok_r(
NULL,
"\t", &fmt);
242 mod = strtok_r(
NULL,
"]", &fmt);
249 line = strtok_r(
NULL,
"\n", &next);
256 unsigned long long addr;
263 line = strtok_r(file,
"\n", &next);
265 addr_str = strtok_r(line,
":", &fmt);
267 warning(
"printk format with empty entry");
272 printk = strdup(fmt+1);
273 line = strtok_r(
NULL,
"\n", &next);
284 char *
buf,
unsigned long size,
char *
sys)
294 if (!pevent || !pevent->
events)
302 if (idx < pevent->nr_events && event == pevent->
events[idx]) {
309 for (idx = 1; idx < pevent->
nr_events; idx++) {
310 if (event == pevent->
events[idx - 1])
318 unsigned long long value;
323 {
"TIMER_SOFTIRQ", 1 },
324 {
"NET_TX_SOFTIRQ", 2 },
325 {
"NET_RX_SOFTIRQ", 3 },
326 {
"BLOCK_SOFTIRQ", 4 },
327 {
"BLOCK_IOPOLL_SOFTIRQ", 5 },
328 {
"TASKLET_SOFTIRQ", 6 },
329 {
"SCHED_SOFTIRQ", 7 },
330 {
"HRTIMER_SOFTIRQ", 8 },
331 {
"RCU_SOFTIRQ", 9 },
333 {
"HRTIMER_NORESTART", 0 },
334 {
"HRTIMER_RESTART", 1 },
349 for (i = 0; i < (
int)(
sizeof(flags)/
sizeof(flags[0])); i++)
351 return flags[i].
value;