aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBjoern B. Brandenburg <bbb@cs.unc.edu>2012-01-24 07:54:01 -0500
committerBjoern B. Brandenburg <bbb@cs.unc.edu>2012-01-24 07:54:01 -0500
commit6138184c2ad3e4027b0ab1958cde3da2a660147d (patch)
tree695c98214cf0935b8b6bef88431f43ab6b1a6dc5 /src
parent765c1b704ec458a4224d9cd3e9cd38b5cf184395 (diff)
Add support for IRQ flag and counter in binary trace format.wip-ft-irq-flag
This introduces the new bit allocation and adds support to ftdump for showing the values. Not yet included is any support for filtering based on IRQ interference.
Diffstat (limited to 'src')
-rw-r--r--src/ftdump.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/ftdump.c b/src/ftdump.c
index 39747c9..1462c4d 100644
--- a/src/ftdump.c
+++ b/src/ftdump.c
@@ -38,19 +38,22 @@ static void dump(struct timestamp* ts, size_t count)
38 printf("==== non-consecutive sequence number ====\n"); 38 printf("==== non-consecutive sequence number ====\n");
39 last_seq = x->seq_no; 39 last_seq = x->seq_no;
40 if (name) 40 if (name)
41 printf("%-20s seq:%u timestamp:%llu cpu:%d type:%-8s \n", 41 printf("%-20s seq:%u timestamp:%llu cpu:%d type:%-8s irq:%u irqc:%02u \n",
42 name, x->seq_no, 42 name, x->seq_no,
43 (unsigned long long) x->timestamp, 43 (unsigned long long) x->timestamp,
44 x->cpu, 44 x->cpu,
45 task_type2str(x->task_type)); 45 task_type2str(x->task_type),
46 x->irq_flag,
47 x->irq_count);
46 else 48 else
47 printf("%16s:%3u seq:%u timestamp:%llu cpu:%u type:%-8s\n", 49 printf("%16s:%3u seq:%u timestamp:%llu cpu:%u type:%-8s irq:%u irqc:%02u\n",
48 "event", 50 "event",
49 (unsigned int) x->event, x->seq_no, 51 (unsigned int) x->event, x->seq_no,
50 (unsigned long long) x->timestamp, 52 (unsigned long long) x->timestamp,
51 x->cpu, 53 x->cpu,
52 task_type2str(x->task_type)); 54 task_type2str(x->task_type),
53 55 x->irq_flag,
56 x->irq_count);
54 } 57 }
55} 58}
56 59
@@ -75,14 +78,12 @@ int main(int argc, char** argv)
75 "\t offset(timestamp) = %3lu\n" 78 "\t offset(timestamp) = %3lu\n"
76 "\t offset(seq_no) = %3lu\n" 79 "\t offset(seq_no) = %3lu\n"
77 "\t offset(cpu) = %3lu\n" 80 "\t offset(cpu) = %3lu\n"
78 "\t offset(event) = %3lu\n" 81 "\t offset(event) = %3lu\n",
79 "\t offset(task_type) = %3lu\n",
80 (unsigned long) sizeof(struct timestamp), 82 (unsigned long) sizeof(struct timestamp),
81 offset(struct timestamp, timestamp), 83 offset(struct timestamp, timestamp),
82 offset(struct timestamp, seq_no), 84 offset(struct timestamp, seq_no),
83 offset(struct timestamp, cpu), 85 offset(struct timestamp, cpu),
84 offset(struct timestamp, event), 86 offset(struct timestamp, event));
85 offset(struct timestamp, task_type));
86 87
87 if (argc != 2) 88 if (argc != 2)
88 die("Usage: ftdump <logfile>"); 89 die("Usage: ftdump <logfile>");