[Pixel C Android Development] cmit37:
I installed the latest version of CM16 going from stock and following the install instructions. Setup pin as lockscreen and smart unlock using facial recognition.

It worked well for 2 weeks until last night when the tablet rebooted randomly while watching a Youtube video.

On power-up at the login screen I input my pin and the screen goes black and back to the pin.

I tried rebooting it multiple times, wiped cache and dalvik cache, tried to unlock while recharging, left it recharging while powered on overnight, tried going into settings from the lockscreen etc but everything I do brings me back to the same lock screen. The pin is correct and the lockscreen doesn't tell me that it is incorrect.

I tried looking to see if there is a guest user that I could login as but the only account on the tablet is mine.

I connected it to my pc and tried to remove the lockscreen password:

adb shell

locksettings clear --old xxxx

This fails with:

Error while executing command: clear

java.lang.RuntimeException: Failed to decrypt blob

at com.android.server.locksettings.SyntheticPasswordCrypto.decryptBlob(SyntheticPasswordCrypto.java:143)

at com.android.server.locksettings.SyntheticPasswordManager.decryptSPBlob(SyntheticPasswordManager.java:1093)

at com.android.server.locksettings.SyntheticPasswordManager.unwrapSyntheticPasswordBlob(SyntheticPasswordManager.java:954)

at com.android.server.locksettings.SyntheticPasswordManager.unwrapPasswordBasedSyntheticPassword(SyntheticPasswordManager.java:885)

at com.android.server.locksettings.LockSettingsService.spBasedDoVerifyCredential(LockSettingsService.java:2427)

at com.android.server.locksettings.LockSettingsService.doVerifyCredential(LockSettingsService.java:1694)

at com.android.server.locksettings.LockSettingsService.checkCredential(LockSettingsService.java:1661)

at com.android.internal.widget.LockPatternUtils.checkCredential(LockPatternUtils.java:379)

at com.android.internal.widget.LockPatternUtils.checkPassword(LockPatternUtils.java:501)

at com.android.internal.widget.LockPatternUtils.checkPassword(LockPatternUtils.java:488)

at com.android.server.locksettings.LockSettingsShellCommand.checkCredential(LockSettingsShellCommand.java:182)

at com.android.server.locksettings.LockSettingsShellCommand.onCommand(LockSettingsShellCommand.java:59)

at android.os.ShellCommand.exec(ShellCommand.java:103)

at com.android.server.locksettings.LockSettingsService.onShellCommand(LockSettingsService.java:2071)

at android.os.Binder.shellCommand(Binder.java:634)

at android.os.Binder.onTransact(Binder.java:532)

at com.android.internal.widget.ILockSettings$Stub.onTransact(ILockSettings.java:542)

at android.os.Binder.execTransact(Binder.java:731)

Caused by: java.security.UnrecoverableKeyException: Failed to obtain information about key

at android.security.keystore.AndroidKeyStoreProvider.getKeyCharacteristics(AndroidKeyStoreProvider.java:234)

at android.security.keystore.AndroidKeyStoreProvider.loadAndroidKeyStoreKeyFromKeystore(AndroidKeyStoreProvider.java:356)

at android.security.keystore.AndroidKeyStoreSpi.engineGetKey(AndroidKeyStoreSpi.java:101)

at java.security.KeyStore.getKey(KeyStore.java:1062)

at com.android.server.locksettings.SyntheticPasswordCrypto.decryptBlob(SyntheticPasswordCrypto.java:134)

... 17 more

Caused by: android.security.KeyStoreException: Unknown error

at android.security.KeyStore.getKeyStoreException(KeyStore.java:839)

at android.security.keystore.AndroidKeyStoreProvider.getKeyCharacteristics(AndroidKeyStoreProvider.java:236)

... 21 more

Is there anyway for me to unlock it without doing a factory reset? Some adb magic?

---------- Post added at 06:41 PM ---------- Previous post was at 06:17 PM ----------

Inexplicably after booting into fastboot and recovery and trying to delete a non existent "adb shell rm /data/system/gesture.key" I took a chance and tried to login and it worked. Very strange