summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Steven Moreland <smoreland@google.com> 2023-06-05 20:22:21 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2023-06-05 20:22:21 +0000
commit1ff12cff1dc157d57585c100bd323f77ddb5bb74 (patch)
treefd2301c967606afbc0c5c255ccf1dafcfa037658
parentf110de513b84763ef109644a4404bee25171b72e (diff)
parent9f250b0ca6fd99bd5943955de3211e05eaa59dbc (diff)
Merge "binderRpcTest: host requires vsock loopback"
-rw-r--r--libs/binder/tests/binderRpcTest.cpp10
-rw-r--r--libs/binder/tests/binderRpcTestService.cpp3
2 files changed, 11 insertions, 2 deletions
diff --git a/libs/binder/tests/binderRpcTest.cpp b/libs/binder/tests/binderRpcTest.cpp
index f88cfd6965..1ff1de4db8 100644
--- a/libs/binder/tests/binderRpcTest.cpp
+++ b/libs/binder/tests/binderRpcTest.cpp
@@ -1125,7 +1125,7 @@ INSTANTIATE_TEST_CASE_P(Trusty, BinderRpc,
::testing::Values(true), ::testing::Values(true)),
BinderRpc::PrintParamInfo);
#else // BINDER_RPC_TO_TRUSTY_TEST
-static bool testSupportVsockLoopback() {
+bool testSupportVsockLoopback() {
// We don't need to enable TLS to know if vsock is supported.
unsigned int vsockPort = allocateVsockPort();
@@ -1225,7 +1225,15 @@ static std::vector<SocketType> testSocketTypes(bool hasPreconnected = true) {
if (hasPreconnected) ret.push_back(SocketType::PRECONNECTED);
+#ifdef __BIONIC__
+ // Devices may not have vsock support. AVF tests will verify whether they do, but
+ // we can't require it due to old kernels for the time being.
static bool hasVsockLoopback = testSupportVsockLoopback();
+#else
+ // On host machines, we always assume we have vsock loopback. If we don't, the
+ // subsequent failures will be more clear than showing one now.
+ static bool hasVsockLoopback = true;
+#endif
if (hasVsockLoopback) {
ret.push_back(SocketType::VSOCK);
diff --git a/libs/binder/tests/binderRpcTestService.cpp b/libs/binder/tests/binderRpcTestService.cpp
index cb09a7fbab..7435f308d1 100644
--- a/libs/binder/tests/binderRpcTestService.cpp
+++ b/libs/binder/tests/binderRpcTestService.cpp
@@ -139,7 +139,8 @@ int main(int argc, char* argv[]) {
CHECK_EQ(OK, server->setupRawSocketServer(std::move(socketFd)));
break;
case SocketType::VSOCK:
- CHECK_EQ(OK, server->setupVsockServer(VMADDR_CID_LOCAL, serverConfig.vsockPort));
+ CHECK_EQ(OK, server->setupVsockServer(VMADDR_CID_LOCAL, serverConfig.vsockPort))
+ << "Need `sudo modprobe vsock_loopback`?";
break;
case SocketType::INET: {
CHECK_EQ(OK, server->setupInetServer(kLocalInetAddress, 0, &outPort));