STRUCT TD_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct td_info(9) πŸ’–

okay so bestie, we're in the Kernel API Manual today and the main character is struct td_info β€” it's giving "TDX guest measurements and configuration" and honestly? iconic. 🫢


✨ NAME ✨

struct td_info β€” TDX guest measurements and configuration. no cap, that's literally what it is πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

struct td_info {
    __u8 attr[8];
    __u64 xfam;
    __u64 mrtd[6];
    __u64 mrconfigid[6];
    __u64 mrowner[6];
    __u64 mrownerconfig[6];
    __u64 rtmr[24];
    __u64 reserved[14];
 };

like, that's the whole vibe right there ⬆️ every field, exactly as written, don't come for me 🧚


🌸 Members 🌸

  • attr β€” the TDX Guest attributes (things like debug, spet_disable, etc). the little personality traits of the guest, basically πŸ›
  • xfam β€” Extended features allowed mask. it's the "yes queen you may" list of features ✨
  • mrtd β€” Build time measurement register. the moment the guest was born, frozen in time 😭
  • mrconfigid β€” Software-defined ID for non-owner-defined configuration of the guest β€” e.g., run-time or OS configuration. so like, the stuff that's not the owner's business πŸŽ€
  • mrowner β€” Software-defined ID for the guest owner. hi, this is the owner's whole identity πŸ‘‘
  • mrownerconfig β€” Software-defined ID for owner-defined configuration of the guest β€” e.g., specific to the workload. the owner's personal aesthetic choices, workload edition 🌈
  • rtmr β€” Run time measurement registers. these ones keep growing and extending as the guest lives its life, main character energy fr fr πŸ”₯
  • reserved β€” Added for future extension. it's literally saving seats for the future besties πŸ’œ

🌟 Description 🌟

so what is this thing actually for? it contains the measurements and initial configuration of the TDX guest β€” the ones that got locked at initialization (yes, locked, no takebacks πŸ’€) β€” plus a whole set of measurement registers that are run-time extendable (those ones keep going, we love a flexible king πŸ¦‹).

and if you want the full lore drop, more details can be found in the TDX v1.0 Module specification, section titled "TDINFO_STRUCT". go read it, iykyk πŸ“–


🌈 SEE ALSO 🌈

  • Kernel file ./tools/testing/selftests/tdx/tdx_guest_test.c
  • struct tdreport_type(9)
  • struct reportmac(9)
go check those out too, they're in the same friend group 🫢

okay that's the whole page bestie, every single member accounted for, nothing skipped, periodt πŸ’…βœ¨

from ./tools/testing/selftests/tdx, dated October 2026 β€” mwah, love u, bye πŸ‘‹πŸ“

πŸ“¦ where this page comes from