zx_vmo_set_size


英文原文快照


名称

vmo_get_size —— 调整VMO对象的大小

概要

  1. #include <zircon/syscalls.h>
  2. zx_status_t zx_vmo_set_size(zx_handle_t handle, uint64_t size);

描述

vmo_set_size() 的功能是设置VMO对象新的大小。

实际大小将向上舍入到下一页边界位置的代销。 对vmo_get_size() 的后续调用将返回此向上舍入后的大小值。

权限

TODO(ZX-2399)

返回值

vmo_set_size() 调用成功则返回ZX_OK,如果发生错误,则返回负的错误码。

错误码

ZX_ERR_BAD_HANDLEhandle是无效句柄。

ZX_ERR_WRONG_TYPEhandle不是VMO类型句柄。

ZX_ERR_ACCESS_DENIEDhandle缺少ZX_RIGHT_WRITE权限。

ZX_ERR_UNAVAILABLE:VMO是使用ZX_VMO_NON_RESIZABLE标志位创建的对象,因而无法更改大小。

ZX_ERR_OUT_OF_RANGE:请求调整的大小太大。

ZX_ERR_NO_MEMORY:由于缺少系统内存而导致的失败。

另见

vmo_create, vmo_clone, vmo_read, vmo_write, vmo_get_size, vmo_op_range.