From 0465a75c56ad53d68eaf116173f6ceac057c6ab4 Mon Sep 17 00:00:00 2001 From: Ambroise Vincent Date: Tue, 17 Dec 2019 17:36:23 +0000 Subject: [PATCH] devlib/trace/ftrace.py: Fix reset and stop states A system with function_profile_enabled set to 1 prevents using function_graph. Using nop tracer left the tracing files in a dirty state. --- devlib/collector/ftrace.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/devlib/collector/ftrace.py b/devlib/collector/ftrace.py index 165fc8c..2a566f7 100644 --- a/devlib/collector/ftrace.py +++ b/devlib/collector/ftrace.py @@ -227,6 +227,8 @@ class FtraceCollector(CollectorBase): self._set_buffer_size() self.target.execute('{} reset'.format(self.target_binary), as_root=True, timeout=TIMEOUT) + if self.functions: + self.target.write_value(self.function_profile_file, 0, verify=False) self._reset_needed = False def start(self): @@ -290,7 +292,7 @@ class FtraceCollector(CollectorBase): def stop(self): # Disable kernel function profiling if self.functions and self.tracer is None: - self.target.execute('echo 1 > {}'.format(self.function_profile_file), + self.target.execute('echo 0 > {}'.format(self.function_profile_file), as_root=True) if 'cpufreq' in self.target.modules: self.logger.debug('Trace CPUFreq frequencies')