Merge "Emit log when overdue watchdog clears" into main am: 3073c81975
Original change: https://android-review.googlesource.com/c/platform/system/security/+/3184616
Change-Id: I1da519de707aa94144a10fe98e7b3426666f6f63
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/keystore2/watchdog/src/lib.rs b/keystore2/watchdog/src/lib.rs
index ff05783..b4a1e0f 100644
--- a/keystore2/watchdog/src/lib.rs
+++ b/keystore2/watchdog/src/lib.rs
@@ -193,7 +193,30 @@
}
fn disarm(&mut self, index: Index) {
- self.records.remove(&index);
+ let result = self.records.remove(&index);
+ if let Some(record) = result {
+ let now = Instant::now();
+ let timeout_left = record.deadline.saturating_duration_since(now);
+ if timeout_left == Duration::new(0, 0) {
+ match &record.context {
+ Some(ctx) => log::info!(
+ "Watchdog complete for: {:?} {} Pending: {:?} Overdue {:?} for {:?}",
+ index.tid,
+ index.id,
+ record.started.elapsed(),
+ record.deadline.elapsed(),
+ ctx
+ ),
+ None => log::info!(
+ "Watchdog complete for: {:?} {} Pending: {:?} Overdue {:?}",
+ index.tid,
+ index.id,
+ record.started.elapsed(),
+ record.deadline.elapsed()
+ ),
+ }
+ }
+ }
}
fn arm(&mut self, index: Index, record: Record) {