ibmvmc_send_capabilities(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– ibmvmc_send_capabilities β€” Send VMC Capabilities πŸ’–

okay so this is a page from the Kernel API Manual, section 9 (that's the kernel API section bestie, we're in the big leagues now ✨). Sit down, grab a strawberry drink πŸ“, and let's get into it.


✨ NAME ✨

ibmvmc_send_capabilities β€” Send VMC Capabilities 🫢


πŸŽ€ SYNOPSIS πŸŽ€

int ibmvmc_send_capabilities (struct crq_server_adapter *adapter );

literally that's the whole signature. she's compact, she's iconic, she takes exactly one (1) argument. πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • adapter β€” the crq_server_adapter struct, no cap. that's the one thing you hand her.

🌸 DESCRIPTION 🌸

okay so listen πŸ‘‘ β€” the capabilities message is an administrative message. it gets sent after the CRQ initialization sequence of messages, and its whole job is to exchange VMC capabilities between the management partition and the hypervisor. like a little handshake, but fancy.

the rules are strict, ngl:

  • the management partition must send this message, periodt. no skipping.
  • the hypervisor must respond with the VMC capabilities Response message before the HMC interface message can even begin. the vibe check has to be mutual πŸ’«
  • any HMC interface messages received before the exchange of capabilities has complete are dropped. yeah. literally dropped. πŸ’€ don't send early, it will not work, it's giving "left on read."

πŸ”₯ RETURN πŸ”₯

  • 0 β€” Success ✨ (that's it, that's the whole list. slay.)

🧚 SEE ALSO 🧚

the kernel file lives at ./drivers/misc/ibmvmc.c β€” and here's the whole friend group, go say hi 🫢:

h_request_vmc(9), ibmvmc_handle_event(9), ibmvmc_release_crq_queue(9), ibmvmc_reset_crq_queue(9), crq_queue_next_crq(9), ibmvmc_send_crq(9), alloc_dma_buffer(9), free_dma_buffer(9), ibmvmc_get_valid_hmc_buffer(9), ibmvmc_get_free_hmc_buffer(9), ibmvmc_free_hmc_buffer(9), ibmvmc_count_hmc_buffers(9), ibmvmc_get_free_hmc(9), ibmvmc_return_hmc(9), ibmvmc_send_open(9), ibmvmc_send_close(9), ibmvmc_send_add_buffer_resp(9), ibmvmc_send_rem_buffer_resp(9), ibmvmc_send_msg(9), ibmvmc_open(9), ibmvmc_close(9), ibmvmc_read(9), ibmvmc_poll(9), ibmvmc_write(9), ibmvmc_setup_hmc(9), ibmvmc_ioctl_sethmcid(9), ibmvmc_ioctl_query(9), ibmvmc_ioctl_requestvmc(9), ibmvmc_ioctl(9), ibmvmc_add_buffer(9), ibmvmc_rem_buffer(9), ibmvmc_process_capabilities(9), ibmvmc_validate_hmc_session(9), ibmvmc_reset(9), ibmvmc_reset_task(9), ibmvmc_process_open_resp(9), ibmvmc_process_close_resp(9), ibmvmc_crq_process(9), ibmvmc_handle_crq_init(9), ibmvmc_handle_crq(9), ibmvmc_init_crq_queue(9)


and that's the page!! mwah πŸ’‹ this one ships out of ./drivers/misc and it's dated October 2026 β€” mark your calendars bestie, she's timeless πŸ’œπŸŒˆβ­

πŸ“¦ where this page comes from