Mark all clients of Allocator HAL
This change associates all domains which are clients of Allocator HAL with hal_allocator_client and the, required for all HAL client domains, halclientdomain. This enables this commit to remove the now unnecessary hwallocator_use macro because its binder_call(..., hal_allocator_server) is covered by binder_call(hal_allocator_client, hal_allocator_server) added in this commit. Unfortunately apps, except isolated app, are clients of Allocator HAL as well. This makes it hard to use the hal_client_domain(..., hal_allocator) macro because it translates into "typeattribute" which currently does not support being provided with a set of types, such as { appdomain -isolated_app }. As a workaround, hopefully until typeattribute is improved, this commit expresses the necessary association operation in CIL. private/technical_debt.cil introduced by this commit is appended into the platform policy CIL file, thus ensuring that the hack has effect on the final monolithic policy. P. S. This change also removes Allocator HAL access from isolated_app. Isolated app shouldn't have access to this HAL anyway. Test: Google Play Music plays back radios Test: Google Camera records video with sound and that video is then successfully played back with sound Test: YouTube app plays back clips with sound Test: YouTube in Chrome plays back clips with sound Bug: 34170079 Change-Id: Id00bba6fde83e7cf04fb58bc1c353c2f66333f92
Showing
- Android.mk 11 additions, 1 deletionAndroid.mk
- private/app.te 0 additions, 1 deletionprivate/app.te
- private/audioserver.te 1 addition, 2 deletionsprivate/audioserver.te
- private/system_server.te 1 addition, 1 deletionprivate/system_server.te
- private/technical_debt.cil 13 additions, 0 deletionsprivate/technical_debt.cil
- public/hal_allocator.te 2 additions, 0 deletionspublic/hal_allocator.te
- public/hal_audio.te 0 additions, 6 deletionspublic/hal_audio.te
- public/mediacodec.te 1 addition, 4 deletionspublic/mediacodec.te
- public/mediaserver.te 1 addition, 3 deletionspublic/mediaserver.te
- public/te_macros 0 additions, 8 deletionspublic/te_macros
- vendor/hal_audio_default.te 2 additions, 0 deletionsvendor/hal_audio_default.te
Loading
Please register or sign in to comment