Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 81c9e603 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "fix VtsHalGraphicsComposerV2_2TargetTest timeout failed"

parents c07fb30b ada2850c
Loading
Loading
Loading
Loading
+12 −5
Original line number Original line Diff line number Diff line
@@ -30,7 +30,7 @@ void GraphicsComposerCallback::setVsyncAllowed(bool allowed) {


std::vector<Display> GraphicsComposerCallback::getDisplays() const {
std::vector<Display> GraphicsComposerCallback::getDisplays() const {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);
    return std::vector<Display>(mDisplays.begin(), mDisplays.end());
    return mDisplays;
}
}


int GraphicsComposerCallback::getInvalidHotplugCount() const {
int GraphicsComposerCallback::getInvalidHotplugCount() const {
@@ -51,12 +51,17 @@ int GraphicsComposerCallback::getInvalidVsyncCount() const {
Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection connection) {
Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection connection) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (connection == Connection::CONNECTED) {
    if (connection == Connection::CONNECTED) {
        if (!mDisplays.insert(display).second) {
        if (it == mDisplays.end()) {
            mDisplays.push_back(display);
        } else {
            mInvalidHotplugCount++;
            mInvalidHotplugCount++;
        }
        }
    } else if (connection == Connection::DISCONNECTED) {
    } else if (connection == Connection::DISCONNECTED) {
        if (!mDisplays.erase(display)) {
        if (it != mDisplays.end()) {
            mDisplays.erase(it);
        } else {
            mInvalidHotplugCount++;
            mInvalidHotplugCount++;
        }
        }
    }
    }
@@ -67,7 +72,8 @@ Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection con
Return<void> GraphicsComposerCallback::onRefresh(Display display) {
Return<void> GraphicsComposerCallback::onRefresh(Display display) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    if (mDisplays.count(display) == 0) {
    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (it == mDisplays.end()) {
        mInvalidRefreshCount++;
        mInvalidRefreshCount++;
    }
    }


@@ -77,7 +83,8 @@ Return<void> GraphicsComposerCallback::onRefresh(Display display) {
Return<void> GraphicsComposerCallback::onVsync(Display display, int64_t) {
Return<void> GraphicsComposerCallback::onVsync(Display display, int64_t) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    if (!mVsyncAllowed || mDisplays.count(display) == 0) {
    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (!mVsyncAllowed || it == mDisplays.end()) {
        mInvalidVsyncCount++;
        mInvalidVsyncCount++;
    }
    }


+2 −2
Original line number Original line Diff line number Diff line
@@ -19,7 +19,7 @@
#include <android/hardware/graphics/composer/2.1/IComposerCallback.h>
#include <android/hardware/graphics/composer/2.1/IComposerCallback.h>


#include <mutex>
#include <mutex>
#include <unordered_set>
#include <vector>


namespace android {
namespace android {
namespace hardware {
namespace hardware {
@@ -48,7 +48,7 @@ class GraphicsComposerCallback : public IComposerCallback {


    mutable std::mutex mMutex;
    mutable std::mutex mMutex;
    // the set of all currently connected displays
    // the set of all currently connected displays
    std::unordered_set<Display> mDisplays;
    std::vector<Display> mDisplays;
    // true only when vsync is enabled
    // true only when vsync is enabled
    bool mVsyncAllowed = true;
    bool mVsyncAllowed = true;


+15 −7
Original line number Original line Diff line number Diff line
@@ -25,7 +25,7 @@ void GraphicsComposerCallback::setVsyncAllowed(bool allowed) {


std::vector<Display> GraphicsComposerCallback::getDisplays() const {
std::vector<Display> GraphicsComposerCallback::getDisplays() const {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);
    return std::vector<Display>(mDisplays.begin(), mDisplays.end());
    return mDisplays;
}
}


int32_t GraphicsComposerCallback::getInvalidHotplugCount() const {
int32_t GraphicsComposerCallback::getInvalidHotplugCount() const {
@@ -71,12 +71,17 @@ GraphicsComposerCallback::takeLastVsyncPeriodChangeTimeline() {
Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection connection) {
Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection connection) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (connection == Connection::CONNECTED) {
    if (connection == Connection::CONNECTED) {
        if (!mDisplays.insert(display).second) {
        if (it == mDisplays.end()) {
            mDisplays.push_back(display);
        } else {
            mInvalidHotplugCount++;
            mInvalidHotplugCount++;
        }
        }
    } else if (connection == Connection::DISCONNECTED) {
    } else if (connection == Connection::DISCONNECTED) {
        if (!mDisplays.erase(display)) {
        if (it != mDisplays.end()) {
            mDisplays.erase(it);
        } else {
            mInvalidHotplugCount++;
            mInvalidHotplugCount++;
        }
        }
    }
    }
@@ -87,7 +92,8 @@ Return<void> GraphicsComposerCallback::onHotplug(Display display, Connection con
Return<void> GraphicsComposerCallback::onRefresh(Display display) {
Return<void> GraphicsComposerCallback::onRefresh(Display display) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    if (mDisplays.count(display) == 0) {
    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (it == mDisplays.end()) {
        mInvalidRefreshCount++;
        mInvalidRefreshCount++;
    }
    }


@@ -106,7 +112,8 @@ Return<void> GraphicsComposerCallback::onVsync(Display, int64_t) {
Return<void> GraphicsComposerCallback::onVsync_2_4(Display display, int64_t, VsyncPeriodNanos) {
Return<void> GraphicsComposerCallback::onVsync_2_4(Display display, int64_t, VsyncPeriodNanos) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    if (!mVsyncAllowed || mDisplays.count(display) == 0) {
    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (!mVsyncAllowed || it == mDisplays.end()) {
        mInvalidVsync_2_4Count++;
        mInvalidVsync_2_4Count++;
    }
    }


@@ -117,7 +124,8 @@ Return<void> GraphicsComposerCallback::onVsyncPeriodTimingChanged(
        Display display, const VsyncPeriodChangeTimeline& updatedTimeline) {
        Display display, const VsyncPeriodChangeTimeline& updatedTimeline) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    if (mDisplays.count(display) == 0) {
    auto it = std::find(mDisplays.begin(), mDisplays.end(), display);
    if (it == mDisplays.end()) {
        mInvalidVsyncPeriodChangeCount++;
        mInvalidVsyncPeriodChangeCount++;
    }
    }


+2 −2
Original line number Original line Diff line number Diff line
@@ -18,7 +18,7 @@
#include <android/hardware/graphics/composer/2.4/IComposerCallback.h>
#include <android/hardware/graphics/composer/2.4/IComposerCallback.h>


#include <mutex>
#include <mutex>
#include <unordered_set>
#include <vector>


namespace android::hardware::graphics::composer::V2_4::vts {
namespace android::hardware::graphics::composer::V2_4::vts {


@@ -56,7 +56,7 @@ class GraphicsComposerCallback : public IComposerCallback {


    mutable std::mutex mMutex;
    mutable std::mutex mMutex;
    // the set of all currently connected displays
    // the set of all currently connected displays
    std::unordered_set<Display> mDisplays;
    std::vector<Display> mDisplays;
    // true only when vsync is enabled
    // true only when vsync is enabled
    bool mVsyncAllowed = true;
    bool mVsyncAllowed = true;