From 65373697ef2a742270fc91365f70db04bfcbb94e Mon Sep 17 00:00:00 2001 From: l30052684 Date: Wed, 26 Jun 2024 18:08:41 +0800 Subject: [PATCH] fix OS_PaDaemon thread priority Signed-off-by: l30052684 Change-Id: I4b4b617f3c8e32229208a7b3ccaad2c536000577 --- services/audio_service/server/include/audio_server.h | 1 + services/audio_service/server/src/audio_server.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/services/audio_service/server/include/audio_server.h b/services/audio_service/server/include/audio_server.h index 162338a57b..fcddd34983 100644 --- a/services/audio_service/server/include/audio_server.h +++ b/services/audio_service/server/include/audio_server.h @@ -175,6 +175,7 @@ private: static constexpr int32_t MEDIA_SERVICE_UID = 1013; static constexpr int32_t MAX_VOLUME = 15; static constexpr int32_t MIN_VOLUME = 0; + static uint32_t paDaemonTid_; static std::unordered_map AudioStreamVolumeMap; static std::map audioParameters; static std::unordered_map>> audioParameterKeys; diff --git a/services/audio_service/server/src/audio_server.cpp b/services/audio_service/server/src/audio_server.cpp index 9e60b3b510..28f5f141fd 100644 --- a/services/audio_service/server/src/audio_server.cpp +++ b/services/audio_service/server/src/audio_server.cpp @@ -61,6 +61,7 @@ using namespace std; namespace OHOS { namespace AudioStandard { +uint32_t AudioServer::paDaemonTid_; std::map AudioServer::audioParameters; std::unordered_map>> AudioServer::audioParameterKeys; const string DEFAULT_COOKIE_PATH = "/data/data/.pulse_dir/state/cookie"; @@ -229,7 +230,7 @@ void *AudioServer::paDaemonThread(void *arg) char *argv[] = { (char*)"pulseaudio", }; - + paDaemonTid_ = gettid(); AUDIO_INFO_LOG("Calling ohos_pa_main\n"); ohos_pa_main(PA_ARG_COUNT, argv); AUDIO_INFO_LOG("Exiting ohos_pa_main\n"); @@ -270,6 +271,7 @@ void AudioServer::OnStart() WriteServiceStartupError(); } AddSystemAbilityListener(AUDIO_POLICY_SERVICE_ID); + AddSystemAbilityListener(RES_SCHED_SYS_ABILITY_ID); #ifdef PA int32_t ret = pthread_create(&m_paDaemonThread, nullptr, AudioServer::paDaemonThread, nullptr); pthread_setname_np(m_paDaemonThread, "OS_PaDaemon"); @@ -310,6 +312,9 @@ void AudioServer::OnAddSystemAbility(int32_t systemAbilityId, const std::string& AUDIO_INFO_LOG("input service start"); RegisterPolicyServerDeathRecipient(); break; + case RES_SCHED_SYS_ABILITY_ID: + AUDIO_INFO_LOG("ressched service start"); + ScheduleReportData(getpid(), paDaemonTid_, "audio_server"); default: AUDIO_ERR_LOG("unhandled sysabilityId:%{public}d", systemAbilityId); break; -- Gitee