blob: f14a3e7d2bccd11bd1270f181898bec2dae85df3 [file] [log] [blame]
# Copyright 2017 syzkaller project authors. All rights reserved.
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
include <zircon/syscalls.h>
resource zx_vmar[zx_handle]
zx_vmar_allocate(parent_handle zx_vmar, allocate_flags flags[vmar_allocate_flags], offset intptr, size intptr, out ptr[out, zx_vmar], child_addr ptr[out, intptr])
zx_vmar_map(handle zx_vmar, map_flags flags[vmar_map_flags], vmar_offset intptr, vmo zx_vmo, vmo_offset int64, len intptr, mapped_addr ptr[out, intptr])
zx_vmar_unmap(handle zx_vmar, addr vma, len len[addr])
zx_vmar_protect(handle zx_vmar, prot_flags flags[vmar_protect_flags], addr vma, len len[addr])
zx_vmar_destroy(handle zx_vmar)
vmar_allocate_flags = ZX_VM_COMPACT, ZX_VM_SPECIFIC, ZX_VM_CAN_MAP_SPECIFIC, ZX_VM_CAN_MAP_READ, ZX_VM_CAN_MAP_WRITE, ZX_VM_CAN_MAP_EXECUTE
vmar_map_flags = ZX_VM_SPECIFIC, ZX_VM_SPECIFIC_OVERWRITE, ZX_VM_PERM_READ, ZX_VM_PERM_WRITE, ZX_VM_PERM_EXECUTE, ZX_VM_MAP_RANGE
vmar_protect_flags = ZX_VM_PERM_READ, ZX_VM_PERM_WRITE, ZX_VM_PERM_EXECUTE