Commit 67554faa7614b93722ed559fc3f914b86bf606ae

Authored by Fabian Frederick
Committed by Michal Marek
1 parent 79192ca8eb

scripts/bootgraph.pl: Add graphic header

Adding -header + help function like other .pl in /scripts.

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Michal Marek <mmarek@suse.cz>

Showing 1 changed file with 40 additions and 2 deletions Side-by-side Diff

scripts/bootgraph.pl
... ... @@ -38,7 +38,32 @@
38 38 #
39 39  
40 40 use strict;
  41 +use Getopt::Long;
  42 +my $header = 0;
41 43  
  44 +sub help {
  45 + my $text = << "EOM";
  46 +Usage:
  47 +1) dmesg | perl scripts/bootgraph.pl [OPTION] > output.svg
  48 +2) perl scripts/bootgraph.pl -h
  49 +
  50 +Options:
  51 + -header Insert kernel version and date
  52 +EOM
  53 + my $std=shift;
  54 + if ($std == 1) {
  55 + print STDERR $text;
  56 + } else {
  57 + print $text;
  58 + }
  59 + exit;
  60 +}
  61 +
  62 +GetOptions(
  63 + 'h|help' =>\&help,
  64 + 'header' =>\$header
  65 +);
  66 +
42 67 my %start;
43 68 my %end;
44 69 my %type;
... ... @@ -49,6 +74,11 @@
49 74 my %pids;
50 75 my %pidctr;
51 76  
  77 +my $headerstep = 20;
  78 +my $xheader = 15;
  79 +my $yheader = 25;
  80 +my $cyheader = 0;
  81 +
52 82 while (<>) {
53 83 my $line = $_;
54 84 if ($line =~ /([0-9\.]+)\] calling ([a-zA-Z0-9\_\.]+)\+/) {
55 85  
56 86  
... ... @@ -112,14 +142,22 @@
112 142 print STDERR <<END;
113 143 No data found in the dmesg. Make sure that 'printk.time=1' and
114 144 'initcall_debug' are passed on the kernel command line.
115   -Usage:
116   - dmesg | perl scripts/bootgraph.pl > output.svg
117 145 END
  146 + help(1);
118 147 exit 1;
119 148 }
120 149  
121 150 print "<?xml version=\"1.0\" standalone=\"no\"?> \n";
122 151 print "<svg width=\"2000\" height=\"100%\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n";
  152 +
  153 +
  154 +if ($header) {
  155 + my $version = `uname -a`;
  156 + my $date = `date`;
  157 + print "<text transform=\"translate($xheader,$yheader)\">Kernel version: $version</text>\n";
  158 + $cyheader = $yheader+$headerstep;
  159 + print "<text transform=\"translate($xheader,$cyheader)\">Date: $date</text>\n";
  160 +}
123 161  
124 162 my @styles;
125 163