| Previous | Next |
| TPM_20_E_OBJECT_MEMORY | TPM_20_E_MEMORY |
TPM_20_E_SESSION_MEMORY
Session memory and session handles are separate limits
TPM_20_E_SESSION_MEMORY is the Windows mapping of TPM_RC_SESSION_MEMORY. HMAC, policy, trial, and audit sessions consume TPM-resident state such as nonces, digests, attributes, and optional parameter-encryption keys. The TPM can run out of memory for that state before exhausting the numeric session-handle space.
This distinction separates it from TPM_20_E_SESSION_HANDLES. An application should first release sessions it owns, not reboot the system or delete keys. Resource managers may swap sessions, but exported session contexts also have lifetime and context-gap constraints.
Corrective actions
- Flush completed policy, HMAC, trial, and audit sessions explicitly.
- Do not create a new trial session for each policy command when a single session can be reused safely.
- Check whether abandoned client processes left TBS contexts open.
- Measure concurrent session demand and use the TPM capability data rather than assuming a fixed number of slots.
References
- TCG Part 2: TPM_RC_SESSION_MEMORY
- tpm2-tools: authorization-session creation
- tpm2-tools: flushing loaded sessions
Looking for a different code? Search another status or error code.