Lines Matching full:my
34 my $P = $0;
37 my @DIRS = ('/proc', '/sys');
40 my $TIMEOUT = 10;
44 my @SUPPORTED_ARCHITECTURES = ('x86_64', 'ppc64', 'x86');
47 my $help = 0;
48 my $debug = 0;
49 my $raw = 0;
50 my $output_raw = ""; # Write raw results to file.
51 my $input_raw = ""; # Read raw results from file instead of scanning.
52 my $suppress_dmesg = 0; # Don't show dmesg in output.
53 my $squash_by_path = 0; # Summary report grouped by absolute path.
54 my $squash_by_filename = 0; # Summary report grouped by filename.
55 my $kallsyms_file = ""; # Kernel symbols file.
56 my $kernel_config_file = ""; # Kernel configuration file.
57 my $opt_32bit = 0; # Scan 32-bit kernel.
58 my $page_offset_32bit = 0; # Page offset for 32-bit kernel.
60 my @kallsyms = ();
63 my @skip_abs = (
73 my @skip_any = (
87 my ($exitcode) = @_;
154 my $archname = `uname -m`;
161 open my $fh, '>', $output_raw or die "$0: $output_raw: $!\n";
166 open my $fh, '<', $kallsyms_file or die "$0: $kallsyms_file: $!\n";
169 my @entry = split / /, $_;
170 my $addr_text = $entry[0];
173 my $addr = hex($addr_text);
174 my $symbol = $entry[2];
176 my $long = pack("J", $addr);
177 my $entry = [$long, $symbol];
222 my ($desc) = @_;
223 my $arch = `uname -m`;
248 my ($option) = @_;
249 my $value = "";
250 my $tmp_fh;
251 my $tmp_file = "";
252 my @config_files;
268 my $file = '/boot/config-' . `uname -r`;
273 foreach my $file (@config_files) {
287 my ($option, $file) = @_;
288 my $str = "";
289 my $val = "";
291 open(my $fh, "<", $file) or return "";
292 while (my $line = <$fh> ) {
306 my ($match) = @_;
329 my ($match) = @_;
346 my $page_offset;
347 my $default_offset = 0xc0000000;
363 my ($match) = @_;
365 my $hex = hex($match);
366 my $region_min = hex("0xffffffffff600000");
367 my $region_max = hex("0xffffffffff601000");
375 my ($path, $line) = @_;
376 my $address_re;
432 open my $cmd, '-|', 'dmesg';
444 my ($path) = @_;
450 my($filename, $dirs, $suffix) = fileparse($path);
460 my ($file) = @_;
477 my ($file) = @_;
479 open my $fh, "<:raw", $file or return;
481 my $bytes = <$fh>;
484 foreach my $entry (@kallsyms) {
485 my $addr = $entry->[0];
486 my $symbol = $entry->[1];
487 my $offset = index($bytes, $addr);
496 my ($file) = @_;
515 open my $fh, "<", $file or return;
528 my ($path) = @_;
538 my @dirs = @_;
540 while (my $pwd = shift @dirs) {
542 my @files = readdir(DIR);
545 foreach my $file (@files) {
548 my $path = "$pwd/$file";
572 my ($file) = @_;
580 my ($total, $dmesg, $paths, $files) = parse_raw_file($file);
599 my ($file) = @_;
601 open (my $fh, '<', $file) or die "$0: $file: $!\n";
615 my ($file) = @_;
617 my $total = 0; # Total number of lines parsed.
618 my @dmesg; # dmesg output.
619 my %files; # Unique filenames containing leaks.
620 my %paths; # Unique paths containing leaks.
622 open (my $fh, '<', $file) or die "$0: $file: $!\n";
623 while (my $line = <$fh>) {
640 my ($dmesg) = @_;
650 my $index = index($_, ': ');
658 my ($ref, $desc) = @_;
669 my $lines = $ref->{$_};
670 my $length = @$lines;
677 my ($paths, $line) = @_;
679 my $index = index($line, ': ');
680 my $path = substr($line, 0, $index);
688 my ($files, $line) = @_;
690 my $index = index($line, ': ');
691 my $path = substr($line, 0, $index);
692 my $filename = basename($path);
700 my ($cache, $key, $value) = @_;