STRUCT SEV_DATA_SEND_START(9)
π struct sev_data_send_start(9) π
Okay so welcome to the struct sev_data_send_start page from the Kernel API Manual, section 9, bestie. This is the whole vibe for the SEND_START command parameters β yes, that SEND_START, capital letters and all. Buckle up. π«Ά
πΈ NAME πΈ
struct sev_data_send_start β the parameters for the SEND_START command. Literally the name, no cap. π
β¨ SYNOPSIS β¨
struct sev_data_send_start {
u32 handle;
u32 policy;
u64 pdh_cert_address;
u32 pdh_cert_len;
u32 reserved1;
u64 plat_certs_address;
u32 plat_certs_len;
u32 reserved2;
u64 amd_certs_address;
u32 amd_certs_len;
u32 reserved3;
u64 session_address;
u32 session_len;
};
π Members π
handleβ handle of the VM to process. Like, which VM are we even processing? This one. πpolicyβ policy information for the VM. The policy vibes, if you will. β¨pdh_cert_addressβ physical address containing PDH certificate. The physical address where the PDH cert is hanging out. πpdh_cert_lenβ len of PDH certificate. Yep, the length. πplat_certs_addressβ physical address containing platform certificate. Physical address, platform cert, say less. π¦plat_certs_lenβ len of platform certificate. The length of that platform cert. πamd_certs_addressβ physical address containing AMD certificate. The physical address holding the AMD cert. πamd_certs_lenβ len of AMD certificate. Length of the AMD cert, periodt. πΈsession_addressβ physical address containing Session data. Physical address with the Session data. π₯session_lenβ len of session data. The session data length. π
Also sitting in the struct are reserved1, reserved2, and reserved3 β the manpage doesn't give them their own member blurbs, so I'm not inventing any lore here. π
π SEE ALSO π
Kernel file: ./include/linux/psp-sev.h.
If you wanna spiral into the whole SEV cinematic universe, tap these pages:
struct sev_data_init(9)struct sev_data_init_ex(9)struct sev_data_pek_csr(9)struct sev_data_download_firmware(9)struct sev_data_get_id(9)struct sev_data_pdh_cert_export(9)struct sev_data_decommission(9)struct sev_data_activate(9)struct sev_data_deactivate(9)struct sev_data_guest_status(9)struct sev_data_launch_start(9)struct sev_data_launch_update_data(9)struct sev_data_launch_update_vmsa(9)struct sev_data_launch_measure(9)struct sev_data_launch_secret(9)struct sev_data_launch_finish(9)struct sev_data_send_finish(9)struct sev_data_send_cancel(9)struct sev_data_receive_start(9)struct sev_data_receive_update_data(9)struct sev_data_receive_update_vmsa(9)struct sev_data_receive_finish(9)struct sev_data_dbg(9)struct sev_data_attestation_report(9)struct sev_data_snp_download_firmware(9)struct sev_data_snp_activate(9)struct sev_data_snp_addr(9)struct sev_data_snp_launch_start(9)struct sev_data_snp_launch_update(9)struct sev_data_snp_launch_finish(9)struct sev_data_snp_guest_status(9)struct sev_data_snp_page_reclaim(9)struct sev_data_snp_page_unsmash(9)struct sev_data_snp_dbg(9)struct sev_data_snp_guest_request(9)struct sev_data_snp_init_ex(9)struct sev_data_range(9)struct sev_data_range_list(9)struct sev_data_snp_shutdown_ex(9)struct sev_platform_init_args(9)struct sev_data_snp_commit(9)struct sev_data_snp_feature_info(9)struct sev_data_snp_verify_mitigation(9)struct sev_data_snp_verify_mitigation_dst(9)struct sev_snp_tcb_version_genoa_milan(9)struct sev_snp_tcb_version_turin(9)sev_module_init(9)sev_platform_init(9)sev_platform_status(9)sev_issue_cmd_external_user(9)sev_guest_deactivate(9)sev_guest_activate(9)sev_guest_df_flush(9)sev_guest_decommission(9)sev_do_cmd(9)
That's the tea, bestie β source/version ./include/linux, date October 2026, page struct sev_data_send_start(9). Bye! πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms