aboutsummaryrefslogtreecommitdiffstats
path: root/sys/fuchsia
diff options
context:
space:
mode:
authorMarina Ciocea <111010340+cdmarina@users.noreply.github.com>2022-08-15 19:34:55 -0400
committerGitHub <noreply@github.com>2022-08-15 16:34:55 -0700
commit8b7f36991e5a1248a66a9ae8a16f6bef785ca064 (patch)
tree1042fa086f3738006dfbc814cbe78a7257705479 /sys/fuchsia
parent8dfcaa3d2828a113ae780da01f5f73ad64710e31 (diff)
sys/fuchsia: update the vmo system calls (#3311)
Co-authored-by: Marina Ciocea <marinaciocea@google.com>
Diffstat (limited to 'sys/fuchsia')
-rw-r--r--sys/fuchsia/vmo.txt24
-rw-r--r--sys/fuchsia/vmos.txt28
2 files changed, 24 insertions, 28 deletions
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 <zircon/syscalls.h>
+include <zircon/types.h>
+
+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 <zircon/syscalls.h>
-include <zircon/types.h>
-
-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