STRUCT SMM_VARIABLE_COMMUNICATE_HEADER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct smm_variable_communicate_header β€” Kernel API Manual ✨

okay bestie, welcome to the Kernel API Manual ✨ this one's a lil struct page, and honestly? she's short but she matters. no cap.


πŸŽ€ NAME πŸŽ€

struct smm_variable_communicate_header β€” literally the struct used for SMM variable communication 🫢 that's her whole job and she does it slayfully.


✨ SYNOPSIS ✨

ok so here's the shape of her, exactly as she is, copy-paste energy only:

struct smm_variable_communicate_header {
    size_t function;
    efi_status_t ret_status;
    u8 data[];
};

like, three members, zero drama. the way that trailing data[] is flexible-length and just vibing at the end? iconic.


πŸ’– Members πŸ’–

  • function β€” the function to call in Smm. like, which one do we invoke. this is the "who we calling bestie" field πŸ‘‘
  • ret_status β€” return status. the receipts, basically. it's an efi_status_t, so it tells you how things went πŸ’€
  • data β€” payload. the actual stuff being carried, a u8 array, flexible and ready to hold whatever πŸŽ€

πŸ¦‹ SEE ALSO πŸ¦‹

the whole friend group, fr fr β€” go read these too:

  • Kernel file ./drivers/firmware/efi/stmm/mm_communication.h
  • struct efi_mm_communicate_header(9)
  • struct smm_variable_access(9)
  • struct smm_variable_payload_size(9)
  • struct smm_variable_getnext(9)
  • struct smm_variable_query_info(9)
  • struct var_check_property(9)
  • struct smm_variable_var_check_property(9)

iykyk β€” that's the entire squad right there 🌈


okay and finally, the sign-off πŸ’Œ this page lives in the kernel tree at ./drivers/firmware/efi/stmm, it's dated October 2026, and the page itself is struct smm_v...icate_header(9) β€” yes the title got truncated in the corner, that's just how it renders, don't come for her πŸ™ˆ mwah, go read the structs, ily πŸ«ΆπŸ’œ

πŸ“¦ where this page comes from