Public bug reported:
AI-generated bug description as I am not deeply familiar with FDE nor the Linux
kernel.
# TPM-backed FDE install completes but seals unusable keyslots — "incompatible
key data role params" on every boot since install
## Summary
A fresh Ubuntu 26.04 desktop install with TPM-backed FDE (`PartitionMethod:
use_tpmfde`) completed
successfully, but the sealed TPM keyslots have **never been openable**.
`snap-bootstrap` fails to
recover keys from both `default` and `default-fallback` on every boot since
installation, so the
system falls back to the recovery key every time.
Separately and from the same first boot, `devicemgr` cannot authenticate to the
TPM lockout
hierarchy, so `TPM_CC_DictionaryAttackLockReset` fails and FDE auto-repair
never initialises
(`auto-repair-result: "not-initialized"`).
Both faults were present within 9 minutes of the install finishing. Nothing
degraded over time;
the installation produced a non-functional TPM FDE configuration from the start.
## System
| | |
|---|---|
| Machine | LENOVO 21KS000PMX (ThinkPad P16s Gen 3) |
| CPU | Intel Core Ultra 9 185H |
| BIOS | R2DET42W (1.27) |
| OS | Ubuntu 26.04 |
| Install method | `PartitionMethod: use_tpmfde`, Ubuntu 26.04 Minimal |
| Installed | 2026-08-25 ~20:32 CEST |
| snapd (deb) | 2.76.3+ubuntu26.04 (was 2.76+ubuntu26.04.2 when first observed)
|
| snapd (snap) | 2.75.2 (rev 26865, latest/stable) |
| pc-kernel | 3390 (7.0.0-14.14) → refreshed to 3672 (7.0.0-28.28) |
## Symptom
Recovery key is required on every boot. TPM auto-unlock has never
worked, not once.
```
$ snap debug api /v2/system-info/storage-encrypted
{
"result": {
"auto-repair-result": "not-initialized",
"status": "recovery"
},
...
}
```
## Evidence 1 — keyslots unusable on every boot
Three boots exist since install. All three produce identical errors from
`snap-bootstrap`.
**Boot -2 — first boot after install, 2026-08-25 20:40:18 (8 min after
install):**
```
snap-bootstrap[589]: Error with keyslot "default": cannot recover keys from
keyslot:
incompatible key data role params: invalid PCR policy data:
cannot complete authorization policy assertions:
the PCR policy is not authorized for the current configuration
snap-bootstrap[589]: Error with keyslot "default-fallback": [identical]
```
**Boot -1 — 2026-08-25 20:47:15:** identical, `snap-bootstrap[592]`
**Boot 0 — 2026-08-26 21:37:54, after pc-kernel refresh 3390 → 3672:**
identical,
`snap-bootstrap[419]`. The kernel refresh did **not** change the outcome.
## Evidence 2 — lockout hierarchy auth fails, blocking auto-repair
First occurrence, same first boot, 2026-08-25 **20:41:47** (9 min after
install):
```
snapd[2771]: fdestate.go:222: cannot obtain primary key digest for data device
/dev/disk/by-uuid/<uuid>: kernel key not found
snapd[2771]: stateengine.go:161: state ensure error: devicemgr:
TPM returned an error for session 1 whilst executing command
TPM_CC_DictionaryAttackLockReset: TPM_RC_AUTH_FAIL + TPM_RC_S + TPM_RC_1
(the authorization HMAC check failed and DA counter incremented)
```
Recurring since, alternating between `TPM_RC_AUTH_FAIL` (when lockoutAuth is
available) and
`TPM_RC_LOCKOUT` (during the 24h `lockoutRecovery` window armed by each
failure).
snapd's stored lockout auth is present and well-formed:
```
$ sudo file /var/lib/snapd/save/device/fde/tpm-lockout-auth
/var/lib/snapd/save/device/fde/tpm-lockout-auth: JSON text data # 658
bytes, keys: auth-value, auth-policy
```
`ubuntu-save` is mounted and readable, so this is not an access problem.
## Evidence 3 — TPM state is snapd-provisioned and otherwise healthy
```
TPM2_PT_PERMANENT:
ownerAuthSet: 0
endorsementAuthSet: 0
lockoutAuthSet: 1
disableClear: 1
inLockout: 0
TPM2_PT_LOCKOUT_COUNTER: 0x0
TPM2_PT_MAX_AUTH_FAIL: 0x20
TPM2_PT_LOCKOUT_INTERVAL: 0x1C20 # 2h
TPM2_PT_LOCKOUT_RECOVERY: 0x15180 # 24h
```
Persistent handles: `0x81000001`, `0x81010001`, `0x81800000`,
`0x81800001`
`ownerAuthSet: 0` + `endorsementAuthSet: 0` + `lockoutAuthSet: 1` +
`disableClear: 1` is the
expected signature of secboot provisioning — no foreign TPM owner. Note
`disableClear: 1` means
the TPM cannot be cleared from the OS, only from firmware.
## Evidence 4 — keyslot layout
```
system-data (ubuntu-data):
default type=platform platform-name=tpm2 auth-mode=none
roles=[run+recover]
default-fallback type=platform platform-name=tpm2 auth-mode=none
roles=[recover]
default-recovery type=recovery
system-save (ubuntu-save):
default type=platform platform-name=plainkey auth-mode=none
default-fallback type=platform platform-name=tpm2 auth-mode=none
roles=[recover]
default-recovery type=recovery
```
Structurally complete — the keyslots exist and are enrolled. They simply
cannot be opened.
## Ruled out
- **PCR drift / firmware update** — `fwupdmgr security` reports HSI:3 with
`TPM PCR0 reconstruction: Valid`, `TPM empty PCRs: Valid`, `UEFI secure boot:
Enabled`,
`Intel BootGuard: Enabled`. `fwupdmgr get-history` reports no history;
`get-updates` reports
System Firmware, ME, UEFI CA and UEFI dbx all already at latest. The failure
also predates any
possible update — it is present on the first boot.
- **Foreign TPM ownership (e.g. prior Windows/BitLocker)** — `ownerAuthSet: 0`,
`endorsementAuthSet: 0`.
- **`ubuntu-save` inaccessible** — mounted at `/var/lib/snapd/save`, contents
readable.
- **Missing lockout auth** — file present, valid JSON.
- **Missing kernel modules (`vmd`)** — `vmd.ko.zst` ships in the kernel snap;
NVMe is directly
reachable; 6902 modules present.
- **Stale kernel** — pc-kernel refreshed 3390 → 3672, error unchanged.
## Impact
- Recovery key required on every boot, permanently.
- FDE auto-repair cannot initialise, so the 2.71 "recovery key auto-repair"
path never runs.
- No manual remedy available: the documented `/v2/system-volumes` actions cover
recovery key
replacement, keyslot enumeration and passphrase/PIN changes, but none re-seal
or re-enroll a
TPM platform keyslot.
- `disableClear: 1` means the TPM can only be cleared from firmware, and per
LP#2045417 recovery
after a TPM clear is not currently supported.
## Possibly related
- LP #2045417 — Refresh of pc-kernel snap fails if TPM is cleared
- LP #2052601 — TPM backed FDE does not re-enroll the key upon recovery
- LP #2063963 — Desktop TPM FDE install completes, immediate recovery key prompt
## Note on versions
The snapd deb (`2.76.3+ubuntu26.04`) and the snapd snap (`2.75.2`) differ, and
`snap-bootstrap`
ships inside the pc-kernel snap's initramfs. Whether the `incompatible key data
role params`
error reflects a version skew between the component that sealed the keys and
the one attempting
to unseal them has not been confirmed and is offered only as a possible
direction.
ProblemType: Bug
DistroRelease: Ubuntu 26.04
Package: snapd 2.76.3+ubuntu26.04
ProcVersionSignature: Ubuntu 7.0.0-28.28-generic 7.0.12
Uname: Linux 7.0.0-28-generic x86_64
ApportVersion: 2.34.1-0ubuntu0.1
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
Date: Wed Aug 26 22:24:43 2026
ProcEnviron:
LANG=en_US.UTF-8
PATH=(custom, no user)
SHELL=/usr/bin/zsh
TERM=xterm-256color
XDG_RUNTIME_DIR=<set>
SnapChanges: no changes found
SourcePackage: snapd
UpgradeStatus: No upgrade log present (probably fresh install)
** Affects: snapd (Ubuntu)
Importance: Undecided
Status: New
** Tags: amd64 apport-bug resolute wayland-session
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2165190
Title:
TPM fails AUTH automatically after FDE/TPM Ubuntu 26.04 install
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/2165190/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs