diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-11-29 00:19:39 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-11-29 00:19:39 +0000 |
commit | 224900dd6ea4ab09d23840d3af7081d70d205f23 (patch) | |
tree | e6a0a3cbd3c04727dd6f5bd6e4a7c8ff9c2be029 | |
parent | afe5a2694b9998951e91b4836c4702709c1e9a35 (diff) | |
parent | 64b51ff82f4d0a92e5405e017ed3529100d6cdfc (diff) | |
download | common-224900dd6ea4ab09d23840d3af7081d70d205f23.tar.gz |
Snap for 11151698 from 64b51ff82f4d0a92e5405e017ed3529100d6cdfc to 24Q1-release
Change-Id: I4ff2cc37bc45be2ce53e47460b99c77835ac296c
-rw-r--r-- | libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp | 10 | ||||
-rw-r--r-- | libhwc2.1/libvrr/VariableRefreshRateController.cpp | 11 |
2 files changed, 12 insertions, 9 deletions
diff --git a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp index eebe104..b982e05 100644 --- a/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp +++ b/libhwc2.1/libdisplayinterface/ExynosDisplayDrmInterface.cpp @@ -1027,20 +1027,20 @@ int32_t ExynosDisplayDrmInterface::getDisplayConfigs( if (!outConfigs) { bool isVrrApiSupported = mExynosDisplay->mDevice->isVrrApiSupported(); bool useVrrConfigs = mIsVrrModeSupported && isVrrApiSupported; - ALOGI("Select Vrr Config: composer interface compatibility = %s, composer hardware " - "Compatibility = %s, use Vrr config = %s", - isVrrApiSupported ? "true" : "false", mIsVrrModeSupported ? "true" : "false", - useVrrConfigs ? "true" : "false"); int ret = mDrmConnector->UpdateModes(useVrrConfigs); if (ret < 0) { ALOGE("Failed to update display modes %d", ret); return HWC2_ERROR_BAD_DISPLAY; } - if (ret == 0) { // no need to update mExynosDisplay->mDisplayConfigs goto no_mode_changes; } + ALOGI("Select Vrr Config for display %s: composer interface compatibility = %s, display " + "hardware " + "Compatibility = %s, use Vrr config = %s", + mExynosDisplay->mDisplayName.c_str(), isVrrApiSupported ? "true" : "false", + mIsVrrModeSupported ? "true" : "false", useVrrConfigs ? "true" : "false"); if (mDrmConnector->state() == DRM_MODE_CONNECTED) { /* diff --git a/libhwc2.1/libvrr/VariableRefreshRateController.cpp b/libhwc2.1/libvrr/VariableRefreshRateController.cpp index f7ef5a9..8f0af10 100644 --- a/libhwc2.1/libvrr/VariableRefreshRateController.cpp +++ b/libhwc2.1/libvrr/VariableRefreshRateController.cpp @@ -77,7 +77,7 @@ VariableRefreshRateController::~VariableRefreshRateController() { const std::lock_guard<std::mutex> lock(mMutex); if (mLastPresentFence.has_value()) { if (close(mLastPresentFence.value())) { - LOG(ERROR) << "VrrController:: close fence file failed, errno = " << errno; + LOG(ERROR) << "VrrController: close fence file failed, errno = " << errno; } mLastPresentFence = std::nullopt; } @@ -105,7 +105,7 @@ void VariableRefreshRateController::reset() { dropEventLocked(); if (mLastPresentFence.has_value()) { if (close(mLastPresentFence.value())) { - LOG(ERROR) << "VrrController:: close fence file failed, errno = " << errno; + LOG(ERROR) << "VrrController: close fence file failed, errno = " << errno; } mLastPresentFence = std::nullopt; } @@ -166,6 +166,9 @@ void VariableRefreshRateController::stopThread() { } void VariableRefreshRateController::onPresent(int fence) { + if (fence < 0) { + return; + } ATRACE_CALL(); { const std::lock_guard<std::mutex> lock(mMutex); @@ -242,7 +245,7 @@ void VariableRefreshRateController::updateVsyncHistory() { // Execute the following logic unlocked to enhance performance. int64_t lastSignalTime = getLastFenceSignalTimeUnlocked(fence); if (close(fence)) { - LOG(ERROR) << "VrrController:: close fence file failed, errno = " << errno; + LOG(ERROR) << "VrrController: close fence file failed, errno = " << errno; return; } else if (lastSignalTime == SIGNAL_TIME_PENDING || lastSignalTime == SIGNAL_TIME_INVALID) { return; @@ -329,7 +332,7 @@ int64_t VariableRefreshRateController::getLastFenceSignalTimeUnlocked(int fd) { if (finfo->status != 1) { const auto status = finfo->status; if (status < 0) { - LOG(ERROR) << "VrrController:: sync_file_info contains an error: " << status; + LOG(ERROR) << "VrrController: sync_file_info contains an error: " << status; } sync_file_info_free(finfo); return status < 0 ? SIGNAL_TIME_INVALID : SIGNAL_TIME_PENDING; |