STRUCT SEV_DATA_RANGE(9)
π struct sev_data_range(9) π
okay so bestie, welcome to the Kernel API Manual, and buckle up because we're talking about struct sev_data_range β the RANGE structure itself. yes, THE range structure. she's small, she's tidy, she's giving "i have three fields and i know how to use them" energy, and honestly? obsessed. π
β¨ NAME β¨
struct sev_data_range β literally the RANGE structure. that's it, that's the name, no cap. π¦
πΈ SYNOPSIS πΈ
here's the whole shape of her, bestie β look at that little struct, so clean:
struct sev_data_range {
u64 base;
u32 page_count;
u32 rsvd;
};
three members. that's the entire vibe. iykyk. β¨
π Members π
okay so member by member, no skipping, we do not leave anybody out:
baseβ the system physical address of the first byte of the range. like, where the range actually starts in system physical memory. first byte. main character byte. πpage_countβ the number of 4KB pages in this range. note the flex: pages are counted in 4KB units, so this is the count you give it, fr fr. πrsvdβ reserved. that's it. it's reserved. hands off, don't be weird about it. π
π¦ SEE ALSO π¦
bestie there are SO many siblings, she's got a whole extended family in the kernel file ./include/linux/psp-sev.h. here's the full roll call, every single one, absolutely no one left behind:
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_start(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_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)
like i said. big family. go say hi. π«Ά
and that's the whole page, bestie β sourced from ./include/linux, dated October 2026, and officially titled struct sev_data_range(9). slay, goodbye, drink some water πβ¨
π¦ 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