diff --git a/services/core/java/com/android/server/LockSettingsService.java b/services/core/java/com/android/server/LockSettingsService.java index ed16af51c7eb0..360701c3e1362 100644 --- a/services/core/java/com/android/server/LockSettingsService.java +++ b/services/core/java/com/android/server/LockSettingsService.java @@ -787,7 +787,13 @@ public class LockSettingsService extends ILockSettings.Stub { private void changeUserKey(int userId, byte[] token, byte[] secret) throws RemoteException { final UserInfo userInfo = UserManager.get(mContext).getUserInfo(userId); - getMountService().changeUserKey(userId, userInfo.serialNumber, token, null, secret); + final IMountService mountService = getMountService(); + final long callingId = Binder.clearCallingIdentity(); + try { + mountService.changeUserKey(userId, userInfo.serialNumber, token, null, secret); + } finally { + Binder.restoreCallingIdentity(callingId); + } } @Override