sev_module_init(9)
π sev_module_init(9) β the Kernel API Manual glow-up π
okay so bestie, we're in the Kernel API Manual today and the star of the show is sev_module_init(9) β yes that's a section-9 manpage, yes we're reading kernel API docs for fun now, that's just the era we're in π
β¨ NAME β¨
sev_module_init β perform PSP SEV module initialization
like, literally the function that kicks off the whole PSP SEV module init situation π₯
π¦ SYNOPSIS π¦
int sev_module_init (void );
no cap, that's the whole signature. int goes in, void goes in the parens, good vibes come out (hopefully) πΈ
π ARGUMENTS π
voidβ no arguments. none. zero. the void is the vibe. she takes nothing and she gives everything π«Ά
β RETURN β
0β if the PSP module is successfully initialized. slay π- negative value β if the PSP module initialization fails π not the vibe, but at least you know
π SEE ALSO π
so many friends, so many structs, it's giving family reunion π
The kernel file ./include/linux/psp-sev.h β go say hi to her:
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(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)
and the function besties:
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)
periodt. that's the whole friend group π
ngl bestie, this is kernel-land API documentation β read it, love it, but don't expect it to do your laundry π
this iconic little page lives at ./include/linux, dated October 2026, and it's part of the Kernel API Manual β mwah, go read the source, ily, 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