summaryrefslogtreecommitdiff
path: root/libs/androidfw/ResourceTimer.cpp
diff options
context:
space:
mode:
author Pinyao Ting <pinyaoting@google.com> 2022-09-01 11:19:31 -0700
committer Pinyao Ting <pinyaoting@google.com> 2022-09-01 11:19:31 -0700
commit30fed8c21b4954f9c3f92b665635b950ea737473 (patch)
tree148a6adfe6bafa2d81c14ff172e7c983c0a5dccc /libs/androidfw/ResourceTimer.cpp
parentb4c3a0682041b1dad10b0fb3e19b09ff1af7d01a (diff)
Fixes an edge case which leads to deadlock in ShortcutService
ShortcutService uses two levels of synchronization lock, one on the service-level, another on package-level. To prevent deadlock, we made an implicit rule that a thread can never acquire service-level lock if they were holding onto package-level lock. An edge case emerges when we ran into "what a terrible failure", service-level lock was acquired to increase wtf counter and capture stack traces, regardless of the implicit rule mentioned above. This CL solves the deadlock by using a separate lock in wtf. Bug: 243880581 Test: manual Change-Id: I136ed4018b07ae17591207c5c855e9d34082ae77
Diffstat (limited to 'libs/androidfw/ResourceTimer.cpp')
0 files changed, 0 insertions, 0 deletions