mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-28 14:02:51 +00:00
Kernel+Profiler: Track lost time between profiler timer ticks
We can lose profiling timer events for a few reasons, for example disabled interrupts or system slowness. This accounts for lost time between CPU samples by adding a field lost_samples to each profiling event which tracks how many samples were lost immediately preceding the event.
This commit is contained in:
parent
8614d18956
commit
c41f13f10b
Notes:
sideshowbarker
2024-07-18 18:11:50 +09:00
Author: https://github.com/gunnarbeutner
Commit: c41f13f10b
Pull-request: https://github.com/SerenityOS/serenity/pull/7090
Reviewed-by: https://github.com/awesomekling
8 changed files with 30 additions and 11 deletions
|
@ -45,6 +45,8 @@ String SamplesModel::column_name(int column) const
|
|||
return "TID";
|
||||
case Column::ExecutableName:
|
||||
return "Executable";
|
||||
case Column::LostSamples:
|
||||
return "Lost Samples";
|
||||
case Column::InnermostStackFrame:
|
||||
return "Innermost Frame";
|
||||
default:
|
||||
|
@ -81,6 +83,10 @@ GUI::Variant SamplesModel::data(const GUI::ModelIndex& index, GUI::ModelRole rol
|
|||
return (u32)event.timestamp;
|
||||
}
|
||||
|
||||
if (index.column() == Column::LostSamples) {
|
||||
return event.lost_samples;
|
||||
}
|
||||
|
||||
if (index.column() == Column::InnermostStackFrame) {
|
||||
return event.frames.last().symbol;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue