diff options
author | jpadmana <jayashree.r.padmanaban@intel.com> | 2013-11-14 17:20:52 +0530 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2014-03-04 16:10:47 -0800 |
commit | 85b3013e06e8fe7802fe6259ecac80261e834332 (patch) | |
tree | 477c3b2bddfc872ba4f012796f0e3a8d5448f059 /include/media | |
parent | 50c3157c5a3e0617be77716beff1ae8801d8a72f (diff) | |
download | frameworks_av-85b3013e06e8fe7802fe6259ecac80261e834332.zip frameworks_av-85b3013e06e8fe7802fe6259ecac80261e834332.tar.gz frameworks_av-85b3013e06e8fe7802fe6259ecac80261e834332.tar.bz2 |
fix deadlock issues that arise when there are simultaneous
effect control interface calls to proxy and to
non sub-effect wrappers(eg., bundlewrapper) from audioflinger
Also, return NO_ERROR when CMD_OFFLOAD succeeds
Whenever there are parallel calls to proxy and non sub-effects wrappers,
some of the calls are not completed. This is due to deadlock arsing out
of Proxy waiting for the subeffect call to return and subeffect waiting
for proxy to release lock.
The call flow is changed to a cleaner and simple one - Proxy gets the
aeli(effect library info) of subeffects during the EffectGetSubEffects()
call. Therby, proxy will manage the sub effects by itself rather than
going through effects factory.
Change-Id: If4b259da5776f151c1e81a78a0239d342046d923
Signed-off-by: jpadmana <jayashree.r.padmanaban@intel.com>
Bug: 12424044
Diffstat (limited to 'include/media')
-rw-r--r-- | include/media/EffectsFactoryApi.h | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/include/media/EffectsFactoryApi.h b/include/media/EffectsFactoryApi.h index b1143b9..b1ed7b0 100644 --- a/include/media/EffectsFactoryApi.h +++ b/include/media/EffectsFactoryApi.h @@ -171,30 +171,6 @@ int EffectGetDescriptor(const effect_uuid_t *pEffectUuid, effect_descriptor_t *p //////////////////////////////////////////////////////////////////////////////// int EffectIsNullUuid(const effect_uuid_t *pEffectUuid); -//////////////////////////////////////////////////////////////////////////////// -// -// Function: EffectGetSubEffects -// -// Description: Returns the descriptors of the sub effects of the effect -// whose uuid is pointed to by first argument. -// -// Input: -// pEffectUuid: pointer to the effect uuid. -// size: size of the buffer pointed by pDescriptor. -// -// Input/Output: -// pDescriptor: address where to return the sub effect descriptors. -// -// Output: -// returned value: 0 successful operation. -// -ENODEV factory failed to initialize -// -EINVAL invalid pEffectUuid or pDescriptor -// -ENOENT no effect with this uuid found -// *pDescriptor: updated with the sub effect descriptors. -// -//////////////////////////////////////////////////////////////////////////////// -int EffectGetSubEffects(const effect_uuid_t *pEffectUuid, effect_descriptor_t *pDescriptors, size_t size); - #if __cplusplus } // extern "C" #endif |