summaryrefslogtreecommitdiffstats
path: root/services/audioflinger/SchedulingPolicyService.cpp
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2015-09-25 16:52:55 -0700
committerEino-Ville Talvala <etalvala@google.com>2015-09-26 11:22:20 -0700
commitf99498ee4de7123e2fd71778c6877be44fbd1506 (patch)
tree76fc5f13ab660c053101f09a701187259952e90a /services/audioflinger/SchedulingPolicyService.cpp
parent8595eaab5884bb74d884d366ad6e371a296bf576 (diff)
downloadframeworks_av-f99498ee4de7123e2fd71778c6877be44fbd1506.zip
frameworks_av-f99498ee4de7123e2fd71778c6877be44fbd1506.tar.gz
frameworks_av-f99498ee4de7123e2fd71778c6877be44fbd1506.tar.bz2
CameraService: Use SCHED_FIFO for request queue thread in HFR
- Move SchedulingPolicyService from audioservice to mediautils - When starting up a high speed stream config, set request queue thread to SCHED_FIFO using SchedulingPolicyService Bug: 24227252 Change-Id: I224b59142bd111caf563779f55cddd62385b9bac
Diffstat (limited to 'services/audioflinger/SchedulingPolicyService.cpp')
-rw-r--r--services/audioflinger/SchedulingPolicyService.cpp62
1 files changed, 0 insertions, 62 deletions
diff --git a/services/audioflinger/SchedulingPolicyService.cpp b/services/audioflinger/SchedulingPolicyService.cpp
deleted file mode 100644
index 70a3f1a..0000000
--- a/services/audioflinger/SchedulingPolicyService.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define LOG_TAG "SchedulingPolicyService"
-//#define LOG_NDEBUG 0
-
-#include <binder/IServiceManager.h>
-#include <utils/Mutex.h>
-#include "ISchedulingPolicyService.h"
-#include "SchedulingPolicyService.h"
-
-namespace android {
-
-static sp<ISchedulingPolicyService> sSchedulingPolicyService;
-static const String16 _scheduling_policy("scheduling_policy");
-static Mutex sMutex;
-
-int requestPriority(pid_t pid, pid_t tid, int32_t prio, bool asynchronous)
-{
- // FIXME merge duplicated code related to service lookup, caching, and error recovery
- int ret;
- for (;;) {
- sMutex.lock();
- sp<ISchedulingPolicyService> sps = sSchedulingPolicyService;
- sMutex.unlock();
- if (sps == 0) {
- sp<IBinder> binder = defaultServiceManager()->checkService(_scheduling_policy);
- if (binder == 0) {
- sleep(1);
- continue;
- }
- sps = interface_cast<ISchedulingPolicyService>(binder);
- sMutex.lock();
- sSchedulingPolicyService = sps;
- sMutex.unlock();
- }
- ret = sps->requestPriority(pid, tid, prio, asynchronous);
- if (ret != DEAD_OBJECT) {
- break;
- }
- ALOGW("SchedulingPolicyService died");
- sMutex.lock();
- sSchedulingPolicyService.clear();
- sMutex.unlock();
- }
- return ret;
-}
-
-} // namespace android