zx_vmar_destroy

摘要

销毁虚拟内存地址区域。

声明

#include <zircon/syscalls.h>

zx_status_t zx_vmar_destroy(zx_handle_t handle);

说明

zx_vmar_destroy() 会取消映射指定区域内的所有映射,并销毁该区域的所有子区域。请注意,此操作在逻辑上是递归的。

此操作不会关闭句柄。此 VMAR 的所有未处理句柄都将保留为有效句柄,但对它们执行的所有 VMAR 操作都将失败。

通过 zx_process_create() 获取的根 VMAR 无法销毁。

权限

TODO(https://fxbug.dev/42107318)

返回值

zx_vmar_destroy() 会在成功时返回 ZX_OK

错误

ZX_ERR_ACCESS_DENIED 标识名不包含 ZX_RIGHT_OP_CHILDREN

ZX_ERR_BAD_HANDLE 句柄不是有效句柄。

ZX_ERR_WRONG_TYPE 句柄不是 VMAR 句柄。

ZX_ERR_BAD_STATE 此区域已被销毁。

ZX_ERR_NOT_SUPPORTED handle 是一个根 VMAR。

备注

另请参阅