summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2023-04-18 00:26:35 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-04-18 00:26:35 +0000
commit044891f18e118b858191f946e988853c923c5e2a (patch)
tree710ed2f70d2d8b2fec91cb1e2e4c44daf13eaf62
parent1cdcde8e9ac7fb83122f7a46d88942ede3469388 (diff)
parentc7c6e0c3de9af20491338486162b9d1ec91a062a (diff)
downloadandroid-clat-044891f18e118b858191f946e988853c923c5e2a.tar.gz
clatd: only wait 15s for SIGTERM during shutdown am: 9c05f75eaa am: 7d96bf02a1 am: c7c6e0c3de
Original change: https://android-review.googlesource.com/c/platform/external/android-clat/+/2535679 Change-Id: Idc02c7efd87441f1aade2431dadd55c81ca903ef Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--main.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/main.c b/main.c
index 11da65b..f888041 100644
--- a/main.c
+++ b/main.c
@@ -194,8 +194,12 @@ int main(int argc, char **argv) {
if (running) {
logmsg(ANDROID_LOG_INFO, "Clatd on %s waiting for SIGTERM", uplink_interface);
- while (running) sleep(60);
- logmsg(ANDROID_LOG_INFO, "Clatd on %s received SIGTERM", uplink_interface);
+ // let's give higher level java code 15 seconds to kill us,
+ // but eventually terminate anyway, in case system server forgets about us...
+ // sleep() should be interrupted by SIGTERM, the handler should clear running
+ sleep(15);
+ logmsg(ANDROID_LOG_INFO, "Clatd on %s %s SIGTERM", uplink_interface,
+ running ? "timed out waiting for" : "received");
} else {
logmsg(ANDROID_LOG_INFO, "Clatd on %s already received SIGTERM", uplink_interface);
}