STRUCT KVMPPC_GS_MSG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct kvmppc_gs_msg πŸ’–

okay bestie, welcome to the <pink>Kernel API Manual</pink> entry for struct kvmppc_gs_msg β€” like, the guest state message era, and honestly it's giving main character energy πŸŽ€


✨ NAME ✨

struct kvmppc_gs_msg β€” literally a guest state message, no cap πŸ’…


🌸 SYNOPSIS 🌸

struct kvmppc_gs_msg {
    struct kvmppc_gs_bitmap bitmap;
    struct kvmppc_gs_msg_ops *ops;
    unsigned long flags;
    void *data;
 };

Yes bestie, copy it exactly like that, spaces and all, iykyk 🫢


πŸ¦‹ Members πŸ¦‹

  • bitmap β€” the guest state ids that should be included ✨ like, this is the guest list for the guest state party
  • ops β€” modify message behavior for reading and writing to buffers πŸ”₯ these are the vibes that decide how reading and writing actually goes down
  • flags β€” host wide, guest wide or thread wide πŸ‘‘ so yeah, scope check: is this a host thing, a guest thing, or a thread thing?
  • data β€” location where buffer data will be written to or from πŸ’– the actual spot where the buffer data lands (or gets scooped up from)

🧚 Description 🧚

So a guest state message is what allows flexibility in sending in receiving data in a guest state buffer format 🌈 like it's flexible, periodt. That's the whole ~vibe~ of it πŸ“


πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./arch/powerpc/include/asm/guest-state-buffer.h β€” and bestie, here comes the whole friend group, every single one of them, not skipping a single name πŸ™ˆ:

struct kvmppc_gs_part_table(9), struct kvmppc_gs_proc_table(9), struct kvmppc_gs_buff_info(9), struct kvmppc_gs_header(9), struct kvmppc_gs_elem(9), struct kvmppc_gs_buff(9), struct kvmppc_gs_bitmap(9), struct kvmppc_gs_parser(9), struct kvmppc_gs_msg_ops(9), kvmppc_gsb_header(9), kvmppc_gsb_data(9), kvmppc_gsb_len(9), kvmppc_gsb_capacity(9), kvmppc_gsb_paddress(9), kvmppc_gsb_nelems(9), kvmppc_gsb_reset(9), kvmppc_gsb_data_len(9), kvmppc_gsb_data_cap(9), kvmppc_gsb_for_each_elem(9), kvmppc_gse_iden(9), kvmppc_gse_len(9), kvmppc_gse_total_len(9), kvmppc_gse_total_size(9), kvmppc_gse_data(9), kvmppc_gse_ok(9), kvmppc_gse_next(9), kvmppc_gse_for_each_elem(9), kvmppc_gse_put_be32(9), kvmppc_gse_put_u32(9), kvmppc_gse_put_be64(9), kvmppc_gse_put_u64(9), __kvmppc_gse_put_reg(9), kvmppc_gse_put_vector128(9), kvmppc_gse_put_part_table(9), kvmppc_gse_put_proc_table(9), kvmppc_gse_put_buff_info(9), kvmppc_gse_get_be32(9), kvmppc_gse_get_u32(9), kvmppc_gse_get_be64(9), kvmppc_gse_get_u64(9), kvmppc_gse_get_vector128(9), kvmppc_gsbm_zero(9), kvmppc_gsbm_fill(9), kvmppc_gsbm_for_each(9), kvmppc_gsp_for_each(9), kvmppc_gsm_for_each(9), kvmppc_gsm_include(9), kvmppc_gsm_includes(9), kvmppc_gsb_receive_data(9), kvmppc_gsb_send_data(9)


okay that's the whole thing, and before you close the tab: this came from ./arch/powerpc/include/asm, dated October 2026, in the <pink>Kernel API Manual</pink> β€” slay, you're officially caught up bestie πŸ’œπŸ¦‹βœ¨

πŸ“¦ where this page comes from