From 09e621a7b1b417b47618e7d8bd71ebade73b9089 Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Mon, 26 Mar 2018 16:50:47 -0700 Subject: [PATCH] audiopolicy: increase binder command timeout for some commmands Extend timeout for SET_DEVICE_CONNECTION_STATE and HANDLE_DEVICE_CONFIG_CHANGE binder commmands in IAudioPolicyService.cpp while we investigate why BT A2DP device connection/disconnection can sometimes take more than 5 seconds. Bug: 74840091 Test: check that no timout occurs for A2DP headset connections Change-Id: I7dcba80059898ac1c73d580594d4956b4608ade0 --- media/libaudioclient/IAudioPolicyService.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/media/libaudioclient/IAudioPolicyService.cpp b/media/libaudioclient/IAudioPolicyService.cpp index 0b98502af8..e7b5102297 100644 --- a/media/libaudioclient/IAudioPolicyService.cpp +++ b/media/libaudioclient/IAudioPolicyService.cpp @@ -883,7 +883,20 @@ status_t BnAudioPolicyService::onTransact( break; } - TimeCheck check("IAudioPolicyService"); + // FIXME: extend timeout for SET_DEVICE_CONNECTION_STATE and HANDLE_DEVICE_CONFIG_CHANGE + // while we investigate why BT A2DP device connection/disconnection can sometimes + // take more than 5 seconds + uint32_t timeoutMs = TimeCheck::kDefaultTimeOutMs; + switch (code) { + case SET_DEVICE_CONNECTION_STATE: + case HANDLE_DEVICE_CONFIG_CHANGE: + timeoutMs *= 2; + break; + default: + break; + } + + TimeCheck check("IAudioPolicyService", timeoutMs); switch (code) { case SET_DEVICE_CONNECTION_STATE: {