Add error logging when channel receives an invalid message
When an InputChannel receives an invalid message today, it produces a BAD_VALUE status. This status later causes the InputChannel to get completely closed. But the error messages today are only showing up when the channel debugging is on. Since the closure of an input channel is a pretty catastrophic failure, always log these messages. This could have helped identify the root cause of b/185015591 immediately. Sample logs after this change, and before the bug fix: E InputTransport: Received invalid TIMELINE: gpuCompletedTime = 245454055433239 presentTime = 245453214298812 E InputTransport: channel '1a77725 com.google.android.apps.nexuslauncher/com.google.android.apps.nexuslauncher.NexusLauncherActivity (server)' ~ received invalid message of size 32 E InputDispatcher: channel '1a77725 com.google.android.apps.nexuslauncher/com.google.android.apps.nexuslauncher.NexusLauncherActivity (server)' ~ Failed to receive finished signal. status=BAD_VALUE(-22) E InputDispatcher: channel '1a77725 com.google.android.apps.nexuslauncher/com.google.android.apps.nexuslauncher.NexusLauncherActivity (server)' ~ Channel is unrecoverably broken and will be disposed! Separately, ensure that the StructLayout_test is getting built for both 32-bit and 64-bit applications. This was missed in the last refactor of this test in https://googleplex-android-review.git.corp.google.com/c/platform/frameworks/native/+/1433165/1/libs/input/tests/Android.mk#b35 when the build files were getting converted from mk to bp. Also, remove the "-O0" option from StructLayout_test. The struct layout that we actually care about resides (and is getting built) in libinput. When libinput is being built, we do not specify "-O0". Therefore, we should compile StructLayout_test using the same compiler options as we use for libinput. Otherwise, these asserts are not representative of the real-world usage. Bug: 185015591 Test: atest libinput_tests Test: m StructLayout_test StructLayout_test_32 Change-Id: I854c829151636e0906fca1e3a3ac389e07980faf
Loading
Please register or sign in to comment