From f5827293e2e7f5202cfde68b7a20db7f0bd3506a Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 12 Feb 2019 18:26:15 +0100 Subject: hafnium: add basic support Add [very] basic support for testing Hafnium: https://hafnium.googlesource.com/hafnium Update #996 --- sys/linux/gen/386.go | 30 +++++++++++++++++++++++++++++- sys/linux/gen/amd64.go | 30 +++++++++++++++++++++++++++++- sys/linux/gen/arm.go | 30 +++++++++++++++++++++++++++++- sys/linux/gen/arm64.go | 30 +++++++++++++++++++++++++++++- sys/linux/gen/ppc64le.go | 30 +++++++++++++++++++++++++++++- sys/linux/hafnium.txt | 24 ++++++++++++++++++++++++ sys/linux/hafnium_386.const | 7 +++++++ sys/linux/hafnium_amd64.const | 7 +++++++ sys/linux/hafnium_arm.const | 7 +++++++ sys/linux/hafnium_arm64.const | 7 +++++++ sys/linux/hafnium_ppc64le.const | 7 +++++++ 11 files changed, 204 insertions(+), 5 deletions(-) create mode 100644 sys/linux/hafnium.txt create mode 100644 sys/linux/hafnium_386.const create mode 100644 sys/linux/hafnium_amd64.const create mode 100644 sys/linux/hafnium_arm.const create mode 100644 sys/linux/hafnium_arm64.const create mode 100644 sys/linux/hafnium_ppc64le.const (limited to 'sys/linux') diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index 335dba7e1..87838481d 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -143,6 +143,7 @@ var resources_386 = []*ResourceDesc{ {Name: "sock_can_raw", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_can", "sock_can_raw"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_dccp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_dccp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "sock_hf", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_hf"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_icmp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_icmp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_in", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -19723,6 +19724,12 @@ var structDescs_386 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bt_chi_chan", FldName: "chan", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 3}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, }}}, + {Key: StructKey{Name: "sockaddr_hf"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_hf", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "family", TypeSize: 2}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "vm_id", TypeSize: 4}}, ValuesStart: 1, ValuesPerProc: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "port", TypeSize: 8}}}, + }}}, {Key: StructKey{Name: "sockaddr_ib"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_ib", TypeSize: 48}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "sib_family", TypeSize: 2}}, Val: 27}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "sib_pkey", TypeSize: 2}, ArgFormat: 1}}, @@ -26860,6 +26867,11 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_can"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "addr"}, }}, + {NR: 362, Name: "connect$hf", CallName: "connect", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_hf"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "addrlen", TypeSize: 4}}, Buf: "addr"}, + }}, {NR: 362, Name: "connect$inet", CallName: "connect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_in"}}}, @@ -35618,6 +35630,11 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, }}, + {NR: 372, Name: "recvmsg$hf", CallName: "recvmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, + }}, {NR: 372, Name: "recvmsg$kcm", CallName: "recvmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, @@ -36172,6 +36189,11 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "msghdr_can[can_raw_msg]"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, }}, + {NR: 370, Name: "sendmsg$hf", CallName: "sendmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "send_msghdr"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, + }}, {NR: 370, Name: "sendmsg$inet_sctp", CallName: "sendmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_sctp", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "msghdr_sctp"}}}, @@ -38471,6 +38493,11 @@ var syscalls_386 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 1}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 359, Name: "socket$hf", CallName: "socket", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 359, Name: "socket$inet", CallName: "socket", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 2}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 10, 2048, 524288}}, @@ -40091,6 +40118,7 @@ var consts_386 = []ConstValue{ {Name: "AF_BRIDGE", Value: 7}, {Name: "AF_CAIF", Value: 37}, {Name: "AF_CAN", Value: 29}, + {Name: "AF_HF", Value: 19}, {Name: "AF_IB", Value: 27}, {Name: "AF_INET", Value: 2}, {Name: "AF_INET6", Value: 10}, @@ -47310,4 +47338,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "652d88dbc7fab7b80dd8f14cf9b82a0c657b20de" +const revision_386 = "64add99a8aea7ea548a8863a77047cc73c2f7ea3" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index 7db892163..14955f7b2 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -148,6 +148,7 @@ var resources_amd64 = []*ResourceDesc{ {Name: "sock_can_raw", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_can", "sock_can_raw"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_dccp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_dccp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "sock_hf", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_hf"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_icmp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_icmp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_in", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -20092,6 +20093,12 @@ var structDescs_amd64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bt_chi_chan", FldName: "chan", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 3}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, }}}, + {Key: StructKey{Name: "sockaddr_hf"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_hf", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "family", TypeSize: 2}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "vm_id", TypeSize: 4}}, ValuesStart: 1, ValuesPerProc: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "port", TypeSize: 8}}}, + }}}, {Key: StructKey{Name: "sockaddr_ib"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_ib", TypeSize: 48}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "sib_family", TypeSize: 2}}, Val: 27}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "sib_pkey", TypeSize: 2}, ArgFormat: 1}}, @@ -27406,6 +27413,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_can"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "addr"}, }}, + {NR: 42, Name: "connect$hf", CallName: "connect", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_hf"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "addrlen", TypeSize: 8}}, Buf: "addr"}, + }}, {NR: 42, Name: "connect$inet", CallName: "connect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_in"}}}, @@ -36234,6 +36246,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, }}, + {NR: 47, Name: "recvmsg$hf", CallName: "recvmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, + }}, {NR: 47, Name: "recvmsg$kcm", CallName: "recvmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, @@ -36880,6 +36897,11 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_can[can_raw_msg]"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, }}, + {NR: 46, Name: "sendmsg$hf", CallName: "sendmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "send_msghdr"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, + }}, {NR: 46, Name: "sendmsg$inet_sctp", CallName: "sendmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_sctp", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_sctp"}}}, @@ -39236,6 +39258,11 @@ var syscalls_amd64 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}, Val: 1}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 41, Name: "socket$hf", CallName: "socket", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 41, Name: "socket$inet", CallName: "socket", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 2}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_type", FldName: "type", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 10, 2048, 524288}}, @@ -40856,6 +40883,7 @@ var consts_amd64 = []ConstValue{ {Name: "AF_BRIDGE", Value: 7}, {Name: "AF_CAIF", Value: 37}, {Name: "AF_CAN", Value: 29}, + {Name: "AF_HF", Value: 19}, {Name: "AF_IB", Value: 27}, {Name: "AF_INET", Value: 2}, {Name: "AF_INET6", Value: 10}, @@ -48100,4 +48128,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "130eaec19469ea8d7e5c0682bd36d66dcf13551b" +const revision_amd64 = "00d6954b4e784e772df0c0be13357489547e920b" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index d3f8fdea1..15d12bad4 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -148,6 +148,7 @@ var resources_arm = []*ResourceDesc{ {Name: "sock_can_raw", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_can", "sock_can_raw"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_dccp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_dccp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "sock_hf", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_hf"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_icmp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_icmp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_in", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -19604,6 +19605,12 @@ var structDescs_arm = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bt_chi_chan", FldName: "chan", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 3}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, }}}, + {Key: StructKey{Name: "sockaddr_hf"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_hf", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "family", TypeSize: 2}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "vm_id", TypeSize: 4}}, ValuesStart: 1, ValuesPerProc: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "port", TypeSize: 8}}}, + }}}, {Key: StructKey{Name: "sockaddr_ib"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_ib", TypeSize: 48}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "sib_family", TypeSize: 2}}, Val: 27}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "sib_pkey", TypeSize: 2}, ArgFormat: 1}}, @@ -26741,6 +26748,11 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_can"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "addr"}, }}, + {NR: 283, Name: "connect$hf", CallName: "connect", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_hf"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "addrlen", TypeSize: 4}}, Buf: "addr"}, + }}, {NR: 283, Name: "connect$inet", CallName: "connect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "sockaddr_in"}}}, @@ -35382,6 +35394,11 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, }}, + {NR: 297, Name: "recvmsg$hf", CallName: "recvmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, + }}, {NR: 297, Name: "recvmsg$kcm", CallName: "recvmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, @@ -36027,6 +36044,11 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "msghdr_can[can_raw_msg]"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, }}, + {NR: 296, Name: "sendmsg$hf", CallName: "sendmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "send_msghdr"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 4}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, + }}, {NR: 296, Name: "sendmsg$inet_sctp", CallName: "sendmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_sctp", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "msghdr_sctp"}}}, @@ -38380,6 +38402,11 @@ var syscalls_arm = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}, Val: 1}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 281, Name: "socket$hf", CallName: "socket", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 4}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 281, Name: "socket$inet", CallName: "socket", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 4}}, Val: 2}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_type", FldName: "type", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 10, 2048, 524288}}, @@ -39987,6 +40014,7 @@ var consts_arm = []ConstValue{ {Name: "AF_BRIDGE", Value: 7}, {Name: "AF_CAIF", Value: 37}, {Name: "AF_CAN", Value: 29}, + {Name: "AF_HF", Value: 19}, {Name: "AF_IB", Value: 27}, {Name: "AF_INET", Value: 2}, {Name: "AF_INET6", Value: 10}, @@ -47143,4 +47171,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "f501bb8ac62736f5d0de12e992b5c15bb5f18470" +const revision_arm = "9c8bd483fa84d8d237d183f1264bb8589f4c65bb" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 795997a2d..7dfd97f5d 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -148,6 +148,7 @@ var resources_arm64 = []*ResourceDesc{ {Name: "sock_can_raw", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_can", "sock_can_raw"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_dccp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_dccp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "sock_hf", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_hf"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_icmp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_icmp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_in", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -19909,6 +19910,12 @@ var structDescs_arm64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bt_chi_chan", FldName: "chan", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 3}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, }}}, + {Key: StructKey{Name: "sockaddr_hf"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_hf", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "family", TypeSize: 2}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "vm_id", TypeSize: 4}}, ValuesStart: 1, ValuesPerProc: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "port", TypeSize: 8}}}, + }}}, {Key: StructKey{Name: "sockaddr_ib"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_ib", TypeSize: 48}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "sib_family", TypeSize: 2}}, Val: 27}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "sib_pkey", TypeSize: 2}, ArgFormat: 1}}, @@ -27155,6 +27162,11 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_can"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "addr"}, }}, + {NR: 203, Name: "connect$hf", CallName: "connect", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_hf"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "addrlen", TypeSize: 8}}, Buf: "addr"}, + }}, {NR: 203, Name: "connect$inet", CallName: "connect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_in"}}}, @@ -35752,6 +35764,11 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, }}, + {NR: 212, Name: "recvmsg$hf", CallName: "recvmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, + }}, {NR: 212, Name: "recvmsg$kcm", CallName: "recvmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, @@ -36384,6 +36401,11 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_can[can_raw_msg]"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, }}, + {NR: 211, Name: "sendmsg$hf", CallName: "sendmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "send_msghdr"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, + }}, {NR: 211, Name: "sendmsg$inet_sctp", CallName: "sendmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_sctp", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_sctp"}}}, @@ -38732,6 +38754,11 @@ var syscalls_arm64 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}, Val: 1}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 198, Name: "socket$hf", CallName: "socket", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 198, Name: "socket$inet", CallName: "socket", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 2}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_type", FldName: "type", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 10, 2048, 524288}}, @@ -40311,6 +40338,7 @@ var consts_arm64 = []ConstValue{ {Name: "AF_BRIDGE", Value: 7}, {Name: "AF_CAIF", Value: 37}, {Name: "AF_CAN", Value: 29}, + {Name: "AF_HF", Value: 19}, {Name: "AF_IB", Value: 27}, {Name: "AF_INET", Value: 2}, {Name: "AF_INET6", Value: 10}, @@ -47450,4 +47478,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "4ba8a2783772cbbb053bcf652b39423f03bcf894" +const revision_arm64 = "ace57d73126bd77a9ee8ec4e7c3d980147e4509b" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index 545d95351..79bebfe76 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -143,6 +143,7 @@ var resources_ppc64le = []*ResourceDesc{ {Name: "sock_can_raw", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_can", "sock_can_raw"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_dccp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_dccp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_dccp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, + {Name: "sock_hf", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_hf"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in", "sock_icmp"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_icmp6", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in6", "sock_icmp6"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, {Name: "sock_in", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "sock", "sock_in"}, Values: []uint64{18446744073709551615, 18446744073709551516}}, @@ -19794,6 +19795,12 @@ var structDescs_ppc64le = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bt_chi_chan", FldName: "chan", TypeSize: 2, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 3}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, }}}, + {Key: StructKey{Name: "sockaddr_hf"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_hf", TypeSize: 16}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "family", TypeSize: 2}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &ProcType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "proc", FldName: "vm_id", TypeSize: 4}}, ValuesStart: 1, ValuesPerProc: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "port", TypeSize: 8}}}, + }}}, {Key: StructKey{Name: "sockaddr_ib"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "sockaddr_ib", TypeSize: 48}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "sib_family", TypeSize: 2}}, Val: 27}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "sib_pkey", TypeSize: 2}, ArgFormat: 1}}, @@ -26989,6 +26996,11 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_can"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "addr"}, }}, + {NR: 328, Name: "connect$hf", CallName: "connect", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_hf"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "addrlen", TypeSize: 8}}, Buf: "addr"}, + }}, {NR: 328, Name: "connect$inet", CallName: "connect", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_in", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "sockaddr_in"}}}, @@ -35554,6 +35566,11 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, }}, + {NR: 342, Name: "recvmsg$hf", CallName: "recvmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "recv_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{1073741824, 64, 8192, 1, 2, 32, 256, 65536}, BitMask: true}, + }}, {NR: 342, Name: "recvmsg$kcm", CallName: "recvmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_kcm", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "recv_msghdr", Dir: 2}}}, @@ -36102,6 +36119,11 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_can[can_raw_msg]"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, }}, + {NR: 341, Name: "sendmsg$hf", CallName: "sendmsg", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "fd", TypeSize: 4}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "send_msghdr"}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "send_flags", FldName: "f", TypeSize: 8}}, Vals: []uint64{2048, 4, 64, 128, 32768, 16384, 1, 16, 262144, 536870912, 67108864}, BitMask: true}, + }}, {NR: 341, Name: "sendmsg$inet_sctp", CallName: "sendmsg", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_sctp", FldName: "fd", TypeSize: 4}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "msg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "msghdr_sctp"}}}, @@ -38398,6 +38420,11 @@ var syscalls_ppc64le = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}, Val: 1}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_can_raw", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 326, Name: "socket$hf", CallName: "socket", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 19}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 8}}, Val: 2}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "proto", TypeSize: 8}}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "sock_hf", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 326, Name: "socket$inet", CallName: "socket", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "domain", TypeSize: 8}}, Val: 2}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_type", FldName: "type", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 10, 2048, 524288}}, @@ -40012,6 +40039,7 @@ var consts_ppc64le = []ConstValue{ {Name: "AF_BRIDGE", Value: 7}, {Name: "AF_CAIF", Value: 37}, {Name: "AF_CAN", Value: 29}, + {Name: "AF_HF", Value: 19}, {Name: "AF_IB", Value: 27}, {Name: "AF_INET", Value: 2}, {Name: "AF_INET6", Value: 10}, @@ -47109,4 +47137,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "70182bc26ef9a5b746c48ca2e6d5ae77e94b0b67" +const revision_ppc64le = "884e027fa3800c366eccd9a97b5b7b13ebc25abd" diff --git a/sys/linux/hafnium.txt b/sys/linux/hafnium.txt new file mode 100644 index 000000000..d5865fc51 --- /dev/null +++ b/sys/linux/hafnium.txt @@ -0,0 +1,24 @@ +# Copyright 2019 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +# Hafnium is a hypervisor. +# See https://hafnium.googlesource.com/hafnium and docs/hafnium/README.md + +include +include +include + +define AF_HF AF_ECONET + +resource sock_hf[sock] + +socket$hf(domain const[AF_HF], type const[SOCK_DGRAM], proto const[0]) sock_hf +connect$hf(fd sock_hf, addr ptr[in, sockaddr_hf], addrlen len[addr]) +sendmsg$hf(fd sock_hf, msg ptr[in, send_msghdr], f flags[send_flags]) +recvmsg$hf(fd sock_hf, msg ptr[inout, recv_msghdr], f flags[recv_flags]) + +sockaddr_hf { + family const[AF_HF, int16] + vm_id proc[1, 2, int32] + port int64 +} diff --git a/sys/linux/hafnium_386.const b/sys/linux/hafnium_386.const new file mode 100644 index 000000000..deb8816e8 --- /dev/null +++ b/sys/linux/hafnium_386.const @@ -0,0 +1,7 @@ +# AUTOGENERATED FILE +AF_HF = 19 +SOCK_DGRAM = 2 +__NR_connect = 362 +__NR_recvmsg = 372 +__NR_sendmsg = 370 +__NR_socket = 359 diff --git a/sys/linux/hafnium_amd64.const b/sys/linux/hafnium_amd64.const new file mode 100644 index 000000000..52aed2de8 --- /dev/null +++ b/sys/linux/hafnium_amd64.const @@ -0,0 +1,7 @@ +# AUTOGENERATED FILE +AF_HF = 19 +SOCK_DGRAM = 2 +__NR_connect = 42 +__NR_recvmsg = 47 +__NR_sendmsg = 46 +__NR_socket = 41 diff --git a/sys/linux/hafnium_arm.const b/sys/linux/hafnium_arm.const new file mode 100644 index 000000000..2402e0fd6 --- /dev/null +++ b/sys/linux/hafnium_arm.const @@ -0,0 +1,7 @@ +# AUTOGENERATED FILE +AF_HF = 19 +SOCK_DGRAM = 2 +__NR_connect = 283 +__NR_recvmsg = 297 +__NR_sendmsg = 296 +__NR_socket = 281 diff --git a/sys/linux/hafnium_arm64.const b/sys/linux/hafnium_arm64.const new file mode 100644 index 000000000..75878cf3b --- /dev/null +++ b/sys/linux/hafnium_arm64.const @@ -0,0 +1,7 @@ +# AUTOGENERATED FILE +AF_HF = 19 +SOCK_DGRAM = 2 +__NR_connect = 203 +__NR_recvmsg = 212 +__NR_sendmsg = 211 +__NR_socket = 198 diff --git a/sys/linux/hafnium_ppc64le.const b/sys/linux/hafnium_ppc64le.const new file mode 100644 index 000000000..a171e4bfe --- /dev/null +++ b/sys/linux/hafnium_ppc64le.const @@ -0,0 +1,7 @@ +# AUTOGENERATED FILE +AF_HF = 19 +SOCK_DGRAM = 2 +__NR_connect = 328 +__NR_recvmsg = 342 +__NR_sendmsg = 341 +__NR_socket = 326 -- cgit mrf-deployment