функция обратного вызова FN_VMB_CHANNEL_MAP_GPADL (vmbuskernelmodeclientlibapi.h)
[Некоторые сведения связаны с предварительно выпущенным продуктом, который может быть существенно изменен до его коммерческого выпуска. Корпорация Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых в отношении информации, предоставленной здесь.]
Функция VmbChannelMapGpadl сопоставляет клиентский буфер с физическим адресным пространством на стороне сервера с помощью номера списка дескрипторов гостевого физического адреса (GPADL).
Синтаксис
FN_VMB_CHANNEL_MAP_GPADL FnVmbChannelMapGpadl;
NTSTATUS FnVmbChannelMapGpadl(
VMBCHANNEL Channel,
UINT32 Flags,
UINT32 GpadlHandle,
PMDL *Mdl
)
{...}
Параметры
Channel
Дескриптор канала.
Flags
Флаги. Возможные значения флагов:
Ценность | Значение |
---|---|
|
Сопоставление с доступом только для чтения. |
Если это значение флага не задано, функция пытается сопоставить GPADL для доступа на запись. Если GPADL не был создан с доступом на запись, эта попытка сопоставления завершается ошибкой. Вызывающий объект не предотвращает запись в буфер, если этот флаг задан. Эта схема используется для повышения производительности динамической миграции и создания моментальных снимков.
GpadlHandle
Дескриптор GPADL для сопоставления.
Mdl
Указатель на MDL, описывающий буфер клиента. Этот буфер сопоставляется только с физическим адресным пространством. Вызывающий объект должен выполнить дополнительные действия, чтобы сопоставить его с виртуальным адресным пространством.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если операция выполнена успешно, или соответствующий код ошибки NTSTATUS в противном случае.
Замечания
GPADL должен быть предварительно установлен клиентом, например с помощью функции VmbChannelCreateGpadlFromBuffer.
Одновременно может существовать только одно сопоставление для любого заданного GPADL.
Необходимо связать вызовы этой функции с вызовами функции VmbChannelUnmapGpadl.
Важный
Эта функция вызывается через клиентский интерфейс клиентской библиотеки режима ядра VMBus (KMCL), предоставляемый драйвером шины Vmbkmcl.sys. Эта функция доступна только для сервера из структуры KMCL_SERVER_ONLY_METHODS.
Дополнительные сведения см. в разделе "Примечания" KMCL_SERVER_ONLY_METHODS.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 версии 1803 |
заголовка | vmbuskernelmodeclientlibapi.h |