Home | History | Annotate | Download | only in e2fsck
      1 #!/usr/bin/awk -f
      2 #
      3 #  Awk program to analyze mtrace.c output.
      4 #
      5 $1 == "+"	{ if (allocated[$2] != "")
      6 		    print "+", $2, "Alloc", NR, "duplicate:", allocated[$2];
      7 		  else
      8 		    allocated[$2] = $3;
      9 		}
     10 $1 == "-"	{ if (allocated[$2] != "") {
     11 		    allocated[$2] = "";
     12 		    if (allocated[$2] != "")
     13 			print "DELETE FAILED", $2, allocated[$2];
     14 		  } else
     15 		    print "-", $2, "Free", NR, "was never alloc'd";
     16 		}
     17 $1 == "<"	{ if (allocated[$2] != "")
     18 		    allocated[$2] = "";
     19 		  else
     20 		    print "-", $2, "Realloc", NR, "was never alloc'd";
     21 		}
     22 $1 == ">"	{ if (allocated[$2] != "")
     23 		    print "+", $2, "Realloc", NR, "duplicate:", allocated[$2];
     24 		  else
     25 		    allocated[$2] = $3;
     26 		}
     27 
     28 # Ignore "= Start"
     29 $1 == "="	{ }
     30 # Ignore failed realloc attempts for now
     31 $1 == "!"	{ }
     32 
     33 
     34 END		{ for (x in allocated) 
     35 		    if (allocated[x] != "")
     36 		      print "+", x, allocated[x];
     37 		}
     38