Added log statements to some user-switching tasks.
NOTE: as user switch is a very low-frequency operation, these logs statements don't need to be guard (to avoid spam). Test: manual verification Bug: 141502467 Bug: 140999054 Bug: 145027829 Change-Id: I7122e45c45a646419b03242c99d90417a29da92a (cherry picked from commit ebccffe3b10d8642e7b1d64f183b627f644011a4)
This commit is contained in:
@@ -407,6 +407,7 @@ class UserController implements Handler.Callback {
|
|||||||
*/
|
*/
|
||||||
private boolean finishUserUnlocking(final UserState uss) {
|
private boolean finishUserUnlocking(final UserState uss) {
|
||||||
final int userId = uss.mHandle.getIdentifier();
|
final int userId = uss.mHandle.getIdentifier();
|
||||||
|
Slog.d(TAG, "UserController event: finishUserUnlocking(" + userId + ")");
|
||||||
// Only keep marching forward if user is actually unlocked
|
// Only keep marching forward if user is actually unlocked
|
||||||
if (!StorageManager.isUserKeyUnlocked(userId)) return false;
|
if (!StorageManager.isUserKeyUnlocked(userId)) return false;
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
@@ -451,6 +452,7 @@ class UserController implements Handler.Callback {
|
|||||||
*/
|
*/
|
||||||
void finishUserUnlocked(final UserState uss) {
|
void finishUserUnlocked(final UserState uss) {
|
||||||
final int userId = uss.mHandle.getIdentifier();
|
final int userId = uss.mHandle.getIdentifier();
|
||||||
|
Slog.d(TAG, "UserController event: finishUserUnlocked(" + userId + ")");
|
||||||
// Only keep marching forward if user is actually unlocked
|
// Only keep marching forward if user is actually unlocked
|
||||||
if (!StorageManager.isUserKeyUnlocked(userId)) return;
|
if (!StorageManager.isUserKeyUnlocked(userId)) return;
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
@@ -521,6 +523,7 @@ class UserController implements Handler.Callback {
|
|||||||
|
|
||||||
private void finishUserUnlockedCompleted(UserState uss) {
|
private void finishUserUnlockedCompleted(UserState uss) {
|
||||||
final int userId = uss.mHandle.getIdentifier();
|
final int userId = uss.mHandle.getIdentifier();
|
||||||
|
Slog.d(TAG, "UserController event: finishUserUnlockedCompleted(" + userId + ")");
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
// Bail if we ended up with a stale user
|
// Bail if we ended up with a stale user
|
||||||
if (mStartedUsers.get(uss.mHandle.getIdentifier()) != uss) return;
|
if (mStartedUsers.get(uss.mHandle.getIdentifier()) != uss) return;
|
||||||
@@ -730,6 +733,7 @@ class UserController implements Handler.Callback {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void finishUserStopping(final int userId, final UserState uss) {
|
void finishUserStopping(final int userId, final UserState uss) {
|
||||||
|
Slog.d(TAG, "UserController event: finishUserStopping(" + userId + ")");
|
||||||
// On to the next.
|
// On to the next.
|
||||||
final Intent shutdownIntent = new Intent(Intent.ACTION_SHUTDOWN);
|
final Intent shutdownIntent = new Intent(Intent.ACTION_SHUTDOWN);
|
||||||
// This is the result receiver for the final shutdown broadcast.
|
// This is the result receiver for the final shutdown broadcast.
|
||||||
@@ -769,6 +773,7 @@ class UserController implements Handler.Callback {
|
|||||||
|
|
||||||
void finishUserStopped(UserState uss) {
|
void finishUserStopped(UserState uss) {
|
||||||
final int userId = uss.mHandle.getIdentifier();
|
final int userId = uss.mHandle.getIdentifier();
|
||||||
|
Slog.d(TAG, "UserController event: finishUserStopped(" + userId + ")");
|
||||||
final boolean stopped;
|
final boolean stopped;
|
||||||
boolean lockUser = true;
|
boolean lockUser = true;
|
||||||
final ArrayList<IStopUserCallback> stopCallbacks;
|
final ArrayList<IStopUserCallback> stopCallbacks;
|
||||||
@@ -1280,6 +1285,7 @@ class UserController implements Handler.Callback {
|
|||||||
boolean unlockUser(final @UserIdInt int userId, byte[] token, byte[] secret,
|
boolean unlockUser(final @UserIdInt int userId, byte[] token, byte[] secret,
|
||||||
IProgressListener listener) {
|
IProgressListener listener) {
|
||||||
checkCallingPermission(INTERACT_ACROSS_USERS_FULL, "unlockUser");
|
checkCallingPermission(INTERACT_ACROSS_USERS_FULL, "unlockUser");
|
||||||
|
Slog.i(TAG, "unlocking user " + userId);
|
||||||
final long binderToken = Binder.clearCallingIdentity();
|
final long binderToken = Binder.clearCallingIdentity();
|
||||||
try {
|
try {
|
||||||
return unlockUserCleared(userId, token, secret, listener);
|
return unlockUserCleared(userId, token, secret, listener);
|
||||||
@@ -1364,6 +1370,7 @@ class UserController implements Handler.Callback {
|
|||||||
|
|
||||||
boolean switchUser(final int targetUserId) {
|
boolean switchUser(final int targetUserId) {
|
||||||
enforceShellRestriction(UserManager.DISALLOW_DEBUGGING_FEATURES, targetUserId);
|
enforceShellRestriction(UserManager.DISALLOW_DEBUGGING_FEATURES, targetUserId);
|
||||||
|
Slog.i(TAG, "switching to user " + targetUserId);
|
||||||
int currentUserId = getCurrentUserId();
|
int currentUserId = getCurrentUserId();
|
||||||
UserInfo targetUserInfo = getUserInfo(targetUserId);
|
UserInfo targetUserInfo = getUserInfo(targetUserId);
|
||||||
if (targetUserId == currentUserId) {
|
if (targetUserId == currentUserId) {
|
||||||
|
|||||||
Reference in New Issue
Block a user