Kernel: Reset profiling state on exec() (but keep it going)

We now log the new executable on exec() and throw away all the samples
we've accumulated so far. But profiling keeps going.
This commit is contained in:
Andreas Kling 2020-02-22 10:54:50 +01:00
commit d7a13dbaa7
Notes: sideshowbarker 2024-07-19 09:10:37 +09:00
3 changed files with 10 additions and 0 deletions

View file

@ -1015,6 +1015,9 @@ int Process::do_exec(NonnullRefPtr<FileDescription> main_program_description, Ve
kprintf("Process %u (%s) exec'd %s @ %p\n", pid(), name().characters(), path.characters(), tss.eip);
#endif
if (is_profiling())
Profiling::did_exec(path);
new_main_thread->set_state(Thread::State::Skip1SchedulerPass);
big_lock().force_unlock_if_locked();
return 0;