Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(47)

Side by Side Diff: tools/ll_prof.py

Issue 7282011: ll_prof: Terminate mmap file names on the first NUL char. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright 2010 the V8 project authors. All rights reserved. 3 # Copyright 2010 the V8 project authors. All rights reserved.
4 # Redistribution and use in source and binary forms, with or without 4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions are 5 # modification, are permitted provided that the following conditions are
6 # met: 6 # met:
7 # 7 #
8 # * Redistributions of source code must retain the above copyright 8 # * Redistributions of source code must retain the above copyright
9 # notice, this list of conditions and the following disclaimer. 9 # notice, this list of conditions and the following disclaimer.
10 # * Redistributions in binary form must reproduce the above 10 # * Redistributions in binary form must reproduce the above
(...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after
624 if self.offset >= self.limit: 624 if self.offset >= self.limit:
625 return None, 0 625 return None, 0
626 offset = self.offset 626 offset = self.offset
627 header = PERF_EVENT_HEADER_DESC.Read(self.trace, self.offset) 627 header = PERF_EVENT_HEADER_DESC.Read(self.trace, self.offset)
628 self.offset += header.size 628 self.offset += header.size
629 return header, offset 629 return header, offset
630 630
631 def ReadMmap(self, header, offset): 631 def ReadMmap(self, header, offset):
632 mmap_info = PERF_MMAP_EVENT_BODY_DESC.Read(self.trace, 632 mmap_info = PERF_MMAP_EVENT_BODY_DESC.Read(self.trace,
633 offset + self.header_size) 633 offset + self.header_size)
634 # Read null-padded filename. 634 # Read null-terminated filename.
635 filename = self.trace[offset + self.header_size + ctypes.sizeof(mmap_info): 635 filename = self.trace[offset + self.header_size + ctypes.sizeof(mmap_info):
636 offset + header.size].rstrip(chr(0)) 636 offset + header.size]
637 mmap_info.filename = filename 637 mmap_info.filename = filename[:filename.find(chr(0))]
638 return mmap_info 638 return mmap_info
639 639
640 def ReadSample(self, header, offset): 640 def ReadSample(self, header, offset):
641 sample = self.sample_event_body_desc.Read(self.trace, 641 sample = self.sample_event_body_desc.Read(self.trace,
642 offset + self.header_size) 642 offset + self.header_size)
643 if not self.callchain_supported: 643 if not self.callchain_supported:
644 return sample 644 return sample
645 sample.ips = [] 645 sample.ips = []
646 offset += self.header_size + ctypes.sizeof(sample) 646 offset += self.header_size + ctypes.sizeof(sample)
647 for _ in xrange(sample.nr): 647 for _ in xrange(sample.nr):
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
933 print "%10d total ticks" % ticks 933 print "%10d total ticks" % ticks
934 print "%10d ticks not in symbols" % missed_ticks 934 print "%10d ticks not in symbols" % missed_ticks
935 print "%10d unaccounted ticks" % really_missed_ticks 935 print "%10d unaccounted ticks" % really_missed_ticks
936 print "%10d total symbols" % len([c for c in code_map.AllCode()]) 936 print "%10d total symbols" % len([c for c in code_map.AllCode()])
937 print "%10d used symbols" % len([c for c in code_map.UsedCode()]) 937 print "%10d used symbols" % len([c for c in code_map.UsedCode()])
938 print "%9.2fs library processing time" % mmap_time 938 print "%9.2fs library processing time" % mmap_time
939 print "%9.2fs tick processing time" % sample_time 939 print "%9.2fs tick processing time" % sample_time
940 940
941 log_reader.Dispose() 941 log_reader.Dispose()
942 trace_reader.Dispose() 942 trace_reader.Dispose()
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698