diff --git a/scripts/cleanup-trace-events.pl b/scripts/cleanup-trace-events.pl index e93abc00da..d4f0e4cab5 100755 --- a/scripts/cleanup-trace-events.pl +++ b/scripts/cleanup-trace-events.pl @@ -13,6 +13,7 @@ use warnings; use strict; +use File::Basename; my $buf = ''; my %seen = (); @@ -23,12 +24,19 @@ sub out { %seen = (); } -while (<>) { - if (/^(disable )?([a-z_0-9]+)\(/) { - open GREP, '-|', 'git', 'grep', '-lw', "trace_$2" +$#ARGV == 0 or die "usage: $0 FILE"; +my $in = $ARGV[0]; +my $dir = dirname($in); +open(IN, $in) or die "open $in: $!"; +chdir($dir) or die "chdir $dir: $!"; + +while () { + if (/^(disable |(tcg) |vcpu )*([a-z_0-9]+)\(/i) { + my $pat = "trace_$3"; + $pat .= '_tcg' if (defined $2); + open GREP, '-|', 'git', 'grep', '-lw', '--max-depth', '1', $pat or die "run git grep: $!"; - my $fname; - while ($fname = ) { + while (my $fname = ) { chomp $fname; next if $seen{$fname} || $fname eq 'trace-events'; $seen{$fname} = 1; @@ -49,3 +57,4 @@ while (<>) { } out; +close(IN) or die "close $in: $!";