summaryrefslogtreecommitdiff
path: root/libs/androidfw/ConfigDescription.cpp
diff options
context:
space:
mode:
author Lakshman Annadorai <lakshmana@google.com> 2022-11-11 14:31:54 -0800
committer Lakshman Annadorai <lakshmana@google.com> 2022-11-14 19:29:08 +0000
commit123aa680d1bd664b481a26748e0d900496edaea7 (patch)
treedbc3dd9c8e265c437ceab2c9ac7e6940dd14fbe3 /libs/androidfw/ConfigDescription.cpp
parent2c4de3862984b888825e60ab3062c4f80040157a (diff)
Skip duplicate USER_SYSTEM start in SystemServiceManager.
On Automotive / Headless System User Mode, the system user will be started twice - once from ActivityServiceManager and once from an external/local service that switches the system user to background in HSUM. Previously, checking for the current user on the ActivityServiceManager side helped avoid starting system user twice because the CarServiceHelperService, which resides in the same process, started the system user before ActivityServiceManager and switched the user to the background. But this doesn't work anymore because the order of these calls are non-deteministic. The system user start is moved to CarService, which resides in a separate process (which increases the chances of the non-deterministic event). Avoid starting system user twice by explicitly checking against the list of previously started users on the SystemServiceManager side. On the ActivityServiceManager side, protect against starting home displays, and broadcasting system user start/switch on HSUM by explicitly checking for HSUM. Test: Build and system boot up is okay. Test: Ran `adb shell dumpsys system_server_dumper --name \ SystemServiceManager | grep user` and verified the running user(s) is listed. Bug: 258532055 Change-Id: Ic0af6b030c08995715dd3195801ed271c690ce4a
Diffstat (limited to 'libs/androidfw/ConfigDescription.cpp')
0 files changed, 0 insertions, 0 deletions