Skip to content
Commit b3c3cae1 authored by Yohei Yukawa's avatar Yohei Yukawa
Browse files

IMMS#dump() should do OOP dumps only for normal prioirty dump

This CL reworks our previous CL [1], which entirely moved IMMS dump
into critical section in bugreport as a side effect while achieving
Bug 167948910.

What's unexpected in that CL is that InputMethodManagerService#dump()
also tries to extract data from InputMethodService process and IME
client process by using Binder IPC.  Unfortunately such operations
aren't guaranteed to complete within the given timeout for critical
dump, which is currently set to 500msec.  As a result, we sometimes
completely lose the log from those two processes when they take some
time to complete.

With this CL, InputMethodManagerService#dump() will be registered for
both critical dump and normal dump, and those potentially expensive
out-of-process dumps will be performed only for normal dump phase like
we did before that CL.

 [1]: Ie87eb8423e2bb70f28c330983d45b95e2e07062d
      ac24994a

Fix: 177462676
Test: Manually verified that bugreport contains IMMS section of:
  * Critical text dump without dump from IMS and IME client.
  * Critical proto dump.
  * Normal text dump with dump from IMS and IME client.
  * Normal proto dump.
Change-Id: I3828f8eab5739939edabccaa5c76320567f9d7c1
parent 57355699
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment