diff options
author | 2024-12-05 00:19:18 +0000 | |
---|---|---|
committer | 2024-12-05 00:19:51 +0000 | |
commit | c8d5f1a4720bc2923aa398e713ad5da4f9ae2f86 (patch) | |
tree | 0be9810039c983d6602c72b83ab989edc325cd49 | |
parent | 1e1a07f0c3bb253e72e7f7540527f7b303c44585 (diff) |
binderLibTest: epoch->uptime
NTP time reset during test causes flakes.
Fixes: 368314472
Test: TH
Change-Id: I759113d19721936336b355e0c363c18e7c3adfa1
-rw-r--r-- | libs/binder/tests/binderLibTest.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/libs/binder/tests/binderLibTest.cpp b/libs/binder/tests/binderLibTest.cpp index ec2f50ca16..87026b2f15 100644 --- a/libs/binder/tests/binderLibTest.cpp +++ b/libs/binder/tests/binderLibTest.cpp @@ -43,6 +43,7 @@ #include <input/BlockingQueue.h> #include <processgroup/processgroup.h> #include <utils/Flattenable.h> +#include <utils/SystemClock.h> #include <linux/sched.h> #include <sys/epoll.h> @@ -1710,14 +1711,6 @@ TEST_F(BinderLibTest, ThreadPoolStarted) { EXPECT_TRUE(reply.readBool()); } -size_t epochMillis() { - using std::chrono::duration_cast; - using std::chrono::milliseconds; - using std::chrono::seconds; - using std::chrono::system_clock; - return duration_cast<milliseconds>(system_clock::now().time_since_epoch()).count(); -} - TEST_F(BinderLibTest, HangingServices) { Parcel data, reply; sp<IBinder> server = addServer(); @@ -1726,7 +1719,7 @@ TEST_F(BinderLibTest, HangingServices) { data.writeInt32(delay); // b/266537959 - must take before taking lock, since countdown is started in the remote // process there. - size_t epochMsBefore = epochMillis(); + int64_t timeBefore = uptimeMillis(); EXPECT_THAT(server->transact(BINDER_LIB_TEST_PROCESS_TEMPORARY_LOCK, data, &reply), NO_ERROR); std::vector<std::thread> ts; for (size_t i = 0; i < kKernelThreads + 1; i++) { @@ -1740,10 +1733,10 @@ TEST_F(BinderLibTest, HangingServices) { for (auto &t : ts) { t.join(); } - size_t epochMsAfter = epochMillis(); + int64_t timeAfter = uptimeMillis(); // deadlock occurred and threads only finished after 1s passed. - EXPECT_GE(epochMsAfter, epochMsBefore + delay); + EXPECT_GE(timeAfter, timeBefore + delay); } TEST_F(BinderLibTest, BinderProxyCount) { |