Documentation: hyperv: Update documentation for sending VMBus packets

The functions for sending VMBus packets have changed.
vmbus_sendpacket_mpb_desc() can target multiple ranges, and
vmbus_sendpacket_pagebuffer() has been removed. vmbus_sendpacket_getid()
has been added. Update the documentation accordingly.

Fixes: 45a442fe36 ("Drivers: hv: vmbus: Remove vmbus_sendpacket_pagebuffer()")
Cc: stable@vger.kernel.org
Signed-off-by: Michael Kelley <mhklinux@outlook.com>
Reviewed-by: Naman Jain <namjain@linux.microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
This commit is contained in:
Michael Kelley 2026-10-12 18:43:54 -07:00 committed by Wei Liu
parent dd57772e36
commit 6a3d77a0a8

View File

@ -141,14 +141,15 @@ Three functions exist to send VMBus channel messages:
1. vmbus_sendpacket(): Control-only messages and messages with
embedded data -- no GPAs
2. vmbus_sendpacket_pagebuffer(): Message with list of GPAs
identifying data to transfer. An offset and length is
associated with each GPA so that multiple discontinuous areas
of guest memory can be targeted.
3. vmbus_sendpacket_mpb_desc(): Message with list of GPAs
identifying data to transfer. A single offset and length is
associated with a list of GPAs. The GPAs must describe a
single logical area of guest memory to be targeted.
2. vmbus_sendpacket_getid(): Similar to vmbus_sendpacket() but returns
a transaction ID that is matched against a reply from the Hyper-V
host. Useful when the struct completion (or other rendezvous data)
must reside on the caller's stack. By invalidating the transaction
ID before exiting the function due to a timeout or other error, a
late arriving interrupt is assured to not trash the stack.
3. vmbus_sendpacket_mpb_desc(): Message with one or more data ranges
to target. Each range consists of a single offset and length plus
a list of GPAs that describe a logical area of guest memory.
Historically, Linux guests have trusted Hyper-V to send well-formed
and valid messages, and Linux drivers for synthetic devices did not