From 8b7f36991e5a1248a66a9ae8a16f6bef785ca064 Mon Sep 17 00:00:00 2001 From: Marina Ciocea <111010340+cdmarina@users.noreply.github.com> Date: Mon, 15 Aug 2022 19:34:55 -0400 Subject: sys/fuchsia: update the vmo system calls (#3311) Co-authored-by: Marina Ciocea --- sys/fuchsia/vmo.txt | 24 ++++++++++++++++++++++++ sys/fuchsia/vmos.txt | 28 ---------------------------- 2 files changed, 24 insertions(+), 28 deletions(-) create mode 100644 sys/fuchsia/vmo.txt delete mode 100644 sys/fuchsia/vmos.txt (limited to 'sys') diff --git a/sys/fuchsia/vmo.txt b/sys/fuchsia/vmo.txt new file mode 100644 index 000000000..dfa1a68cd --- /dev/null +++ b/sys/fuchsia/vmo.txt @@ -0,0 +1,24 @@ +# 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 +include + +resource zx_vmo[zx_handle] + +zx_vmo_create(size int64, options flags[vmo_create_options], out ptr[out, zx_vmo]) +zx_vmo_read(handle zx_vmo, buffer ptr[out, array[int8]], offset int64, buffer_size len[buffer]) +zx_vmo_write(handle zx_vmo, buffer ptr[in, array[int8]], offset int64, buffer_size len[buffer]) +zx_vmo_get_size(handle zx_vmo, size ptr[out, int64]) +zx_vmo_set_size(handle zx_vmo, size int64) +zx_vmo_op_range(handle zx_vmo, op flags[vmo_op_range_options], offset int64, size int64, buffer const[0], buffer_size const[0]) +zx_vmo_create_child(handle zx_vmo, options flags[vmo_create_child_options], offset int64, size int64, out ptr[out, zx_vmo]) +zx_vmo_set_cache_policy(handle zx_vmo, cache_policy flags[vmo_cache_policy]) +zx_vmo_replace_as_executable(handle zx_vmo, vmex zx_handle, out ptr[out, zx_vmo]) +zx_vmo_create_contiguous(bti zx_handle, size int64, alignment_log2 int32, out ptr[out, zx_vmo]) +zx_vmo_create_physical(handle zx_vmo, paddr ptr[in, int64], size int64, out ptr[out, zx_vmo]) + +vmo_create_options = 0, ZX_VMO_RESIZABLE, ZX_VMO_DISCARDABLE +vmo_op_range_options = ZX_VMO_OP_COMMIT, ZX_VMO_OP_DECOMMIT, ZX_VMO_OP_ZERO, ZX_VMO_OP_LOCK, ZX_VMO_OP_TRY_LOCK, ZX_VMO_OP_UNLOCK, ZX_VMO_OP_CACHE_SYNC, ZX_VMO_OP_CACHE_INVALIDATE, ZX_VMO_OP_CACHE_CLEAN, ZX_VMO_OP_CACHE_CLEAN_INVALIDATE, ZX_VMO_OP_DONT_NEED, ZX_VMO_OP_ALWAYS_NEED +vmo_create_child_options = ZX_VMO_CHILD_SNAPSHOT, ZX_VMO_CHILD_SNAPSHOT_AT_LEAST_ON_WRITE, ZX_VMO_CHILD_SLICE, ZX_VMO_CHILD_RESIZABLE, ZX_VMO_CHILD_NO_WRITE +vmo_cache_policy = ZX_CACHE_POLICY_CACHED, ZX_CACHE_POLICY_UNCACHED, ZX_CACHE_POLICY_UNCACHED_DEVICE, ZX_CACHE_POLICY_WRITE_COMBINING diff --git a/sys/fuchsia/vmos.txt b/sys/fuchsia/vmos.txt deleted file mode 100644 index 8fd0428c4..000000000 --- a/sys/fuchsia/vmos.txt +++ /dev/null @@ -1,28 +0,0 @@ -# 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 -include - -resource zx_vmo[zx_handle] - -zx_vmo_create(size int64, options flags[vmo_create_options], out ptr[out, zx_vmo]) -zx_vmo_create_child(handle zx_vmo, options flags[vmo_create_child_options], offset int64, size int64, out ptr[out, zx_vmo]) -zx_vmo_read(handle zx_vmo, data ptr[out, array[int8]], offset int64, len intptr) -zx_vmo_write(handle zx_vmo, data ptr[in, array[int8]], offset int64, len intptr) -zx_vmo_get_size(handle zx_vmo, size ptr[out, int64]) -zx_vmo_set_size(handle zx_vmo, size int64) -zx_vmo_op_range$ZX_VMO_OP_COMMIT(handle zx_vmo, op const[ZX_VMO_OP_COMMIT], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_op_range$ZX_VMO_OP_DECOMMIT(handle zx_vmo, op const[ZX_VMO_OP_DECOMMIT], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_op_range$ZX_VMO_OP_CACHE_SYNC(handle zx_vmo, op const[ZX_VMO_OP_CACHE_SYNC], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_op_range$ZX_VMO_OP_CACHE_INVALIDATE(handle zx_vmo, op const[ZX_VMO_OP_CACHE_INVALIDATE], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN(handle zx_vmo, op const[ZX_VMO_OP_CACHE_CLEAN], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN_INVALIDATE(handle zx_vmo, op const[ZX_VMO_OP_CACHE_CLEAN_INVALIDATE], offset int64, size int64, data const[0], buffer_size const[0]) -zx_vmo_replace_as_executable(handle zx_vmo, res const[ZX_HANDLE_INVALID], out ptr[out, zx_vmo]) - -# Not public: -zx_vmo_set_cache_policy(handle zx_vmo, cache_policy flags[vmo_cache_policy]) - -vmo_create_options = 0 -vmo_create_child_options = ZX_VMO_CHILD_COPY_ON_WRITE -vmo_cache_policy = ZX_CACHE_POLICY_CACHED, ZX_CACHE_POLICY_UNCACHED, ZX_CACHE_POLICY_UNCACHED_DEVICE, ZX_CACHE_POLICY_WRITE_COMBINING -- cgit mrf-deployment