From 53199d6e8aee5f0ebd3775d2b1c674f4e6e64e2b Mon Sep 17 00:00:00 2001 From: Marco Vanotti Date: Mon, 22 Apr 2019 11:08:29 -0700 Subject: Update syscalls (#1116) * sys/fuchsia: update all syscalls. This commit modifies all the existing syscalls definitions to match more closely the documentation in the Fuchsia repo. * run make extract && make generate --- sys/fuchsia/channels.txt | 2 +- sys/fuchsia/fidl_cobalt.txt | 17 +++ sys/fuchsia/fifos.txt | 4 +- sys/fuchsia/futexes.txt | 6 +- sys/fuchsia/gen/amd64.go | 211 ++++++++++++++++++++++++++++++++------ sys/fuchsia/gen/arm64.go | 211 ++++++++++++++++++++++++++++++++------ sys/fuchsia/handles.txt | 2 + sys/fuchsia/hypervisor_guests.txt | 6 +- sys/fuchsia/objects.txt | 138 ++++++++++++++++--------- sys/fuchsia/objects_amd64.const | 8 ++ sys/fuchsia/objects_arm64.const | 8 ++ sys/fuchsia/ports.txt | 4 +- sys/fuchsia/processes.txt | 4 +- sys/fuchsia/sockets.txt | 6 +- sys/fuchsia/sys.txt | 2 +- sys/fuchsia/tasks.txt | 4 + sys/fuchsia/tasks_amd64.const | 1 + sys/fuchsia/tasks_arm64.const | 1 + sys/fuchsia/threads.txt | 6 +- sys/fuchsia/time.txt | 1 + sys/fuchsia/timers.txt | 2 +- sys/fuchsia/vmos.txt | 7 +- sys/fuchsia/vmos_amd64.const | 2 + sys/fuchsia/vmos_arm64.const | 2 + 24 files changed, 517 insertions(+), 138 deletions(-) (limited to 'sys/fuchsia') diff --git a/sys/fuchsia/channels.txt b/sys/fuchsia/channels.txt index 53c23f64a..7d22cca59 100644 --- a/sys/fuchsia/channels.txt +++ b/sys/fuchsia/channels.txt @@ -5,8 +5,8 @@ include resource zx_chan[zx_handle] -zx_channel_create(options const[0], out0 ptr[out, zx_chan], out1 ptr[out, zx_chan]) zx_channel_call(handle zx_chan, options const[0], deadline zx_time, args ptr[in, zx_channel_call_args], actual_bytes ptr[out, int32], actual_handles ptr[out, int32]) +zx_channel_create(options const[0], out0 ptr[out, zx_chan], out1 ptr[out, zx_chan]) zx_channel_read(handle zx_chan, options flags[chan_read_options], bytes ptr[out, array[int8]], handles ptr[out, zx_handle], num_bytes len[bytes], num_handles len[handles], actual_bytes ptr[out, int32], actual_handles ptr[out, int32]) zx_channel_write(handle zx_chan, options const[0], bytes ptr[in, array[int8]], num_bytes len[bytes], handles ptr[in, array[zx_handle]], num_handles len[handles]) diff --git a/sys/fuchsia/fidl_cobalt.txt b/sys/fuchsia/fidl_cobalt.txt index b8ed33769..b840198e8 100644 --- a/sys/fuchsia/fidl_cobalt.txt +++ b/sys/fuchsia/fidl_cobalt.txt @@ -745,12 +745,29 @@ fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles { void void } [packed] +fuchsia_cobalt_SystemDataUpdaterSetChannelRequest { + hdr fidl_message_header[938569873] + current_channelInLine fidl_string + target_channelInLine fidl_string + current_channelOutOfLine fidl_aligned[stringnoz] + target_channelOutOfLine fidl_aligned[stringnoz] +} [packed] + +fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles { + void void +} [packed] + +fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles { + void void +} [packed] + resource zx_chan_fuchsia_cobalt_SystemDataUpdater_client[zx_chan] resource zx_chan_fuchsia_cobalt_SystemDataUpdater_server[zx_chan] zx_channel_create$fuchsia_cobalt_SystemDataUpdater(options const[0], out0 ptr[out, zx_chan_fuchsia_cobalt_SystemDataUpdater_client], out1 ptr[out, zx_chan_fuchsia_cobalt_SystemDataUpdater_server]) fdio_service_connect$fuchsia_cobalt_SystemDataUpdater(path ptr[in, string["/svc/fuchsia.cobalt.SystemDataUpdater"]], handle zx_chan_fuchsia_cobalt_SystemDataUpdater_server) zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetExperimentState(handle zx_chan_fuchsia_cobalt_SystemDataUpdater_client, options const[0], deadline zx_time, args ptr[in, fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest, fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles]], actual_bytes ptr[out, int32], actual_handles ptr[out, int32]) +zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetChannel(handle zx_chan_fuchsia_cobalt_SystemDataUpdater_client, options const[0], deadline zx_time, args ptr[in, fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]], actual_bytes ptr[out, int32], actual_handles ptr[out, int32]) fuchsia_cobalt_ControllerRequestSendSoonRequest { hdr fidl_message_header[148310311] diff --git a/sys/fuchsia/fifos.txt b/sys/fuchsia/fifos.txt index 98a348224..cb45859f4 100644 --- a/sys/fuchsia/fifos.txt +++ b/sys/fuchsia/fifos.txt @@ -6,7 +6,7 @@ include resource zx_fifo[zx_handle] zx_fifo_create(elem_count flags[fifo_elem_count], elem_size int32, options const[0], out0 ptr[out, zx_fifo], out1 ptr[out, zx_fifo]) -zx_fifo_read(handle zx_fifo, buffer ptr[out, array[int8]], size len[buffer], num_entries_read ptr[out, int32]) -zx_fifo_write(handle zx_fifo, buffer ptr[in, array[int8]], size len[buffer], num_entries_written ptr[out, int32]) +zx_fifo_read(handle zx_fifo, size len[buffer], buffer ptr[out, array[int8]], num_entries_read ptr[out, int32]) +zx_fifo_write(handle zx_fifo, size len[buffer], buffer ptr[in, array[int8]], num_entries_written ptr[out, int32]) fifo_elem_count = 0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 diff --git a/sys/fuchsia/futexes.txt b/sys/fuchsia/futexes.txt index 3177472ce..cd9da4595 100644 --- a/sys/fuchsia/futexes.txt +++ b/sys/fuchsia/futexes.txt @@ -4,6 +4,6 @@ include # TODO: limit value_ptr space somehow to make matches more frequent. -zx_futex_wait(value_ptr ptr[in, int32], current_value int32, deadline zx_time) -zx_futex_wake(value_ptr ptr[in, int32], wake_count intptr) -zx_futex_requeue(value_ptr ptr[in, int32], wake_count intptr, current_value int32, requeue_ptr ptr[in, int32], requeue_count intptr) +zx_futex_wait(value_ptr ptr[in, int32], current_value int32, new_futext_owner zx_handle, deadline zx_time) +zx_futex_wake(value_ptr ptr[in, int32], wake_count int32) +zx_futex_requeue(value_ptr ptr[in, int32], wake_count int32, current_value int32, requeue_ptr ptr[in, int32], requeue_count int32, new_requeue_owner zx_handle) diff --git a/sys/fuchsia/gen/amd64.go b/sys/fuchsia/gen/amd64.go index f98044f96..f95ec065c 100644 --- a/sys/fuchsia/gen/amd64.go +++ b/sys/fuchsia/gen/amd64.go @@ -500,6 +500,16 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "rd_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "rd_bytes"}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "rd_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "rd_handles"}, }}}, + {Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]", TypeSize: 48}, Fields: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_bytes", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "rd_bytes", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 65536, ArgDir: 1}, Kind: 1, RangeBegin: 65536, RangeEnd: 65536}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "rd_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "wr_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "wr_bytes"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "wr_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "wr_handles"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "rd_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "rd_bytes"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "rd_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "rd_handles"}, + }}}, {Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest, fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest, fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles]", TypeSize: 48}, Fields: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_bytes", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles"}}}, @@ -2350,6 +2360,12 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ordinal", TypeSize: 4}}, Val: 930272946}, }}}, + {Key: StructKey{Name: "fidl_message_header[938569873]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_message_header[938569873]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "txid", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ordinal", TypeSize: 4}}, Val: 938569873}, + }}}, {Key: StructKey{Name: "fidl_message_header[946011321]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_message_header[946011321]", TypeSize: 16}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "txid", TypeSize: 4}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 4}}}, @@ -3020,6 +3036,19 @@ var structDescs_amd64 = []*KeyedStruct{ {Key: StructKey{Name: "fuchsia_cobalt_ProjectProfileOutOfLine"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_ProjectProfileOutOfLine"}, Fields: []Type{ &StructType{Key: StructKey{Name: "fuchsia_mem_BufferOutOfLine"}, FldName: "configOutOfLine"}, }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "fidl_message_header[938569873]"}, FldName: "hdr"}, + &StructType{Key: StructKey{Name: "fidl_string"}, FldName: "current_channelInLine"}, + &StructType{Key: StructKey{Name: "fidl_string"}, FldName: "target_channelInLine"}, + &StructType{Key: StructKey{Name: "fidl_aligned[stringnoz]"}, FldName: "current_channelOutOfLine"}, + &StructType{Key: StructKey{Name: "fidl_aligned[stringnoz]"}, FldName: "target_channelOutOfLine"}, + }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", ArgDir: 1}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void", ArgDir: 1}, Kind: 1}, + }}}, {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "fidl_message_header[1903807121]"}, FldName: "hdr"}, &StructType{Key: StructKey{Name: "fidl_vector"}, FldName: "experimentsInLine"}, @@ -4706,6 +4735,10 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "zx_exception_header", Dir: 1}, FldName: "header"}, &UnionType{Key: StructKey{Name: "zx_exception_context", Dir: 1}, FldName: "context"}, }}}, + {Key: StructKey{Name: "zx_info_bti", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_bti", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "minimum_contiguity", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "aspace_size", TypeSize: 8, ArgDir: 1}}}, + }}}, {Key: StructKey{Name: "zx_info_cpu_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_cpu_stats", TypeSize: 120, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "cpu_number", TypeSize: 4, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4, ArgDir: 1}}}, @@ -4732,7 +4765,17 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "props", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }}}, - {Key: StructKey{Name: "zx_info_kmem_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_kmem_stats", TypeSize: 64, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_handle_count", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_handle_count", TypeSize: 4, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "count", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "zx_info_job", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_job", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "return_code", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "exited", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "kill_on_oom", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "debugger_attached", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 5}}, IsPad: true}, + }}}, + {Key: StructKey{Name: "zx_info_kmem_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_kmem_stats", TypeSize: 72, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "total_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "free_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "wired_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4740,6 +4783,7 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "free_heap_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "vmo_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "mmu_overhead_bytes", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ipc_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "other_bytes", TypeSize: 8, ArgDir: 1}}}, }}}, {Key: StructKey{Name: "zx_info_maps", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_maps", TypeSize: 88, ArgDir: 1}, Fields: []Type{ @@ -4757,18 +4801,31 @@ var structDescs_amd64 = []*KeyedStruct{ &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", FldName: "vmo_koid", TypeSize: 8, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "committed_pages", TypeSize: 8, ArgDir: 1}}}, }}}, - {Key: StructKey{Name: "zx_info_process", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process", TypeSize: 8, ArgDir: 1}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "return_code", TypeSize: 4, ArgDir: 1}}}, + {Key: StructKey{Name: "zx_info_process", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "return_code", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "started", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "exited", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "debugger_attached", TypeSize: 1, ArgDir: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 1}}, IsPad: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 5}}, IsPad: true}, + }}}, + {Key: StructKey{Name: "zx_info_process_handle_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process_handle_stats", TypeSize: 256, ArgDir: 1}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "handle_count", TypeSize: 256, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}, Kind: 1, RangeBegin: 64, RangeEnd: 64}, }}}, - {Key: StructKey{Name: "zx_info_resource", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_resource", TypeSize: 24, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_resource", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_resource", TypeSize: 56, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "base", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8, ArgDir: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 32, ArgDir: 1}, Kind: 1, RangeBegin: 32, RangeEnd: 32}, + }}}, + {Key: StructKey{Name: "zx_info_socket", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_socket", TypeSize: 48, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "low", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "high", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_max", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_size", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_available", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "tx_buf_max", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "tx_buf_size", TypeSize: 8, ArgDir: 1}}}, }}}, {Key: StructKey{Name: "zx_info_task_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_task_stats", TypeSize: 32, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "mem_mapped_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4787,7 +4844,7 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "base", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8, ArgDir: 1}}}, }}}, - {Key: StructKey{Name: "zx_info_vmo", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_vmo", TypeSize: 104, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_vmo", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_vmo", TypeSize: 112, ArgDir: 1}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", FldName: "koid", TypeSize: 8, ArgDir: 1}}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 32, ArgDir: 1}, Kind: 1, RangeBegin: 32, RangeEnd: 32}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4799,6 +4856,8 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "committed_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "handle_rights", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "create_options", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "cache_policy", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }}}, {Key: StructKey{Name: "zx_policy_basic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_policy_basic", TypeSize: 8}, Fields: []Type{ @@ -5515,6 +5574,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_bytes", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_handles", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, + {Name: "zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetChannel", CallName: "zx_channel_call", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan_fuchsia_cobalt_SystemDataUpdater_client", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_bytes", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_handles", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, + }}, {Name: "zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetExperimentState", CallName: "zx_channel_call", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan_fuchsia_cobalt_SystemDataUpdater_client", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, @@ -6808,8 +6875,10 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_cprng_draw", CallName: "zx_cprng_draw", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_deadline_after", CallName: "zx_deadline_after", Args: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ns", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}}, {Name: "zx_debuglog_create", CallName: "zx_debuglog_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "log_create_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1073741824}, BitMask: true}, @@ -6845,31 +6914,33 @@ var syscalls_amd64 = []*Syscall{ }}, {Name: "zx_fifo_read", CallName: "zx_fifo_read", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_fifo", FldName: "handle", TypeSize: 4}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "num_entries_read", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_fifo_write", CallName: "zx_fifo_write", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_fifo", FldName: "handle", TypeSize: 4}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "num_entries_written", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_futex_requeue", CallName: "zx_futex_requeue", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "current_value", TypeSize: 4}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "requeue_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "requeue_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "requeue_count", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "new_requeue_owner", TypeSize: 4}}, }}, {Name: "zx_futex_wait", CallName: "zx_futex_wait", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "current_value", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "new_futext_owner", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, }}, {Name: "zx_futex_wake", CallName: "zx_futex_wake", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}}, }}, {Name: "zx_futex_wake_handle_close_thread_exit", CallName: "zx_futex_wake_handle_close_thread_exit", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, @@ -6880,14 +6951,14 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_guest_create", CallName: "zx_guest_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "physmem_vmo", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "guest", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", TypeSize: 8, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_guest_set_trap", CallName: "zx_guest_set_trap", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", FldName: "guest", TypeSize: 8}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "vaddr", TypeSize: 8}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "len", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "port", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}}, }}, @@ -6935,6 +7006,14 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_nanosleep", CallName: "zx_nanosleep", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, }}, + {Name: "zx_object_get_info$ZX_INFO_BTI", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "resource_handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 20}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_bti", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_CPU_STATS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 16}, @@ -6951,6 +7030,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_HANDLE_COUNT", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 19}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_handle_count", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_HANDLE_VALID", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 1}, @@ -6959,6 +7046,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_JOB", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 24}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_job", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_JOB_CHILDREN", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 8}, @@ -6970,7 +7065,7 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_object_get_info$ZX_INFO_JOB_PROCESSES", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 9}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_thread", Dir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", TypeSize: 8, ArgDir: 1}}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, @@ -6991,6 +7086,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_PROCESS_HANDLE_STATS", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 21}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_process_handle_stats", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_PROCESS_MAPS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 13}, @@ -7023,6 +7126,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_SOCKET", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 22}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_socket", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_TASK_STATS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 12}, @@ -7031,6 +7142,14 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_THREAD", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 10}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_thread", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_THREAD_EXCEPTION_REPORT", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 11}, @@ -7055,17 +7174,20 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_VMO", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 23}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_vmo", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_property", CallName: "zx_object_get_property", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"}, }}, - {Name: "zx_object_set_profile", CallName: "zx_object_set_profile", Args: []Type{ - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "profile", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}}, - }}, {Name: "zx_object_set_property", CallName: "zx_object_set_property", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}}, @@ -7112,13 +7234,11 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet"}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}}, }}, {Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}}, }}, {Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "job", TypeSize: 4}}, @@ -7129,7 +7249,7 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ret_code", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ret_code", TypeSize: 8}}}, }}, {Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}}, @@ -7166,6 +7286,10 @@ var syscalls_amd64 = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "socket_to_share", TypeSize: 4}}, }}, + {Name: "zx_socket_shutdown", CallName: "zx_socket_shutdown", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handlez", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_shutdown_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2, 1}, BitMask: true}, + }}, {Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_write_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4, 2, 1}, BitMask: true}, @@ -7185,6 +7309,16 @@ var syscalls_amd64 = []*Syscall{ &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "key", TypeSize: 8}}, ValuesStart: 1000, ValuesPerProc: 4}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, }}, + {Name: "zx_task_create_exception_channel", CallName: "zx_task_create_exception_channel", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan", TypeSize: 4, ArgDir: 1}}}, + }}, + {Name: "zx_task_resume_from_exception", CallName: "zx_task_resume_from_exception", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "eport", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "task_resume_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2}, BitMask: true}, + }}, {Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, @@ -7198,14 +7332,12 @@ var syscalls_amd64 = []*Syscall{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}, Kind: 2, RangeEnd: 9}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_thread_read_state$0", CallName: "zx_thread_read_state", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "kind", TypeSize: 8}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 144, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}, Kind: 1, RangeBegin: 18, RangeEnd: 18}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, @@ -7239,7 +7371,7 @@ var syscalls_amd64 = []*Syscall{ {Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "slack", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "slack", TypeSize: 8}}}, }}, {Name: "zx_vcpu_create", CallName: "zx_vcpu_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", FldName: "guest", TypeSize: 8}}, @@ -7259,7 +7391,7 @@ var syscalls_amd64 = []*Syscall{ }}, {Name: "zx_vcpu_resume", CallName: "zx_vcpu_resume", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vcpu", FldName: "vcpu", TypeSize: 4}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "port_packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}}, }}, {Name: "zx_vcpu_write_state", CallName: "zx_vcpu_write_state", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vcpu", FldName: "vcpu", TypeSize: 4}}, @@ -7306,7 +7438,7 @@ var syscalls_amd64 = []*Syscall{ }}, {Name: "zx_vmo_clone", CallName: "zx_vmo_clone", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, - &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}}, @@ -7373,7 +7505,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, + {Name: "zx_vmo_replace_as_executable", CallName: "zx_vmo_replace_as_executable", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "res", TypeSize: 8}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_vmo_set_cache_policy", CallName: "zx_vmo_set_cache_policy", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, @@ -7388,7 +7524,6 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, } @@ -7459,27 +7594,35 @@ var consts_amd64 = []ConstValue{ {Name: "ZX_CLOCK_UTC", Value: 1}, {Name: "ZX_EXCEPTION_PORT_DEBUGGER", Value: 1}, {Name: "ZX_HANDLE_INVALID"}, + {Name: "ZX_INFO_BTI", Value: 20}, {Name: "ZX_INFO_CPU_STATS", Value: 16}, {Name: "ZX_INFO_HANDLE_BASIC", Value: 2}, + {Name: "ZX_INFO_HANDLE_COUNT", Value: 19}, {Name: "ZX_INFO_HANDLE_VALID", Value: 1}, + {Name: "ZX_INFO_JOB", Value: 24}, {Name: "ZX_INFO_JOB_CHILDREN", Value: 8}, {Name: "ZX_INFO_JOB_PROCESSES", Value: 9}, {Name: "ZX_INFO_KMEM_STATS", Value: 17}, {Name: "ZX_INFO_PROCESS", Value: 3}, + {Name: "ZX_INFO_PROCESS_HANDLE_STATS", Value: 21}, {Name: "ZX_INFO_PROCESS_MAPS", Value: 13}, {Name: "ZX_INFO_PROCESS_THREADS", Value: 4}, {Name: "ZX_INFO_PROCESS_VMOS", Value: 14}, {Name: "ZX_INFO_RESOURCE", Value: 18}, + {Name: "ZX_INFO_SOCKET", Value: 22}, {Name: "ZX_INFO_TASK_STATS", Value: 12}, + {Name: "ZX_INFO_THREAD", Value: 10}, {Name: "ZX_INFO_THREAD_EXCEPTION_REPORT", Value: 11}, {Name: "ZX_INFO_THREAD_STATS", Value: 15}, {Name: "ZX_INFO_VMAR", Value: 7}, + {Name: "ZX_INFO_VMO", Value: 23}, {Name: "ZX_INTERRUPT_VIRTUAL", Value: 16}, {Name: "ZX_JOB_POL_ABSOLUTE", Value: 1}, {Name: "ZX_JOB_POL_BASIC"}, {Name: "ZX_JOB_POL_RELATIVE"}, {Name: "ZX_LOG_FLAG_READABLE", Value: 1073741824}, {Name: "ZX_MAX_NAME_LEN", Value: 32}, + {Name: "ZX_OBJ_TYPE_UPPER_BOUND", Value: 64}, {Name: "ZX_PKT_TYPE_USER"}, {Name: "ZX_POL_ACTION_ALLOW"}, {Name: "ZX_POL_ACTION_DENY", Value: 1}, @@ -7496,6 +7639,7 @@ var consts_amd64 = []ConstValue{ {Name: "ZX_POL_NEW_VMO", Value: 4}, {Name: "ZX_POL_VMAR_WX", Value: 2}, {Name: "ZX_POL_WRONG_OBJECT", Value: 1}, + {Name: "ZX_RESUME_TRY_NEXT", Value: 2}, {Name: "ZX_RIGHT_DESTROY", Value: 512}, {Name: "ZX_RIGHT_DUPLICATE", Value: 1}, {Name: "ZX_RIGHT_ENUMERATE", Value: 256}, @@ -7523,6 +7667,7 @@ var consts_amd64 = []ConstValue{ {Name: "ZX_TIMER_SLACK_LATE", Value: 2}, {Name: "ZX_TIME_INFINITE", Value: 9223372036854775807}, {Name: "ZX_VMO_CLONE_COPY_ON_WRITE", Value: 1}, + {Name: "ZX_VMO_CLONE_NON_RESIZEABLE", Value: 2}, {Name: "ZX_VMO_NON_RESIZABLE", Value: 1}, {Name: "ZX_VMO_OP_CACHE_CLEAN", Value: 8}, {Name: "ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", Value: 9}, @@ -7570,4 +7715,4 @@ var consts_amd64 = []ConstValue{ {Name: "fuchsia_power_Status_OK"}, } -const revision_amd64 = "d6d650c4d4b7bf6dffb3ebb9e87b1519c0317583" +const revision_amd64 = "46822b1ef67dc6c2ddd23bb8b768fe16b2f89c95" diff --git a/sys/fuchsia/gen/arm64.go b/sys/fuchsia/gen/arm64.go index 809ef0d77..6ab6ab992 100644 --- a/sys/fuchsia/gen/arm64.go +++ b/sys/fuchsia/gen/arm64.go @@ -500,6 +500,16 @@ var structDescs_arm64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "rd_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "rd_bytes"}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "rd_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "rd_handles"}, }}}, + {Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]", TypeSize: 48}, Fields: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_bytes", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "rd_bytes", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 65536, ArgDir: 1}, Kind: 1, RangeBegin: 65536, RangeEnd: 65536}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "rd_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "wr_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "wr_bytes"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "wr_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "wr_handles"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "rd_num_bytes", TypeSize: 4}}, BitSize: 8, Buf: "rd_bytes"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize4", FldName: "rd_num_handles", TypeSize: 4}}, BitSize: 32, Buf: "rd_handles"}, + }}}, {Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest, fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest, fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetExperimentStateResponseHandles]", TypeSize: 48}, Fields: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_bytes", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "wr_handles", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequestHandles"}}}, @@ -2350,6 +2360,12 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ordinal", TypeSize: 4}}, Val: 930272946}, }}}, + {Key: StructKey{Name: "fidl_message_header[938569873]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_message_header[938569873]", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "txid", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ordinal", TypeSize: 4}}, Val: 938569873}, + }}}, {Key: StructKey{Name: "fidl_message_header[946011321]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fidl_message_header[946011321]", TypeSize: 16}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "txid", TypeSize: 4}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 4}}}, @@ -3020,6 +3036,19 @@ var structDescs_arm64 = []*KeyedStruct{ {Key: StructKey{Name: "fuchsia_cobalt_ProjectProfileOutOfLine"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_ProjectProfileOutOfLine"}, Fields: []Type{ &StructType{Key: StructKey{Name: "fuchsia_mem_BufferOutOfLine"}, FldName: "configOutOfLine"}, }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequest", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "fidl_message_header[938569873]"}, FldName: "hdr"}, + &StructType{Key: StructKey{Name: "fidl_string"}, FldName: "current_channelInLine"}, + &StructType{Key: StructKey{Name: "fidl_string"}, FldName: "target_channelInLine"}, + &StructType{Key: StructKey{Name: "fidl_aligned[stringnoz]"}, FldName: "current_channelOutOfLine"}, + &StructType{Key: StructKey{Name: "fidl_aligned[stringnoz]"}, FldName: "target_channelOutOfLine"}, + }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles"}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void"}, Kind: 1}, + }}}, + {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles", ArgDir: 1}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "void", FldName: "void", ArgDir: 1}, Kind: 1}, + }}}, {Key: StructKey{Name: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fuchsia_cobalt_SystemDataUpdaterSetExperimentStateRequest", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "fidl_message_header[1903807121]"}, FldName: "hdr"}, &StructType{Key: StructKey{Name: "fidl_vector"}, FldName: "experimentsInLine"}, @@ -4706,6 +4735,10 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "zx_exception_header", Dir: 1}, FldName: "header"}, &UnionType{Key: StructKey{Name: "zx_exception_context", Dir: 1}, FldName: "context"}, }}}, + {Key: StructKey{Name: "zx_info_bti", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_bti", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "minimum_contiguity", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "aspace_size", TypeSize: 8, ArgDir: 1}}}, + }}}, {Key: StructKey{Name: "zx_info_cpu_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_cpu_stats", TypeSize: 120, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "cpu_number", TypeSize: 4, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4, ArgDir: 1}}}, @@ -4732,7 +4765,17 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "props", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }}}, - {Key: StructKey{Name: "zx_info_kmem_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_kmem_stats", TypeSize: 64, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_handle_count", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_handle_count", TypeSize: 4, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "count", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "zx_info_job", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_job", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "return_code", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "exited", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "kill_on_oom", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "debugger_attached", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 5}}, IsPad: true}, + }}}, + {Key: StructKey{Name: "zx_info_kmem_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_kmem_stats", TypeSize: 72, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "total_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "free_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "wired_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4740,6 +4783,7 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "free_heap_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "vmo_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "mmu_overhead_bytes", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ipc_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "other_bytes", TypeSize: 8, ArgDir: 1}}}, }}}, {Key: StructKey{Name: "zx_info_maps", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_maps", TypeSize: 88, ArgDir: 1}, Fields: []Type{ @@ -4757,18 +4801,31 @@ var structDescs_arm64 = []*KeyedStruct{ &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", FldName: "vmo_koid", TypeSize: 8, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "committed_pages", TypeSize: 8, ArgDir: 1}}}, }}}, - {Key: StructKey{Name: "zx_info_process", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process", TypeSize: 8, ArgDir: 1}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "return_code", TypeSize: 4, ArgDir: 1}}}, + {Key: StructKey{Name: "zx_info_process", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process", TypeSize: 16, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "return_code", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "started", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "exited", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "debugger_attached", TypeSize: 1, ArgDir: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 1}}, IsPad: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 5}}, IsPad: true}, + }}}, + {Key: StructKey{Name: "zx_info_process_handle_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_process_handle_stats", TypeSize: 256, ArgDir: 1}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "handle_count", TypeSize: 256, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}, Kind: 1, RangeBegin: 64, RangeEnd: 64}, }}}, - {Key: StructKey{Name: "zx_info_resource", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_resource", TypeSize: 24, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_resource", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_resource", TypeSize: 56, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "base", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8, ArgDir: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 32, ArgDir: 1}, Kind: 1, RangeBegin: 32, RangeEnd: 32}, + }}}, + {Key: StructKey{Name: "zx_info_socket", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_socket", TypeSize: 48, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "low", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "high", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_max", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_size", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "rx_buf_available", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "tx_buf_max", TypeSize: 8, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "tx_buf_size", TypeSize: 8, ArgDir: 1}}}, }}}, {Key: StructKey{Name: "zx_info_task_stats", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_task_stats", TypeSize: 32, ArgDir: 1}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "mem_mapped_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4787,7 +4844,7 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "base", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8, ArgDir: 1}}}, }}}, - {Key: StructKey{Name: "zx_info_vmo", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_vmo", TypeSize: 104, ArgDir: 1}, Fields: []Type{ + {Key: StructKey{Name: "zx_info_vmo", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_info_vmo", TypeSize: 112, ArgDir: 1}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", FldName: "koid", TypeSize: 8, ArgDir: 1}}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 32, ArgDir: 1}, Kind: 1, RangeBegin: 32, RangeEnd: 32}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size_bytes", TypeSize: 8, ArgDir: 1}}}, @@ -4799,6 +4856,8 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "committed_bytes", TypeSize: 8, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "handle_rights", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "create_options", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "cache_policy", TypeSize: 4, ArgDir: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }}}, {Key: StructKey{Name: "zx_policy_basic"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_policy_basic", TypeSize: 8}, Fields: []Type{ @@ -5515,6 +5574,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_bytes", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_handles", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, + {Name: "zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetChannel", CallName: "zx_channel_call", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan_fuchsia_cobalt_SystemDataUpdater_client", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "args", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fidl_call_args[fuchsia_cobalt_SystemDataUpdaterSetChannelRequest, fuchsia_cobalt_SystemDataUpdaterSetChannelRequestHandles, array[int8, ZX_CHANNEL_MAX_MSG_BYTES], fuchsia_cobalt_SystemDataUpdaterSetChannelResponseHandles]"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_bytes", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual_handles", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, + }}, {Name: "zx_channel_call$fuchsia_cobalt_SystemDataUpdaterSetExperimentState", CallName: "zx_channel_call", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan_fuchsia_cobalt_SystemDataUpdater_client", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, @@ -6808,8 +6875,10 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_cprng_draw", CallName: "zx_cprng_draw", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_deadline_after", CallName: "zx_deadline_after", Args: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ns", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}}, {Name: "zx_debuglog_create", CallName: "zx_debuglog_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "log_create_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1073741824}, BitMask: true}, @@ -6845,31 +6914,33 @@ var syscalls_arm64 = []*Syscall{ }}, {Name: "zx_fifo_read", CallName: "zx_fifo_read", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_fifo", FldName: "handle", TypeSize: 4}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "num_entries_read", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_fifo_write", CallName: "zx_fifo_write", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_fifo", FldName: "handle", TypeSize: 4}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "num_entries_written", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_futex_requeue", CallName: "zx_futex_requeue", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "current_value", TypeSize: 4}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "requeue_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "requeue_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "requeue_count", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "new_requeue_owner", TypeSize: 4}}, }}, {Name: "zx_futex_wait", CallName: "zx_futex_wait", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "current_value", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "new_futext_owner", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, }}, {Name: "zx_futex_wake", CallName: "zx_futex_wake", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}}, }}, {Name: "zx_futex_wake_handle_close_thread_exit", CallName: "zx_futex_wake_handle_close_thread_exit", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}}, @@ -6880,14 +6951,14 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_guest_create", CallName: "zx_guest_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "physmem_vmo", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "guest", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", TypeSize: 8, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_guest_set_trap", CallName: "zx_guest_set_trap", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", FldName: "guest", TypeSize: 8}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "vaddr", TypeSize: 8}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "len", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "port", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}}, }}, @@ -6935,6 +7006,14 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_nanosleep", CallName: "zx_nanosleep", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, }}, + {Name: "zx_object_get_info$ZX_INFO_BTI", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "resource_handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 20}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_bti", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_CPU_STATS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 16}, @@ -6951,6 +7030,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_HANDLE_COUNT", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 19}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_handle_count", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_HANDLE_VALID", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 1}, @@ -6959,6 +7046,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_JOB", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 24}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_job", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_JOB_CHILDREN", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 8}, @@ -6970,7 +7065,7 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_object_get_info$ZX_INFO_JOB_PROCESSES", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 9}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_thread", Dir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "koid", TypeSize: 8, ArgDir: 1}}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, @@ -6991,6 +7086,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_PROCESS_HANDLE_STATS", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 21}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_process_handle_stats", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_PROCESS_MAPS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 13}, @@ -7023,6 +7126,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_SOCKET", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 22}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_socket", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_TASK_STATS", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 12}, @@ -7031,6 +7142,14 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_THREAD", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 10}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_thread", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_info$ZX_INFO_THREAD_EXCEPTION_REPORT", CallName: "zx_object_get_info", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 11}, @@ -7055,17 +7174,20 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, + {Name: "zx_object_get_info$ZX_INFO_VMO", CallName: "zx_object_get_info", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "topic", TypeSize: 8}}, Val: 23}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_info_vmo", Dir: 1}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "buffer_size", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, {Name: "zx_object_get_property", CallName: "zx_object_get_property", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"}, }}, - {Name: "zx_object_set_profile", CallName: "zx_object_set_profile", Args: []Type{ - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "profile", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}}, - }}, {Name: "zx_object_set_property", CallName: "zx_object_set_property", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}}, @@ -7112,13 +7234,11 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet"}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}}, }}, {Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}}, }}, {Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "job", TypeSize: 4}}, @@ -7129,7 +7249,7 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ret_code", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ret_code", TypeSize: 8}}}, }}, {Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}}, @@ -7166,6 +7286,10 @@ var syscalls_arm64 = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "socket_to_share", TypeSize: 4}}, }}, + {Name: "zx_socket_shutdown", CallName: "zx_socket_shutdown", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handlez", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_shutdown_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2, 1}, BitMask: true}, + }}, {Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_write_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4, 2, 1}, BitMask: true}, @@ -7185,6 +7309,16 @@ var syscalls_arm64 = []*Syscall{ &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "key", TypeSize: 8}}, ValuesStart: 1000, ValuesPerProc: 4}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, }}, + {Name: "zx_task_create_exception_channel", CallName: "zx_task_create_exception_channel", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_chan", TypeSize: 4, ArgDir: 1}}}, + }}, + {Name: "zx_task_resume_from_exception", CallName: "zx_task_resume_from_exception", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "eport", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "task_resume_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2}, BitMask: true}, + }}, {Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, @@ -7198,14 +7332,12 @@ var syscalls_arm64 = []*Syscall{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}, Kind: 2, RangeEnd: 9}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_thread_read_state$0", CallName: "zx_thread_read_state", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "kind", TypeSize: 8}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 144, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}, Kind: 1, RangeBegin: 18, RangeEnd: 18}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "buffer"}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}}, }}, {Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}}, @@ -7239,7 +7371,7 @@ var syscalls_arm64 = []*Syscall{ {Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "slack", TypeSize: 8}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "slack", TypeSize: 8}}}, }}, {Name: "zx_vcpu_create", CallName: "zx_vcpu_create", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_guest", FldName: "guest", TypeSize: 8}}, @@ -7259,7 +7391,7 @@ var syscalls_arm64 = []*Syscall{ }}, {Name: "zx_vcpu_resume", CallName: "zx_vcpu_resume", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vcpu", FldName: "vcpu", TypeSize: 4}}, - &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "port_packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}}, }}, {Name: "zx_vcpu_write_state", CallName: "zx_vcpu_write_state", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vcpu", FldName: "vcpu", TypeSize: 4}}, @@ -7306,7 +7438,7 @@ var syscalls_arm64 = []*Syscall{ }}, {Name: "zx_vmo_clone", CallName: "zx_vmo_clone", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, - &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1, 2}, BitMask: true}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}}, @@ -7373,7 +7505,11 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, + }}, + {Name: "zx_vmo_replace_as_executable", CallName: "zx_vmo_replace_as_executable", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "res", TypeSize: 8}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}}, }}, {Name: "zx_vmo_set_cache_policy", CallName: "zx_vmo_set_cache_policy", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}}, @@ -7388,7 +7524,6 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}}, }}, } @@ -7459,27 +7594,35 @@ var consts_arm64 = []ConstValue{ {Name: "ZX_CLOCK_UTC", Value: 1}, {Name: "ZX_EXCEPTION_PORT_DEBUGGER", Value: 1}, {Name: "ZX_HANDLE_INVALID"}, + {Name: "ZX_INFO_BTI", Value: 20}, {Name: "ZX_INFO_CPU_STATS", Value: 16}, {Name: "ZX_INFO_HANDLE_BASIC", Value: 2}, + {Name: "ZX_INFO_HANDLE_COUNT", Value: 19}, {Name: "ZX_INFO_HANDLE_VALID", Value: 1}, + {Name: "ZX_INFO_JOB", Value: 24}, {Name: "ZX_INFO_JOB_CHILDREN", Value: 8}, {Name: "ZX_INFO_JOB_PROCESSES", Value: 9}, {Name: "ZX_INFO_KMEM_STATS", Value: 17}, {Name: "ZX_INFO_PROCESS", Value: 3}, + {Name: "ZX_INFO_PROCESS_HANDLE_STATS", Value: 21}, {Name: "ZX_INFO_PROCESS_MAPS", Value: 13}, {Name: "ZX_INFO_PROCESS_THREADS", Value: 4}, {Name: "ZX_INFO_PROCESS_VMOS", Value: 14}, {Name: "ZX_INFO_RESOURCE", Value: 18}, + {Name: "ZX_INFO_SOCKET", Value: 22}, {Name: "ZX_INFO_TASK_STATS", Value: 12}, + {Name: "ZX_INFO_THREAD", Value: 10}, {Name: "ZX_INFO_THREAD_EXCEPTION_REPORT", Value: 11}, {Name: "ZX_INFO_THREAD_STATS", Value: 15}, {Name: "ZX_INFO_VMAR", Value: 7}, + {Name: "ZX_INFO_VMO", Value: 23}, {Name: "ZX_INTERRUPT_VIRTUAL", Value: 16}, {Name: "ZX_JOB_POL_ABSOLUTE", Value: 1}, {Name: "ZX_JOB_POL_BASIC"}, {Name: "ZX_JOB_POL_RELATIVE"}, {Name: "ZX_LOG_FLAG_READABLE", Value: 1073741824}, {Name: "ZX_MAX_NAME_LEN", Value: 32}, + {Name: "ZX_OBJ_TYPE_UPPER_BOUND", Value: 64}, {Name: "ZX_PKT_TYPE_USER"}, {Name: "ZX_POL_ACTION_ALLOW"}, {Name: "ZX_POL_ACTION_DENY", Value: 1}, @@ -7496,6 +7639,7 @@ var consts_arm64 = []ConstValue{ {Name: "ZX_POL_NEW_VMO", Value: 4}, {Name: "ZX_POL_VMAR_WX", Value: 2}, {Name: "ZX_POL_WRONG_OBJECT", Value: 1}, + {Name: "ZX_RESUME_TRY_NEXT", Value: 2}, {Name: "ZX_RIGHT_DESTROY", Value: 512}, {Name: "ZX_RIGHT_DUPLICATE", Value: 1}, {Name: "ZX_RIGHT_ENUMERATE", Value: 256}, @@ -7523,6 +7667,7 @@ var consts_arm64 = []ConstValue{ {Name: "ZX_TIMER_SLACK_LATE", Value: 2}, {Name: "ZX_TIME_INFINITE", Value: 9223372036854775807}, {Name: "ZX_VMO_CLONE_COPY_ON_WRITE", Value: 1}, + {Name: "ZX_VMO_CLONE_NON_RESIZEABLE", Value: 2}, {Name: "ZX_VMO_NON_RESIZABLE", Value: 1}, {Name: "ZX_VMO_OP_CACHE_CLEAN", Value: 8}, {Name: "ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", Value: 9}, @@ -7570,4 +7715,4 @@ var consts_arm64 = []ConstValue{ {Name: "fuchsia_power_Status_OK"}, } -const revision_arm64 = "754794d4928bd434528018e077e9147502dac975" +const revision_arm64 = "8616d9486f604772463f4cae5e52cf7a5cf56e5b" diff --git a/sys/fuchsia/handles.txt b/sys/fuchsia/handles.txt index c57e20a82..850138ca5 100644 --- a/sys/fuchsia/handles.txt +++ b/sys/fuchsia/handles.txt @@ -11,3 +11,5 @@ zx_handle_duplicate(handle zx_handle, rights flags[zx_rights], out ptr[out, zx_h zx_handle_replace(handle zx_handle, rights flags[zx_rights], out ptr[out, zx_handle]) zx_rights = ZX_RIGHT_NONE, ZX_RIGHT_DUPLICATE, ZX_RIGHT_TRANSFER, ZX_RIGHT_READ, ZX_RIGHT_WRITE, ZX_RIGHT_EXECUTE, ZX_RIGHT_MAP, ZX_RIGHT_GET_PROPERTY, ZX_RIGHT_SET_PROPERTY, ZX_RIGHT_ENUMERATE, ZX_RIGHT_DESTROY, ZX_RIGHT_SET_POLICY, ZX_RIGHT_GET_POLICY, ZX_RIGHT_SIGNAL, ZX_RIGHT_SIGNAL_PEER, ZX_RIGHT_SAME_RIGHTS + +# rights not enabled in ARM: ZX_MANAGE_JOB, ZX_MANAGE_PROCESS, ZX_MANAGE_THREAD, ZX_APPLY_PROFILE, ZX_WAIT, ZX_APPLY, ZX_INSPECT diff --git a/sys/fuchsia/hypervisor_guests.txt b/sys/fuchsia/hypervisor_guests.txt index 1106d1a5d..42f323f8c 100644 --- a/sys/fuchsia/hypervisor_guests.txt +++ b/sys/fuchsia/hypervisor_guests.txt @@ -3,13 +3,13 @@ include resource zx_guest[intptr] resource zx_vcpu[zx_handle] -zx_guest_create(root_resource zx_root_resource, options const[0], physmem_vmo zx_vmo, guest ptr[out, zx_guest]) +zx_guest_create(root_resource zx_root_resource, options const[0], guest ptr[out, zx_guest], vmar ptr[out, zx_vmar]) # TODO: teach this how to use ports & keys -zx_guest_set_trap(guest zx_guest, kind int32, vaddr intptr, len int64, port const[ZX_HANDLE_INVALID], key int64) +zx_guest_set_trap(guest zx_guest, kind int32, vaddr intptr, len intptr, port const[ZX_HANDLE_INVALID], key int64) zx_vcpu_create(guest zx_guest, options int32, vaddr intptr, out ptr[out, zx_vcpu]) # TODO: teach this about the port_packet_t struct -zx_vcpu_resume(vcpu zx_vcpu, options const[0]) +zx_vcpu_resume(vcpu zx_vcpu, port_packet ptr[out, zx_port_packet]) zx_vcpu_interrupt(vcpu zx_vcpu, vector int32) zx_vcpu_read_state(vcpu zx_vcpu, kind int32, buffer buffer[in], buflen len[buffer]) zx_vcpu_write_state(vcpu zx_vcpu, kind int32, buffer buffer[out], buflen len[buffer]) diff --git a/sys/fuchsia/objects.txt b/sys/fuchsia/objects.txt index 04aa67960..da296dc8a 100644 --- a/sys/fuchsia/objects.txt +++ b/sys/fuchsia/objects.txt @@ -11,29 +11,35 @@ resource koid[int64]: 0 # zx_object_get_child(handle zx_handle, koid koid, rights flags[zx_rights], out ptr[out, zx_handle]) zx_object_get_info$ZX_INFO_HANDLE_VALID(handle zx_handle, topic const[ZX_INFO_HANDLE_VALID], buffer const[0], buffer_size const[0], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_HANDLE_BASIC(handle zx_handle, topic const[ZX_INFO_HANDLE_BASIC], buffer ptr[out, zx_info_handle_basic], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_HANDLE_COUNT(handle zx_handle, topic const[ZX_INFO_HANDLE_COUNT], buffer ptr[out, zx_info_handle_count], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_PROCESS_HANDLE_STATS(handle zx_process, topic const[ZX_INFO_PROCESS_HANDLE_STATS], buffer ptr[out, zx_info_process_handle_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_JOB(handle zx_process, topic const[ZX_INFO_JOB], buffer ptr[out, zx_info_job], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_PROCESS(handle zx_process, topic const[ZX_INFO_PROCESS], buffer ptr[out, zx_info_process], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_PROCESS_THREADS(handle zx_process, topic const[ZX_INFO_PROCESS_THREADS], buffer ptr[out, array[koid]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_THREAD(handle zx_process, topic const[ZX_INFO_THREAD], buffer ptr[out, zx_info_thread], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_THREAD_EXCEPTION_REPORT(handle zx_thread, topic const[ZX_INFO_THREAD_EXCEPTION_REPORT], buffer ptr[out, zx_exception_report], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_THREAD_STATS(handle zx_thread, topic const[ZX_INFO_THREAD_STATS], buffer ptr[out, zx_info_thread_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_CPU_STATS(root_resource zx_root_resource, topic const[ZX_INFO_CPU_STATS], buffer ptr[out, array[zx_info_cpu_stats]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_VMAR(handle zx_vmar, topic const[ZX_INFO_VMAR], buffer ptr[out, zx_info_vmar], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_VMO(handle zx_vmar, topic const[ZX_INFO_VMO], buffer ptr[out, zx_info_vmo], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_SOCKET(handle zx_vmar, topic const[ZX_INFO_SOCKET], buffer ptr[out, zx_info_socket], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_JOB_CHILDREN(handle zx_job, topic const[ZX_INFO_JOB_CHILDREN], buffer ptr[out, array[koid]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) -zx_object_get_info$ZX_INFO_JOB_PROCESSES(handle zx_job, topic const[ZX_INFO_JOB_PROCESSES], buffer ptr[out, zx_info_thread], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) -zx_object_get_info$ZX_INFO_THREAD_EXCEPTION_REPORT(handle zx_thread, topic const[ZX_INFO_THREAD_EXCEPTION_REPORT], buffer ptr[out, zx_exception_report], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_JOB_PROCESSES(handle zx_job, topic const[ZX_INFO_JOB_PROCESSES], buffer ptr[out, array[koid]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_TASK_STATS(handle zx_process, topic const[ZX_INFO_TASK_STATS], buffer ptr[out, zx_info_task_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_PROCESS_MAPS(handle zx_process, topic const[ZX_INFO_PROCESS_MAPS], buffer ptr[out, array[zx_info_maps]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_PROCESS_VMOS(handle zx_process, topic const[ZX_INFO_PROCESS_VMOS], buffer ptr[out, array[zx_info_vmo]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) -zx_object_get_info$ZX_INFO_THREAD_STATS(handle zx_thread, topic const[ZX_INFO_THREAD_STATS], buffer ptr[out, zx_info_thread_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) -zx_object_get_info$ZX_INFO_CPU_STATS(root_resource zx_root_resource, topic const[ZX_INFO_CPU_STATS], buffer ptr[out, array[zx_info_cpu_stats]], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) zx_object_get_info$ZX_INFO_KMEM_STATS(root_resource zx_root_resource, topic const[ZX_INFO_KMEM_STATS], buffer ptr[out, zx_info_kmem_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) # TODO: what is handle type here? zx_object_get_info$ZX_INFO_RESOURCE(resource_handle zx_handle, topic const[ZX_INFO_RESOURCE], buffer ptr[out, zx_info_resource], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) +zx_object_get_info$ZX_INFO_BTI(resource_handle zx_handle, topic const[ZX_INFO_BTI], buffer ptr[out, zx_info_bti], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr]) # TODO: detail properties zx_object_get_property(handle zx_handle, property int32, value ptr[out, array[int8]], size len[value]) zx_object_set_property(handle zx_handle, property int32, value ptr[in, array[int8]], size len[value]) zx_object_signal(handle zx_handle, clear_mask int32, set_mask int32) zx_object_signal_peer(handle zx_handle, clear_mask int32, set_mask int32) +zx_object_wait_many(items ptr[in, array[zx_wait_item]], count len[items], deadline zx_time) zx_object_wait_one(handle zx_handle, signals int32, deadline zx_time, observed ptr[out, int32]) zx_object_wait_async(handle zx_handle, port zx_port, key proc[1000, 4], signals int32, options flags[wait_async_options]) -zx_object_wait_many(items ptr[in, array[zx_wait_item]], count len[items], deadline zx_time) -zx_object_set_profile(handle zx_handle, profile zx_handle, options int32) wait_async_options = ZX_WAIT_ASYNC_ONCE, ZX_WAIT_ASYNC_REPEATING @@ -45,16 +51,26 @@ zx_info_handle_basic { props int32 } -zx_info_process { - return_code int32 - started int8 +zx_info_handle_count { + count int32 +} + +zx_info_process_handle_stats { + handle_count array[int32, ZX_OBJ_TYPE_UPPER_BOUND] +} + +zx_info_job { + return_code int64 exited int8 + kill_on_oom int8 debugger_attached int8 } -zx_info_vmar { - base intptr - len intptr +zx_info_process { + return_code int64 + started int8 + exited int8 + debugger_attached int8 } zx_info_thread { @@ -62,10 +78,63 @@ zx_info_thread { wait_exception_port_type int32 } +zx_exception_report { + header zx_exception_header + context zx_exception_context +} + zx_info_thread_stats { total_runtime int64 } +zx_info_cpu_stats { + cpu_number int32 + flags int32 + idle_time int64 + reschedules int64 + context_switches int64 + irq_preempts int64 + preempts int64 + yields int64 + ints int64 + timer_ints int64 + timers int64 + page_faults int64 + exceptions int64 + syscalls int64 + reschedule_ipis int64 + generic_ipis int64 +} + +zx_info_vmar { + base intptr + len intptr +} + +zx_info_vmo { + koid koid + name array[int8, ZX_MAX_NAME_LEN] + size_bytes int64 + parent_koid koid + num_children intptr + num_mappings intptr + share_count intptr + flags int32 + committed_bytes int64 + handle_rights int32 + create_options int32 + cache_policy int32 +} + +zx_info_socket { + options int32 + rx_buf_max intptr + rx_buf_size intptr + rx_buf_available intptr + tx_buf_max intptr + tx_buf_size intptr +} + zx_info_task_stats { mem_mapped_bytes intptr mem_private_bytes intptr @@ -88,38 +157,6 @@ zx_info_maps_mapping { committed_pages intptr } -zx_info_vmo { - koid koid - name array[int8, ZX_MAX_NAME_LEN] - size_bytes int64 - parent_koid koid - num_children intptr - num_mappings intptr - share_count intptr - flags int32 - committed_bytes int64 - handle_rights int32 -} - -zx_info_cpu_stats { - cpu_number int32 - flags int32 - idle_time int64 - reschedules int64 - context_switches int64 - irq_preempts int64 - preempts int64 - yields int64 - ints int64 - timer_ints int64 - timers int64 - page_faults int64 - exceptions int64 - syscalls int64 - reschedule_ipis int64 - generic_ipis int64 -} - zx_info_kmem_stats { total_bytes int64 free_bytes int64 @@ -129,18 +166,21 @@ zx_info_kmem_stats { free_heap_bytes int64 vmo_bytes int64 mmu_overhead_bytes int64 + ipc_bytes int64 other_bytes int64 } zx_info_resource { kind int32 - low int64 - high int64 + flags int32 + base int64 + size intptr + name array[int8, ZX_MAX_NAME_LEN] } -zx_exception_report { - header zx_exception_header - context zx_exception_context +zx_info_bti { + minimum_contiguity int64 + aspace_size int64 } zx_exception_header { diff --git a/sys/fuchsia/objects_amd64.const b/sys/fuchsia/objects_amd64.const index f30a0960f..8d94f5f17 100644 --- a/sys/fuchsia/objects_amd64.const +++ b/sys/fuchsia/objects_amd64.const @@ -1,19 +1,27 @@ # AUTOGENERATED FILE +ZX_INFO_BTI = 20 ZX_INFO_CPU_STATS = 16 ZX_INFO_HANDLE_BASIC = 2 +ZX_INFO_HANDLE_COUNT = 19 ZX_INFO_HANDLE_VALID = 1 +ZX_INFO_JOB = 24 ZX_INFO_JOB_CHILDREN = 8 ZX_INFO_JOB_PROCESSES = 9 ZX_INFO_KMEM_STATS = 17 ZX_INFO_PROCESS = 3 +ZX_INFO_PROCESS_HANDLE_STATS = 21 ZX_INFO_PROCESS_MAPS = 13 ZX_INFO_PROCESS_THREADS = 4 ZX_INFO_PROCESS_VMOS = 14 ZX_INFO_RESOURCE = 18 +ZX_INFO_SOCKET = 22 ZX_INFO_TASK_STATS = 12 +ZX_INFO_THREAD = 10 ZX_INFO_THREAD_EXCEPTION_REPORT = 11 ZX_INFO_THREAD_STATS = 15 ZX_INFO_VMAR = 7 +ZX_INFO_VMO = 23 ZX_MAX_NAME_LEN = 32 +ZX_OBJ_TYPE_UPPER_BOUND = 64 ZX_WAIT_ASYNC_ONCE = 0 ZX_WAIT_ASYNC_REPEATING = 1 diff --git a/sys/fuchsia/objects_arm64.const b/sys/fuchsia/objects_arm64.const index f30a0960f..8d94f5f17 100644 --- a/sys/fuchsia/objects_arm64.const +++ b/sys/fuchsia/objects_arm64.const @@ -1,19 +1,27 @@ # AUTOGENERATED FILE +ZX_INFO_BTI = 20 ZX_INFO_CPU_STATS = 16 ZX_INFO_HANDLE_BASIC = 2 +ZX_INFO_HANDLE_COUNT = 19 ZX_INFO_HANDLE_VALID = 1 +ZX_INFO_JOB = 24 ZX_INFO_JOB_CHILDREN = 8 ZX_INFO_JOB_PROCESSES = 9 ZX_INFO_KMEM_STATS = 17 ZX_INFO_PROCESS = 3 +ZX_INFO_PROCESS_HANDLE_STATS = 21 ZX_INFO_PROCESS_MAPS = 13 ZX_INFO_PROCESS_THREADS = 4 ZX_INFO_PROCESS_VMOS = 14 ZX_INFO_RESOURCE = 18 +ZX_INFO_SOCKET = 22 ZX_INFO_TASK_STATS = 12 +ZX_INFO_THREAD = 10 ZX_INFO_THREAD_EXCEPTION_REPORT = 11 ZX_INFO_THREAD_STATS = 15 ZX_INFO_VMAR = 7 +ZX_INFO_VMO = 23 ZX_MAX_NAME_LEN = 32 +ZX_OBJ_TYPE_UPPER_BOUND = 64 ZX_WAIT_ASYNC_ONCE = 0 ZX_WAIT_ASYNC_REPEATING = 1 diff --git a/sys/fuchsia/ports.txt b/sys/fuchsia/ports.txt index e4e3f0a49..969e680d5 100644 --- a/sys/fuchsia/ports.txt +++ b/sys/fuchsia/ports.txt @@ -7,8 +7,8 @@ include resource zx_port[zx_handle] zx_port_create(options const[0], out ptr[out, zx_port]) -zx_port_queue(handle zx_port, packet ptr[in, zx_port_packet], size const[0]) -zx_port_wait(handle zx_port, deadline zx_time, packet ptr[out, zx_port_packet], size const[0]) +zx_port_queue(handle zx_port, packet ptr[in, zx_port_packet]) +zx_port_wait(handle zx_port, deadline zx_time, packet ptr[out, zx_port_packet]) zx_port_cancel(port zx_port, source zx_handle, key proc[1000, 4]) zx_port_packet { diff --git a/sys/fuchsia/processes.txt b/sys/fuchsia/processes.txt index 835edbb1e..e6e6b9367 100644 --- a/sys/fuchsia/processes.txt +++ b/sys/fuchsia/processes.txt @@ -6,8 +6,8 @@ include resource zx_process[zx_task] zx_process_create(job zx_job, name ptr[in, string], name_len len[name], options const[0], proc_handle ptr[out, zx_process], vmar_handle ptr[out, zx_vmar]) -zx_process_start(process zx_process, thread zx_thread, entry ptr[in, text[target]], stack ptr[out, array[int8]], arg1 const[0], arg2 const[0]) zx_process_read_memory(process zx_process, vaddr ptr[out, int8], buffer ptr[out, array[int8]], len len[buffer], actual ptr[out, intptr]) +zx_process_start(process zx_process, thread zx_thread, entry ptr[in, text[target]], stack ptr[out, array[int8]], arg1 const[0], arg2 const[0]) # TODO: temporary disabled as it crashes kernel left and right. # zx_process_write_memory(process zx_process, vaddr ptr[out, int8], buffer ptr[in, array[int8]], len len[buffer], actual ptr[out, intptr]) -zx_process_exit(ret_code int32) +zx_process_exit(ret_code int64) diff --git a/sys/fuchsia/sockets.txt b/sys/fuchsia/sockets.txt index a9a7a8853..c63160b28 100644 --- a/sys/fuchsia/sockets.txt +++ b/sys/fuchsia/sockets.txt @@ -5,12 +5,14 @@ include resource zx_socket[zx_handle] +zx_socket_accept(handle zx_socket, out_socket ptr[out, zx_socket]) zx_socket_create(options flags[socket_create_options], out0 ptr[out, zx_socket], out1 ptr[out, zx_socket]) zx_socket_read(handle zx_socket, options flags[socket_read_options], buffer ptr[out, array[int8]], size len[buffer], actual ptr[out, intptr]) -zx_socket_write(handle zx_socket, options flags[socket_write_options], buffer ptr[in, array[int8]], size len[buffer], actual ptr[out, intptr]) zx_socket_share(handle zx_socket, socket_to_share zx_socket) -zx_socket_accept(handle zx_socket, out_socket ptr[out, zx_socket]) +zx_socket_write(handle zx_socket, options flags[socket_write_options], buffer ptr[in, array[int8]], size len[buffer], actual ptr[out, intptr]) +zx_socket_shutdown(handlez zx_socket, options flags[socket_shutdown_options]) socket_create_options = ZX_SOCKET_STREAM, ZX_SOCKET_DATAGRAM, ZX_SOCKET_HAS_CONTROL socket_read_options = ZX_SOCKET_CONTROL socket_write_options = ZX_SOCKET_CONTROL, ZX_SOCKET_SHUTDOWN_READ, ZX_SOCKET_SHUTDOWN_WRITE +socket_shutdown_options = ZX_SOCKET_SHUTDOWN_READ, ZX_SOCKET_SHUTDOWN_WRITE diff --git a/sys/fuchsia/sys.txt b/sys/fuchsia/sys.txt index 9237dc649..6be10ac31 100644 --- a/sys/fuchsia/sys.txt +++ b/sys/fuchsia/sys.txt @@ -28,7 +28,7 @@ zx_system_get_num_cpus() zx_system_get_physmem() zx_system_get_version(version ptr[out, array[int8]], version_len len[version]) -zx_cprng_draw(buffer ptr[out, array[int8]], len len[buffer], actual ptr[out, intptr]) +zx_cprng_draw(buffer ptr[out, array[int8]], len len[buffer]) zx_cprng_add_entropy(buffer ptr[in, array[int8]], len len[buffer]) zx_vmar_unmap_handle_close_thread_exit(vmar_handle zx_vmar, addr vma, len len[addr], close_handle zx_handle) diff --git a/sys/fuchsia/tasks.txt b/sys/fuchsia/tasks.txt index e42333303..48fcff106 100644 --- a/sys/fuchsia/tasks.txt +++ b/sys/fuchsia/tasks.txt @@ -7,8 +7,12 @@ include resource zx_task[zx_handle] zx_task_bind_exception_port(task zx_task, eport zx_port, key proc[1000, 4], options flags[exception_port_options]) +zx_task_create_exception_channel(task zx_task, options flags[exception_port_options], out ptr[out, zx_chan]) +zx_task_resume_from_exception(task zx_task, eport zx_port, options flags[task_resume_options]) # This is disabled until we figure out how to prevent executor from killing fuzzer (#594). # zx_task_kill(handle zx_task) +# zx_task_suspend(handle zx_task, token ptr[out, zx_handle]) exception_port_options = ZX_EXCEPTION_PORT_DEBUGGER +task_resume_options = ZX_RESUME_TRY_NEXT diff --git a/sys/fuchsia/tasks_amd64.const b/sys/fuchsia/tasks_amd64.const index 960541f9a..ea1606b18 100644 --- a/sys/fuchsia/tasks_amd64.const +++ b/sys/fuchsia/tasks_amd64.const @@ -1,2 +1,3 @@ # AUTOGENERATED FILE ZX_EXCEPTION_PORT_DEBUGGER = 1 +ZX_RESUME_TRY_NEXT = 2 diff --git a/sys/fuchsia/tasks_arm64.const b/sys/fuchsia/tasks_arm64.const index 960541f9a..ea1606b18 100644 --- a/sys/fuchsia/tasks_arm64.const +++ b/sys/fuchsia/tasks_arm64.const @@ -1,2 +1,3 @@ # AUTOGENERATED FILE ZX_EXCEPTION_PORT_DEBUGGER = 1 +ZX_RESUME_TRY_NEXT = 2 diff --git a/sys/fuchsia/threads.txt b/sys/fuchsia/threads.txt index 7947703d9..607a7a563 100644 --- a/sys/fuchsia/threads.txt +++ b/sys/fuchsia/threads.txt @@ -7,10 +7,10 @@ include resource zx_thread[zx_task] zx_thread_create(process zx_process, name ptr[in, string], name_len len[name], options const[0], out ptr[out, zx_thread]) -zx_thread_start(handle zx_thread, entry ptr[in, text[target]], stack ptr[out, array[int8]], arg1 const[0], arg2 const[0]) zx_thread_exit() # Note: kind corresponds to ZX_THREAD_STATE_REGSET0..9 constants. -zx_thread_read_state(handle zx_thread, kind int32[0:9], buffer ptr[out, array[int64]], len bytesize[buffer], actual ptr[out, int32]) -zx_thread_read_state$0(handle zx_thread, kind const[0], buffer ptr[out, array[int64, 18]], len bytesize[buffer], actual ptr[out, int32]) +zx_thread_read_state(handle zx_thread, kind int32[0:9], buffer ptr[out, array[int64]], len bytesize[buffer]) +zx_thread_read_state$0(handle zx_thread, kind const[0], buffer ptr[out, array[int64, 18]], len bytesize[buffer]) +zx_thread_start(handle zx_thread, entry ptr[in, text[target]], stack ptr[out, array[int8]], arg1 const[0], arg2 const[0]) zx_thread_write_state(handle zx_thread, kind int32[0:9], buffer ptr[in, array[int64]], len bytesize[buffer]) zx_thread_write_state$0(handle zx_thread, kind const[0], buffer ptr[in, array[int64, 18]], len bytesize[buffer]) diff --git a/sys/fuchsia/time.txt b/sys/fuchsia/time.txt index 5901de036..a94ed0b21 100644 --- a/sys/fuchsia/time.txt +++ b/sys/fuchsia/time.txt @@ -11,6 +11,7 @@ zx_clock_get_new(clock_id int32, zx_time ptr[out, intptr]) zx_clock_get_monotonic() zx_ticks_get() zx_ticks_per_second() +zx_deadline_after(ns int64) zx_time # TODO: undocumented # zx_clock_adjust? diff --git a/sys/fuchsia/timers.txt b/sys/fuchsia/timers.txt index 39c47bcd8..12d7d6ea3 100644 --- a/sys/fuchsia/timers.txt +++ b/sys/fuchsia/timers.txt @@ -6,7 +6,7 @@ include resource zx_timer[zx_handle] zx_timer_create(options flags[timer_options], clock_id const[ZX_CLOCK_MONOTONIC], out ptr[out, zx_timer]) -zx_timer_set(handle zx_timer, deadline zx_time, slack intptr) +zx_timer_set(handle zx_timer, deadline zx_time, slack int64) zx_timer_cancel(handle zx_timer) timer_options = ZX_TIMER_SLACK_CENTER, ZX_TIMER_SLACK_EARLY, ZX_TIMER_SLACK_LATE diff --git a/sys/fuchsia/vmos.txt b/sys/fuchsia/vmos.txt index d2125db4e..c8f1b99c5 100644 --- a/sys/fuchsia/vmos.txt +++ b/sys/fuchsia/vmos.txt @@ -7,8 +7,8 @@ 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, data ptr[out, array[int8]], offset int64, len intptr, actual ptr[out, intptr]) -zx_vmo_write(handle zx_vmo, data ptr[in, array[int8]], offset int64, len intptr, actual ptr[out, intptr]) +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_clone(handle zx_vmo, options flags[vmo_clone_options], offset int64, size int64, out ptr[out, zx_vmo]) zx_vmo_get_size(handle zx_vmo, size ptr[out, int64]) zx_vmo_set_size(handle zx_vmo, size int64) @@ -18,10 +18,11 @@ zx_vmo_op_range$ZX_VMO_OP_CACHE_SYNC(handle zx_vmo, op const[ZX_VMO_OP_CACHE_SYN 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, ZX_VMO_NON_RESIZABLE -vmo_clone_options = ZX_VMO_CLONE_COPY_ON_WRITE +vmo_clone_options = ZX_VMO_CLONE_COPY_ON_WRITE, ZX_VMO_CLONE_NON_RESIZEABLE 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_amd64.const b/sys/fuchsia/vmos_amd64.const index 9ceea2823..17e3f2ef4 100644 --- a/sys/fuchsia/vmos_amd64.const +++ b/sys/fuchsia/vmos_amd64.const @@ -3,7 +3,9 @@ ZX_CACHE_POLICY_CACHED = 0 ZX_CACHE_POLICY_UNCACHED = 1 ZX_CACHE_POLICY_UNCACHED_DEVICE = 2 ZX_CACHE_POLICY_WRITE_COMBINING = 3 +ZX_HANDLE_INVALID = 0 ZX_VMO_CLONE_COPY_ON_WRITE = 1 +ZX_VMO_CLONE_NON_RESIZEABLE = 2 ZX_VMO_NON_RESIZABLE = 1 ZX_VMO_OP_CACHE_CLEAN = 8 ZX_VMO_OP_CACHE_CLEAN_INVALIDATE = 9 diff --git a/sys/fuchsia/vmos_arm64.const b/sys/fuchsia/vmos_arm64.const index 9ceea2823..17e3f2ef4 100644 --- a/sys/fuchsia/vmos_arm64.const +++ b/sys/fuchsia/vmos_arm64.const @@ -3,7 +3,9 @@ ZX_CACHE_POLICY_CACHED = 0 ZX_CACHE_POLICY_UNCACHED = 1 ZX_CACHE_POLICY_UNCACHED_DEVICE = 2 ZX_CACHE_POLICY_WRITE_COMBINING = 3 +ZX_HANDLE_INVALID = 0 ZX_VMO_CLONE_COPY_ON_WRITE = 1 +ZX_VMO_CLONE_NON_RESIZEABLE = 2 ZX_VMO_NON_RESIZABLE = 1 ZX_VMO_OP_CACHE_CLEAN = 8 ZX_VMO_OP_CACHE_CLEAN_INVALIDATE = 9 -- cgit mrf-deployment