guest_transl...ess_with_key(9)
π guest_transl...ess_with_key(9) β like, the Kernel API Manual glow-up β¨
okay so bestie, welcome to the Kernel API Manual entry for guest_transl...ess_with_key(9) β yes the title is truncated with ... and no we don't know why, it's giving mysterious main character energy π but the actual function is guest_translate_address_with_key and she is iconic. Let's get into it fr fr.
β¨ NAME β¨
guest_translate_address_with_key β she translates a guest logical address into a guest absolute address. that's it, that's the whole vibe π«
π¦ SYNOPSIS π¦
int guest_translate_address_with_key (struct kvm_vcpu *vcpu , unsigned
long gva , u8 ar , unsigned long *gpa , enum gacc_mode mode , u8
access_key );
like, copy that exactly bestie, no cap, every character matters π
πΈ ARGUMENTS πΈ
vcpuβ the virtual cpu, aka the little guy we're doing all this for πgvaβ Guest virtual address, the address we start with πarβ Access register, yes it's there, yes it matters β¨gpaβ Guest physical address, this is where the translated result lands π―modeβ Translation access mode, the vibe check for how we're translating πaccess_keyβ the access key that gets matched against the storage key π
π DESCRIPTION π
so the parameter semantics are literally the same as the ones from guest_translate. same energy, same meanings, no notes π«Ά
and the important part: the memory contents at the guest address are not changed. she's just translating, not touching anything. purely vibes π
π₯ NOTE π₯
okay so this is the part you actually need to read bestie π the IPTE lock is not taken during this function β so the caller has to take care of that themselves. no hand-holding, no auto-lock, it's giving "you're on your own, good luck, slay" π don't forget it fr fr.
β SEE ALSO β
Kernel file ./arch/s390/kvm/s390/gaccess.c, plus the whole friend group:
guest_translate_gva(9)guest_range_to_gpas(9)__cmpxchg_with_key(9)cmpxchg_guest_abs_with_key(9)check_gva_range(9)check_gpa_range(9)kvm_s390_check_low_addr_prot_real(9)walk_guest_tables(9)__gaccess_shadow_fault(9)
and that's the page bestie π this one lives in ./arch/s390/kvm/s390, dated October 2026, and the header/footer both say guest_transl...ess_with_key(9) because it's committed to the truncated-name aesthetic π mwah, go translate something π¦β¨
π¦ 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