What does HRESULT 0x8029021B (TBSIMP_E_NO_EVENT_LOG) mean?

 
Previous Next
TBSIMP_E_TPM_INCOMPATIBLE TPM_E_PPI_ACPI_FAILURE

TBSIMP_E_NO_EVENT_LOG

The decisive TPM checkpoint

TBSIMP_E_NO_EVENT_LOG (0x8029021B) belongs to the measured-boot event-log path. The base What Is page already shows the short Windows message; the additional diagnostic value is that this result marks TBS cannot obtain the TCG measured-boot event log expected from the platform.

The first producer to identify for TBSIMP_E_NO_EVENT_LOG is TBS retrieval of the Windows Boot Configuration Log or TCG event log. For TBSIMP_E_NO_EVENT_LOG, the Windows Boot Configuration Log records measured-boot events that explain PCR extensions. For TBSIMP_E_NO_EVENT_LOG, tBS retrieves that firmware/platform artifact; it does not synthesize the history from the TPM after the fact.

Before changing the platform

QuestionEvidence for TBSIMP_E_NO_EVENT_LOG
What exact state was rejected?TBS cannot obtain the TCG measured-boot event log expected from the platform
Which layer owns the result?For TBSIMP_E_NO_EVENT_LOG, TBS retrieval of the Windows Boot Configuration Log or TCG event log.
What must be correlated?Tbsi_Get_TCG_Log or _Ex result, requested log type, firmware/UEFI mode, Secure Boot and measured-boot state, TBS event ID, and BIOS revision
What is the controlled comparison?query the log size with the documented API and compare after a normal cold boot without clearing the TPM

A useful TBSIMP_E_NO_EVENT_LOG trace links three code-specific timelines: the application call, the local TBS/provider or firmware event, and the raw command/response exchange. The TBSIMP_E_NO_EVENT_LOG timestamps should describe one attempt; combining data from separate retries is particularly misleading for authorization sessions, context counters, DAA stages and lockout state.

Test the contract

The one-variable check is to query the log size with the documented API and compare after a normal cold boot without clearing the TPM. Record the before/after state that the TBSIMP_E_NO_EVENT_LOG command is allowed to change. If the TBSIMP_E_NO_EVENT_LOG operation can have side effects, use a disposable key, session, counter or NV index rather than production material.

  1. Capture TBSIMP_E_NO_EVENT_LOG and 0x8029021B at the first code-specific return boundary.
  2. Decode the TBSIMP_E_NO_EVENT_LOG state: requested log type, firmware exposure, output size, boot mode, event source and BIOS revision.
  3. Run the TBSIMP_E_NO_EVENT_LOG controlled comparison once and preserve both binary transcripts.
  4. Verify the expected TBSIMP_E_NO_EVENT_LOG output or state transition instead of relying on absence of a UI message.

Why another code is not equivalent

Comparison codeBuilt-in distinction
TPM_E_ERROR_MASKThis is an error mask to convert TPM hardware errors to win errors — a separate checkpoint when compared with TBSIMP_E_NO_EVENT_LOG.
TPM_E_FAILThe operation failed — a separate checkpoint when compared with TBSIMP_E_NO_EVENT_LOG.
TPM_E_SHA_THREADThere is no existing SHA-1 thread — a separate checkpoint when compared with TBSIMP_E_NO_EVENT_LOG.

TBSIMP_E_NO_EVENT_LOG specifically answers whether TBS cannot obtain the TCG measured-boot event log expected from the platform. In contrast, a valid event log explains PCR extensions, whereas PCR values alone cannot reconstruct missing event records.

Evidence of success

To remediate TBSIMP_E_NO_EVENT_LOG, update firmware or platform configuration so it exposes the WBCL/TCG log; do not synthesize a log from PCR values. For TBSIMP_E_NO_EVENT_LOG, do not manufacture an event log from final PCR values. For TBSIMP_E_NO_EVENT_LOG, pCRs contain cumulative measurements but cannot recover event order, event payloads or all digest banks.

After correcting TBSIMP_E_NO_EVENT_LOG, start with a fresh caller context where the protocol requires one, replay the original intended operation, and confirm that hardware-backed policy remains enforced.

Authoritative references


Looking for a different code? Search another status or error code.