Merge "Revert "lshal: do not pthread_kill"" into main am: ef2e1643f5 am: 584e277bcf
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2863707
Change-Id: I6708a56df868ef4b9b65962bf7df441b799a2ff6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/cmds/lshal/Timeout.h b/cmds/lshal/Timeout.h
index 012a5d5..e8d22d9 100644
--- a/cmds/lshal/Timeout.h
+++ b/cmds/lshal/Timeout.h
@@ -72,14 +72,10 @@
return false;
}
bool success = state.wait(now + delay);
- if (success) {
- pthread_join(thread, nullptr);
- } else {
- // b/311143089: Abandon this background thread. Resources for a detached
- // thread are cleaned up when it is terminated. If the background thread
- // is stalled, it will be terminated when returning from main().
- pthread_detach(thread);
+ if (!success) {
+ pthread_kill(thread, SIGINT);
}
+ pthread_join(thread, nullptr);
return success;
}
diff --git a/cmds/lshal/main.cpp b/cmds/lshal/main.cpp
index a44f467..366c938 100644
--- a/cmds/lshal/main.cpp
+++ b/cmds/lshal/main.cpp
@@ -18,6 +18,5 @@
int main(int argc, char **argv) {
using namespace ::android::lshal;
- // Background pthreads from timeout() are destroyed upon returning from main().
return Lshal{}.main(Arg{argc, argv});
}