in record.py [0:0]
def cleanup_exit(orig_attrs, exit_code):
rfile_mid_format = 'record'
if perf_pipe:
perf_data = rfile_path + '.perf.data'
perf_pipe.send_signal(signal.SIGINT)
perf_pipe.wait()
subprocess.call('perf script -i \'%s\' > \'%s\'' %
(perf_data, rfile_path),
shell=True, executable='/bin/bash')
rfile_mid_format = 'perf_script'
if remove_perf_data:
os.remove(perf_data)
if _damon.is_damon_running():
if _damon.turn_damon('off'):
print('failed to turn damon off!')
while _damon.is_damon_running():
time.sleep(1)
if orig_attrs:
if orig_attrs.apply():
print('original attributes (%s) restoration failed!' % orig_attrs)
if rfile_format != None and rfile_mid_format != rfile_format:
rfile_path_mid = rfile_path + '.mid'
os.rename(rfile_path, rfile_path_mid)
result = _damon_result.parse_damon_result(rfile_path_mid,
rfile_mid_format)
_damon_result.write_damon_result(result, rfile_path, rfile_format,
rfile_permission)
os.remove(rfile_path_mid)
os.chmod(rfile_path, rfile_permission)
exit(exit_code)