Fix device/google/trout for compiling against musl am: 0e33c98e48
Original change: https://android-review.googlesource.com/c/device/google/trout/+/1826117
Change-Id: Ibaf8312f006bf30b2604648ee9220c1bacfbfe5a
diff --git a/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/dumpstate_grpc_server.service b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/dumpstate_grpc_server.service
new file mode 100644
index 0000000..72289fb
--- /dev/null
+++ b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/dumpstate_grpc_server.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Android Dumpstate GRPC Server
+
+Wants=coqos-virtio-vsock.service
+After=coqos-virtio-vsock.service
+
+[Service]
+ExecStart=/usr/bin/dumpstate_grpc_server -server_addr vsock:2:9310
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/dumpstate_grpc_server.service b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/dumpstate_grpc_server.service
new file mode 120000
index 0000000..e2a37ae
--- /dev/null
+++ b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/dumpstate_grpc_server.service
@@ -0,0 +1 @@
+/etc/systemd/system/dumpstate_grpc_server.service
\ No newline at end of file
diff --git a/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/vehicle_hal_grpc_server.service b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/vehicle_hal_grpc_server.service
new file mode 120000
index 0000000..533ed97
--- /dev/null
+++ b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/multi-user.target.wants/vehicle_hal_grpc_server.service
@@ -0,0 +1 @@
+/etc/systemd/system/vehicle_hal_grpc_server.service
\ No newline at end of file
diff --git a/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/vehicle_hal_grpc_server.service b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/vehicle_hal_grpc_server.service
new file mode 100644
index 0000000..64d950f
--- /dev/null
+++ b/agl_services_build/yocto-layer/meta-google/recipes-trout/images/machine-image/sa81x5/google-overlay/etc/systemd/system/vehicle_hal_grpc_server.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Android Vehicle HAL GRPC Server
+
+Wants=coqos-virtio-vsock.service
+After=coqos-virtio-vsock.service
+
+[Service]
+ExecStart=/usr/bin/vehicle_hal_grpc_server -server_cid 2 -server_port 9210 -power_state_file /tmp/power_state_marker -power_state_socket /tmp/power_state_socket
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/hal/vehicle/2.0/Android.bp b/hal/vehicle/2.0/Android.bp
index e72a9ea..b4ba58b 100644
--- a/hal/vehicle/2.0/Android.bp
+++ b/hal/vehicle/2.0/Android.bp
@@ -148,7 +148,6 @@
vendor: true,
relative_install_path: "hw",
srcs: [
- "GrpcVehicleClient.cpp",
"VirtualizedVehicleService.cpp",
"WatchdogClient.cpp",
],
@@ -161,6 +160,7 @@
"libgrpc++",
],
static_libs: [
+ "android.hardware.automotive.vehicle@2.0-virtualization-client-lib",
"android.hardware.automotive.utils.vsockinfo",
"android.hardware.automotive.vehicle@2.0-manager-lib",
"android.hardware.automotive.vehicle@2.0-default-impl-lib",
diff --git a/hal/vehicle/2.0/GarageModeServerSideHandler.cpp b/hal/vehicle/2.0/GarageModeServerSideHandler.cpp
index b19b1df..60c36bf 100644
--- a/hal/vehicle/2.0/GarageModeServerSideHandler.cpp
+++ b/hal/vehicle/2.0/GarageModeServerSideHandler.cpp
@@ -146,19 +146,20 @@
return;
}
- int watchDescriptor = inotify_add_watch(inotifyFd, mPowerStateMarkerPath.c_str(), IN_MODIFY);
- if (watchDescriptor < 0) {
- LOG(ERROR) << __func__ << ": failed to watch file " << mPowerStateMarkerPath << " : "
- << strerror(errno);
- return;
- }
-
alignas(alignof(struct inotify_event)) char inotifyEventBuffer[4096] = {0};
[[maybe_unused]] struct inotify_event& inotifyEvent =
*reinterpret_cast<struct inotify_event*>(inotifyEventBuffer);
HandleNewPowerState();
while (!mShuttingDownFlag.load()) {
+ int watchDescriptor =
+ inotify_add_watch(inotifyFd, mPowerStateMarkerPath.c_str(), IN_MODIFY);
+ if (watchDescriptor < 0) {
+ LOG(ERROR) << __func__ << ": failed to watch file " << mPowerStateMarkerPath << " : "
+ << strerror(errno);
+ return;
+ }
+
if (!WaitForReadWithTimeout(inotifyFd, kFileStatusCheckPeriod)) {
continue;
}