Create a wrapper for atrace macros
Create a SF specific macro to call into atrace. This will make the
switch to perfetto for capturing atrace tags easier.
Flag: EXEMPT refactor
Bug: 349905670
Test: perfetto
Change-Id: I4d046d837f52ef78b08e3c97556f2eddb06232dd
diff --git a/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp b/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
index 362ab9c..d50a0bc 100644
--- a/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
+++ b/services/surfaceflinger/DisplayHardware/AidlComposerHal.cpp
@@ -25,9 +25,8 @@
#include <android/binder_ibinder_platform.h>
#include <android/binder_manager.h>
#include <common/FlagManager.h>
-#include <gui/TraceUtils.h>
+#include <common/trace.h>
#include <log/log.h>
-#include <utils/Trace.h>
#include <aidl/android/hardware/graphics/composer3/BnComposerCallback.h>
@@ -677,7 +676,7 @@
Error AidlComposer::presentDisplay(Display display, int* outPresentFence) {
const auto displayId = translate<int64_t>(display);
- ATRACE_FORMAT("HwcPresentDisplay %" PRId64, displayId);
+ SFTRACE_FORMAT("HwcPresentDisplay %" PRId64, displayId);
Error error = Error::NONE;
mMutex.lock_shared();
@@ -810,7 +809,7 @@
int32_t frameIntervalNs, uint32_t* outNumTypes,
uint32_t* outNumRequests) {
const auto displayId = translate<int64_t>(display);
- ATRACE_FORMAT("HwcValidateDisplay %" PRId64, displayId);
+ SFTRACE_FORMAT("HwcValidateDisplay %" PRId64, displayId);
Error error = Error::NONE;
mMutex.lock_shared();
@@ -840,7 +839,7 @@
uint32_t* outNumRequests, int* outPresentFence,
uint32_t* state) {
const auto displayId = translate<int64_t>(display);
- ATRACE_FORMAT("HwcPresentOrValidateDisplay %" PRId64, displayId);
+ SFTRACE_FORMAT("HwcPresentOrValidateDisplay %" PRId64, displayId);
Error error = Error::NONE;
mMutex.lock_shared();
diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
index 3d285a8..73fa855 100644
--- a/services/surfaceflinger/DisplayHardware/HWComposer.cpp
+++ b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
@@ -28,16 +28,15 @@
#include "HWComposer.h"
#include <android-base/properties.h>
+#include <common/trace.h>
#include <compositionengine/Output.h>
#include <compositionengine/OutputLayer.h>
#include <compositionengine/impl/OutputLayerCompositionState.h>
#include <ftl/concat.h>
-#include <gui/TraceUtils.h>
#include <log/log.h>
#include <ui/DebugUtils.h>
#include <ui/GraphicBuffer.h>
#include <utils/Errors.h>
-#include <utils/Trace.h>
#include "../Layer.h" // needed only for debugging
#include "../SurfaceFlingerProperties.h"
@@ -178,8 +177,8 @@
displayData.lastPresentTimestamp = timestamp;
}
- ATRACE_INT(ftl::Concat("HW_VSYNC_", displayIdOpt->value).c_str(),
- displayData.vsyncTraceToggle);
+ SFTRACE_INT(ftl::Concat("HW_VSYNC_", displayIdOpt->value).c_str(),
+ displayData.vsyncTraceToggle);
displayData.vsyncTraceToggle = !displayData.vsyncTraceToggle;
return displayIdOpt;
@@ -428,14 +427,14 @@
return;
}
- ATRACE_CALL();
+ SFTRACE_CALL();
auto error = displayData.hwcDisplay->setVsyncEnabled(enabled);
RETURN_IF_HWC_ERROR(error, displayId);
displayData.vsyncEnabled = enabled;
- ATRACE_INT(ftl::Concat("HW_VSYNC_ON_", displayId.value).c_str(),
- enabled == hal::Vsync::ENABLE ? 1 : 0);
+ SFTRACE_INT(ftl::Concat("HW_VSYNC_ON_", displayId.value).c_str(),
+ enabled == hal::Vsync::ENABLE ? 1 : 0);
}
status_t HWComposer::setClientTarget(HalDisplayId displayId, uint32_t slot,
@@ -455,7 +454,7 @@
std::optional<std::chrono::steady_clock::time_point> earliestPresentTime,
nsecs_t expectedPresentTime, Fps frameInterval,
std::optional<android::HWComposer::DeviceRequestedChanges>* outChanges) {
- ATRACE_CALL();
+ SFTRACE_CALL();
RETURN_IF_INVALID_DISPLAY(displayId, BAD_INDEX);
@@ -493,7 +492,7 @@
}();
displayData.validateWasSkipped = false;
- ATRACE_FORMAT("NextFrameInterval %d_Hz", frameInterval.getIntValue());
+ SFTRACE_FORMAT("NextFrameInterval %d_Hz", frameInterval.getIntValue());
if (canSkipValidate) {
sp<Fence> outPresentFence = Fence::NO_FENCE;
uint32_t state = UINT32_MAX;
@@ -568,7 +567,7 @@
status_t HWComposer::presentAndGetReleaseFences(
HalDisplayId displayId,
std::optional<std::chrono::steady_clock::time_point> earliestPresentTime) {
- ATRACE_CALL();
+ SFTRACE_CALL();
RETURN_IF_INVALID_DISPLAY(displayId, BAD_INDEX);
@@ -584,7 +583,7 @@
}
if (earliestPresentTime) {
- ATRACE_NAME("wait for earliest present time");
+ SFTRACE_NAME("wait for earliest present time");
std::this_thread::sleep_until(*earliestPresentTime);
}
@@ -897,9 +896,9 @@
status_t HWComposer::notifyExpectedPresent(PhysicalDisplayId displayId,
TimePoint expectedPresentTime, Fps frameInterval) {
RETURN_IF_INVALID_DISPLAY(displayId, BAD_INDEX);
- ATRACE_FORMAT("%s ExpectedPresentTime in %.2fms frameInterval %.2fms", __func__,
- ticks<std::milli, float>(expectedPresentTime - TimePoint::now()),
- ticks<std::milli, float>(Duration::fromNs(frameInterval.getPeriodNsecs())));
+ SFTRACE_FORMAT("%s ExpectedPresentTime in %.2fms frameInterval %.2fms", __func__,
+ ticks<std::milli, float>(expectedPresentTime - TimePoint::now()),
+ ticks<std::milli, float>(Duration::fromNs(frameInterval.getPeriodNsecs())));
const auto error = mComposer->notifyExpectedPresent(mDisplayData[displayId].hwcDisplay->getId(),
expectedPresentTime.ns(),
frameInterval.getPeriodNsecs());
@@ -1149,7 +1148,7 @@
status_t HWComposer::setIdleTimerEnabled(PhysicalDisplayId displayId,
std::chrono::milliseconds timeout) {
- ATRACE_CALL();
+ SFTRACE_CALL();
RETURN_IF_INVALID_DISPLAY(displayId, BAD_INDEX);
const auto error = mDisplayData[displayId].hwcDisplay->setIdleTimerEnabled(timeout);
if (error == hal::Error::UNSUPPORTED) {
@@ -1168,7 +1167,7 @@
}
Hwc2::AidlTransform HWComposer::getPhysicalDisplayOrientation(PhysicalDisplayId displayId) const {
- ATRACE_CALL();
+ SFTRACE_CALL();
RETURN_IF_INVALID_DISPLAY(displayId, Hwc2::AidlTransform::NONE);
Hwc2::AidlTransform outTransform;
const auto& hwcDisplay = mDisplayData.at(displayId).hwcDisplay;
diff --git a/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp b/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
index 12ab2c2..c5008d8 100644
--- a/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
+++ b/services/surfaceflinger/DisplayHardware/HidlComposerHal.cpp
@@ -27,11 +27,11 @@
#include <SurfaceFlingerProperties.h>
#include <aidl/android/hardware/graphics/common/DisplayHotplugEvent.h>
#include <android/binder_manager.h>
+#include <common/trace.h>
#include <composer-command-buffer/2.2/ComposerCommandBuffer.h>
#include <hidl/HidlTransportSupport.h>
#include <hidl/HidlTransportUtils.h>
#include <log/log.h>
-#include <utils/Trace.h>
#include "HWC2.h"
#include "Hal.h"
@@ -588,7 +588,7 @@
}
Error HidlComposer::presentDisplay(Display display, int* outPresentFence) {
- ATRACE_NAME("HwcPresentDisplay");
+ SFTRACE_NAME("HwcPresentDisplay");
mWriter.selectDisplay(display);
mWriter.presentDisplay();
@@ -676,7 +676,7 @@
Error HidlComposer::validateDisplay(Display display, nsecs_t /*expectedPresentTime*/,
int32_t /*frameIntervalNs*/, uint32_t* outNumTypes,
uint32_t* outNumRequests) {
- ATRACE_NAME("HwcValidateDisplay");
+ SFTRACE_NAME("HwcValidateDisplay");
mWriter.selectDisplay(display);
mWriter.validateDisplay();
@@ -694,7 +694,7 @@
int32_t /*frameIntervalNs*/, uint32_t* outNumTypes,
uint32_t* outNumRequests, int* outPresentFence,
uint32_t* state) {
- ATRACE_NAME("HwcPresentOrValidateDisplay");
+ SFTRACE_NAME("HwcPresentOrValidateDisplay");
mWriter.selectDisplay(display);
mWriter.presentOrvalidateDisplay();
diff --git a/services/surfaceflinger/DisplayHardware/PowerAdvisor.cpp b/services/surfaceflinger/DisplayHardware/PowerAdvisor.cpp
index 6c1a813..da56014 100644
--- a/services/surfaceflinger/DisplayHardware/PowerAdvisor.cpp
+++ b/services/surfaceflinger/DisplayHardware/PowerAdvisor.cpp
@@ -27,9 +27,9 @@
#include <optional>
#include <android-base/properties.h>
+#include <common/trace.h>
#include <utils/Log.h>
#include <utils/Mutex.h>
-#include <utils/Trace.h>
#include <binder/IServiceManager.h>
@@ -74,9 +74,9 @@
void traceExpensiveRendering(bool enabled) {
if (enabled) {
- ATRACE_ASYNC_BEGIN("ExpensiveRendering", 0);
+ SFTRACE_ASYNC_BEGIN("ExpensiveRendering", 0);
} else {
- ATRACE_ASYNC_END("ExpensiveRendering", 0);
+ SFTRACE_ASYNC_END("ExpensiveRendering", 0);
}
}
@@ -210,7 +210,7 @@
ALOGV("Power hint session is not enabled, skip sending session hint");
return;
}
- ATRACE_CALL();
+ SFTRACE_CALL();
if (sTraceHintSessionData) ATRACE_INT("Session hint", static_cast<int>(hint));
{
std::scoped_lock lock(mHintSessionMutex);
@@ -295,7 +295,7 @@
ALOGV("Power hint session is not enabled, skipping target update");
return;
}
- ATRACE_CALL();
+ SFTRACE_CALL();
{
mTargetDuration = targetDuration;
if (sTraceHintSessionData) ATRACE_INT64("Time target", targetDuration.ns());
@@ -324,7 +324,7 @@
ALOGV("Actual work duration power hint cannot be sent, skipping");
return;
}
- ATRACE_CALL();
+ SFTRACE_CALL();
std::optional<WorkDuration> actualDuration = estimateWorkDuration();
if (!actualDuration.has_value() || actualDuration->durationNanos < 0) {
ALOGV("Failed to send actual work duration, skipping");
@@ -332,16 +332,16 @@
}
actualDuration->durationNanos += sTargetSafetyMargin.ns();
if (sTraceHintSessionData) {
- ATRACE_INT64("Measured duration", actualDuration->durationNanos);
- ATRACE_INT64("Target error term", actualDuration->durationNanos - mTargetDuration.ns());
- ATRACE_INT64("Reported duration", actualDuration->durationNanos);
+ SFTRACE_INT64("Measured duration", actualDuration->durationNanos);
+ SFTRACE_INT64("Target error term", actualDuration->durationNanos - mTargetDuration.ns());
+ SFTRACE_INT64("Reported duration", actualDuration->durationNanos);
if (supportsGpuReporting()) {
- ATRACE_INT64("Reported cpu duration", actualDuration->cpuDurationNanos);
- ATRACE_INT64("Reported gpu duration", actualDuration->gpuDurationNanos);
+ SFTRACE_INT64("Reported cpu duration", actualDuration->cpuDurationNanos);
+ SFTRACE_INT64("Reported gpu duration", actualDuration->gpuDurationNanos);
}
- ATRACE_INT64("Reported target", mLastTargetDurationSent.ns());
- ATRACE_INT64("Reported target error term",
- actualDuration->durationNanos - mLastTargetDurationSent.ns());
+ SFTRACE_INT64("Reported target", mLastTargetDurationSent.ns());
+ SFTRACE_INT64("Reported target error term",
+ actualDuration->durationNanos - mLastTargetDurationSent.ns());
}
ALOGV("Sending actual work duration of: %" PRId64 " with cpu: %" PRId64 " and gpu: %" PRId64
@@ -664,9 +664,9 @@
.gpuDurationNanos = supportsGpuReporting() ? estimatedGpuDuration.ns() : 0,
};
if (sTraceHintSessionData) {
- ATRACE_INT64("Idle duration", idleDuration.ns());
- ATRACE_INT64("Total duration", totalDuration.ns());
- ATRACE_INT64("Flinger duration", flingerDuration.ns());
+ SFTRACE_INT64("Idle duration", idleDuration.ns());
+ SFTRACE_INT64("Total duration", totalDuration.ns());
+ SFTRACE_INT64("Flinger duration", flingerDuration.ns());
}
return std::make_optional(duration);
}