summaryrefslogtreecommitdiffstats
path: root/services/audioflinger/Tracks.cpp
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2013-09-11 17:25:02 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-09-11 17:25:02 -0700
commitd5577f26de1ae3a0dc6fbea9c60a07d585f894bf (patch)
tree9f39de6f98f3955cbd94ac2f9a66f36165847234 /services/audioflinger/Tracks.cpp
parent0fc610ade6ecd2cec75df4b9d91ed3298601400a (diff)
parent4823964d198228289ff21530bf8b01bb2ef196bb (diff)
downloadframeworks_av-d5577f26de1ae3a0dc6fbea9c60a07d585f894bf.zip
frameworks_av-d5577f26de1ae3a0dc6fbea9c60a07d585f894bf.tar.gz
frameworks_av-d5577f26de1ae3a0dc6fbea9c60a07d585f894bf.tar.bz2
am 4823964d: am efc4d489: Merge "audioflinger: add HOTWORD audio source." into klp-dev
* commit '4823964d198228289ff21530bf8b01bb2ef196bb': audioflinger: add HOTWORD audio source.
Diffstat (limited to 'services/audioflinger/Tracks.cpp')
-rw-r--r--services/audioflinger/Tracks.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp
index 7f58300..0f0b7b6 100644
--- a/services/audioflinger/Tracks.cpp
+++ b/services/audioflinger/Tracks.cpp
@@ -1779,6 +1779,16 @@ void AudioFlinger::RecordThread::RecordTrack::destroy()
}
}
+void AudioFlinger::RecordThread::RecordTrack::invalidate()
+{
+ // FIXME should use proxy, and needs work
+ audio_track_cblk_t* cblk = mCblk;
+ android_atomic_or(CBLK_INVALID, &cblk->mFlags);
+ android_atomic_release_store(0x40000000, &cblk->mFutex);
+ // client is not in server, so FUTEX_WAKE is needed instead of FUTEX_WAKE_PRIVATE
+ (void) __futex_syscall3(&cblk->mFutex, FUTEX_WAKE, INT_MAX);
+}
+
/*static*/ void AudioFlinger::RecordThread::RecordTrack::appendDumpHeader(String8& result)
{