Expand jank classification
This change expands the jank classification to include new cases like
BufferStuffing and SurfaceFlingerScheduling while also updating the jank
classification logic to be more accurate.
This change also refactors SurfaceFrame by removing the abstraction
class for SurfaceFrame since its now being polled by the layers as well.
Bug: 169890654
Test: libsurfaceflinger_unittest
Change-Id: Ica8ab1d1e4bf2052fffc6247fc5820d96ae8445d
diff --git a/services/surfaceflinger/SurfaceFlingerDefaultFactory.cpp b/services/surfaceflinger/SurfaceFlingerDefaultFactory.cpp
index bc487ac..0d3d9e1 100644
--- a/services/surfaceflinger/SurfaceFlingerDefaultFactory.cpp
+++ b/services/surfaceflinger/SurfaceFlingerDefaultFactory.cpp
@@ -136,8 +136,8 @@
}
std::unique_ptr<frametimeline::FrameTimeline> DefaultFactory::createFrameTimeline(
- std::shared_ptr<TimeStats> timeStats) {
- return std::make_unique<frametimeline::impl::FrameTimeline>(timeStats);
+ std::shared_ptr<TimeStats> timeStats, pid_t surfaceFlingerPid) {
+ return std::make_unique<frametimeline::impl::FrameTimeline>(timeStats, surfaceFlingerPid);
}
} // namespace android::surfaceflinger