aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-01-23 14:34:33 +0100
committerDmitry Vyukov <dvyukov@google.com>2020-01-23 15:05:21 +0100
commit8d11a11a30aa5179bae3114b5c7ed644fce57dcc (patch)
tree78b77e13d6d5f2d980ea54a2e5d678409b15445a /sys/linux
parent0e8428d26ffd80789aa83442676e6fb800e9c0ff (diff)
sys/linux: improve infiniband_rdma descriptions
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/dev_infiniband_rdma.txt58
-rw-r--r--sys/linux/dev_infiniband_rdma_386.const2
-rw-r--r--sys/linux/dev_infiniband_rdma_amd64.const2
-rw-r--r--sys/linux/dev_infiniband_rdma_arm.const2
-rw-r--r--sys/linux/dev_infiniband_rdma_arm64.const2
-rw-r--r--sys/linux/dev_infiniband_rdma_mips64le.const2
-rw-r--r--sys/linux/dev_infiniband_rdma_ppc64le.const2
-rw-r--r--sys/linux/gen/386.go56
-rw-r--r--sys/linux/gen/amd64.go56
-rw-r--r--sys/linux/gen/arm.go56
-rw-r--r--sys/linux/gen/arm64.go56
-rw-r--r--sys/linux/gen/mips64le.go56
-rw-r--r--sys/linux/gen/ppc64le.go56
13 files changed, 211 insertions, 195 deletions
diff --git a/sys/linux/dev_infiniband_rdma.txt b/sys/linux/dev_infiniband_rdma.txt
index 6853a28ce..1376f5141 100644
--- a/sys/linux/dev_infiniband_rdma.txt
+++ b/sys/linux/dev_infiniband_rdma.txt
@@ -73,7 +73,7 @@ create_srq_ex_flags = MLX5_SRQ_FLAG_SIGNATURE
# ===========
mlx5_get_context_cmd_resp {
- async_fd int32
+ async_fd fd
num_comp_vectors int32
qp_tab_size int32
bf_reg_size int32
@@ -98,7 +98,9 @@ mlx5_get_context_cmd_resp {
}
mlx5_get_context_cmd {
+# TODO: are there named consts for commands?
command const[0x0, int32]
+# TODO: these probably should be replaced with bytesize8 of something.
in_words const[0xc, int16]
out_words const[0x12, int16]
response ptr[out, mlx5_get_context_cmd_resp]
@@ -357,7 +359,7 @@ dealloc_mw_cmd {
# ==================
create_comp_channel_resp {
- fd int32
+ fd fd
}
create_comp_channel_cmd {
@@ -1098,11 +1100,13 @@ open_xrcd_cmd {
in_words const[0x6, int16]
out_words const[0x1, int16]
response ptr[out, open_xrcd_resp]
- fd int32
- oflags int32
+ fd fd[opt]
+ oflags flags[xrcd_flags, int32]
driver_data array[int64]
}
+xrcd_flags = O_CREAT, O_EXCL
+
close_xrcd_cmd {
command const[0x26, int32]
in_words const[0x3, int16]
@@ -1114,24 +1118,24 @@ close_xrcd_cmd {
# ===============
ib_flow_eth_filter {
- dst_mac array[int8, 0x6]
- src_mac array[int8, 0x6]
- ether_type int16
+ dst_mac mac_addr
+ src_mac mac_addr
+ ether_type flags[ether_types, int16be]
vlan_tag int16
}
ib_flow_spec_eth {
type const[IB_FLOW_SPEC_ETH, int32]
- size const[0x10, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_eth_filter
mask ib_flow_eth_filter
}
ib_flow_ipv4_filter {
- src_ip int32
- dst_ip int32
- proto int8
+ src_ip ipv4_addr
+ dst_ip ipv4_addr
+ proto flags[ipv4_types, int8]
tos int8
ttl int8
flags flags[ib_ipv4_flags, int8]
@@ -1139,17 +1143,17 @@ ib_flow_ipv4_filter {
ib_flow_spec_ipv4 {
type const[IB_FLOW_SPEC_IPV4, int32]
- size const[0x20, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_ipv4_filter
mask ib_flow_ipv4_filter
}
ib_flow_ipv6_filter {
- src_ip array[int8, 0x10]
- dst_ip array[int8, 0x10]
+ src_ip ipv6_addr
+ dst_ip ipv6_addr
flow_label int32
- next_hdr int8
+ next_hdr flags[ipv6_types, int8]
traffic_class int8
hop_limit int8
reserved const[0x0, int8]
@@ -1157,20 +1161,20 @@ ib_flow_ipv6_filter {
ib_flow_spec_ipv6 {
type const[IB_FLOW_SPEC_IPV6, int32]
- size const[0x58, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_ipv6_filter
mask ib_flow_ipv6_filter
}
ib_flow_tcp_udp_filter {
- dst_port int16
- src_port int16
+ dst_port sock_port
+ src_port sock_port
}
ib_flow_spec_tcp_udp {
type int32[0x40:0x41]
- size const[0x10, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_tcp_udp_filter
mask ib_flow_tcp_udp_filter
@@ -1183,7 +1187,7 @@ ib_flow_esp_filter {
ib_flow_spec_esp {
type const[IB_FLOW_SPEC_ESP, int32]
- size const[0x18, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_esp_filter
mask ib_flow_esp_filter
@@ -1195,7 +1199,7 @@ ib_flow_tunnel_filter {
ib_flow_spec_tunnel {
type const[IB_FLOW_SPEC_VXLAN_TUNNEL, int32]
- size const[0x10, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_tunnel_filter
mask ib_flow_tunnel_filter
@@ -1209,7 +1213,7 @@ ib_flow_gre_filter {
ib_flow_spec_gre {
type const[IB_FLOW_SPEC_GRE, int32]
- size const[0x18, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_gre_filter
mask ib_flow_gre_filter
@@ -1221,7 +1225,7 @@ ib_flow_mpls_filter {
ib_flow_spec_mpls {
type const[IB_FLOW_SPEC_MPLS, int32]
- size const[0x10, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
val ib_flow_mpls_filter
mask ib_flow_mpls_filter
@@ -1229,7 +1233,7 @@ ib_flow_spec_mpls {
ib_flow_spec_action_tag {
type const[IB_FLOW_SPEC_ACTION_TAG, int32]
- size const[0x10, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
tag_id int32
reserved2 const[0x0, int32]
@@ -1237,14 +1241,14 @@ ib_flow_spec_action_tag {
ib_flow_spec_action_drop {
type const[IB_FLOW_SPEC_ACTION_DROP, int32]
- size const[0x8, int16]
+ size bytesize[parent, int16]
reserved const[0x0, int16]
}
ib_uverbs_flow_spec_action_count {
type const[IB_FLOW_SPEC_ACTION_COUNT, int32]
- size const[0x10, int16]
- reserved0 const[0x0, int16]
+ size bytesize[parent, int16]
+ reserved const[0x0, int16]
handle vcontext_handle
reserved1 const[0x0, int32]
}
diff --git a/sys/linux/dev_infiniband_rdma_386.const b/sys/linux/dev_infiniband_rdma_386.const
index cf4694973..e09299b24 100644
--- a/sys/linux/dev_infiniband_rdma_386.const
+++ b/sys/linux/dev_infiniband_rdma_386.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 64
+O_EXCL = 128
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/dev_infiniband_rdma_amd64.const b/sys/linux/dev_infiniband_rdma_amd64.const
index e36b83bcd..95116b611 100644
--- a/sys/linux/dev_infiniband_rdma_amd64.const
+++ b/sys/linux/dev_infiniband_rdma_amd64.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 64
+O_EXCL = 128
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/dev_infiniband_rdma_arm.const b/sys/linux/dev_infiniband_rdma_arm.const
index cf4694973..e09299b24 100644
--- a/sys/linux/dev_infiniband_rdma_arm.const
+++ b/sys/linux/dev_infiniband_rdma_arm.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 64
+O_EXCL = 128
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/dev_infiniband_rdma_arm64.const b/sys/linux/dev_infiniband_rdma_arm64.const
index f2f3c892a..d0e964258 100644
--- a/sys/linux/dev_infiniband_rdma_arm64.const
+++ b/sys/linux/dev_infiniband_rdma_arm64.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 64
+O_EXCL = 128
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/dev_infiniband_rdma_mips64le.const b/sys/linux/dev_infiniband_rdma_mips64le.const
index 957a35a37..b92585984 100644
--- a/sys/linux/dev_infiniband_rdma_mips64le.const
+++ b/sys/linux/dev_infiniband_rdma_mips64le.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 256
+O_EXCL = 1024
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/dev_infiniband_rdma_ppc64le.const b/sys/linux/dev_infiniband_rdma_ppc64le.const
index cf4694973..e09299b24 100644
--- a/sys/linux/dev_infiniband_rdma_ppc64le.const
+++ b/sys/linux/dev_infiniband_rdma_ppc64le.const
@@ -80,6 +80,8 @@ MLX5_QP_FLAG_SIGNATURE = 1
MLX5_QP_FLAG_TUNNEL_OFFLOADS = 4
MLX5_SRQ_FLAG_SIGNATURE = 1
O_CLOEXEC = 524288
+O_CREAT = 64
+O_EXCL = 128
O_RDWR = 2
RDMA_DRIVER_MLX5 = 1
RDMA_VERBS_IOCTL = 3222805249
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 6ecec456a..8c55e4b88 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -2608,7 +2608,7 @@ var structDescs_386 = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8303,9 +8303,9 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8314,18 +8314,18 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8335,75 +8335,75 @@ var structDescs_386 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8461,8 +8461,8 @@ var structDescs_386 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13690,7 +13690,7 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -34457,8 +34457,8 @@ var structDescs_386 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{64, 128}, BitMask: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "open_xrcd_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
@@ -74498,4 +74498,4 @@ var consts_386 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_386 = "27b3cfbd601e2dbf2da3fb4ec5e7ea85e7853be9"
+const revision_386 = "f46d0a2376decf686f94c2189d8da1bd18066b6c"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 56956a6ce..04872d6ee 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -2645,7 +2645,7 @@ var structDescs_amd64 = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8444,9 +8444,9 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8455,18 +8455,18 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8476,75 +8476,75 @@ var structDescs_amd64 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8604,8 +8604,8 @@ var structDescs_amd64 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13857,7 +13857,7 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -35114,8 +35114,8 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{64, 128}, BitMask: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "open_xrcd_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
@@ -75439,4 +75439,4 @@ var consts_amd64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_amd64 = "bb4413005f160aa76158144acc704b963393b213"
+const revision_amd64 = "ea8bb4354adf9010678cc405416d054d6ead0548"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 4c21b7fc3..e2156e56c 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -2624,7 +2624,7 @@ var structDescs_arm = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8334,9 +8334,9 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8345,18 +8345,18 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8366,75 +8366,75 @@ var structDescs_arm = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8494,8 +8494,8 @@ var structDescs_arm = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13548,7 +13548,7 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -34315,8 +34315,8 @@ var structDescs_arm = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{64, 128}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
@@ -74147,4 +74147,4 @@ var consts_arm = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm = "24411766192553258d7072e7d4fcb4770d028c75"
+const revision_arm = "30aefd651c09ddbba8704db3175c28f1b7e0d83e"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index c459875be..b7de4f154 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -2645,7 +2645,7 @@ var structDescs_arm64 = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8444,9 +8444,9 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8455,18 +8455,18 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8476,75 +8476,75 @@ var structDescs_arm64 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8604,8 +8604,8 @@ var structDescs_arm64 = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13666,7 +13666,7 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -34923,8 +34923,8 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{64, 128}, BitMask: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "open_xrcd_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
@@ -74784,4 +74784,4 @@ var consts_arm64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm64 = "8b29eb307531d68fb9898a0fa4d30c2f41fa6971"
+const revision_arm64 = "56efb2e47e4f5a1eb9de9e7619c0d92324ad9f57"
diff --git a/sys/linux/gen/mips64le.go b/sys/linux/gen/mips64le.go
index ef182c8aa..7958ae205 100644
--- a/sys/linux/gen/mips64le.go
+++ b/sys/linux/gen/mips64le.go
@@ -2642,7 +2642,7 @@ var structDescs_mips64le = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8441,9 +8441,9 @@ var structDescs_mips64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8452,18 +8452,18 @@ var structDescs_mips64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8473,75 +8473,75 @@ var structDescs_mips64le = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8601,8 +8601,8 @@ var structDescs_mips64le = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13610,7 +13610,7 @@ var structDescs_mips64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -34867,8 +34867,8 @@ var structDescs_mips64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{256, 1024}, BitMask: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "open_xrcd_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
@@ -72407,4 +72407,4 @@ var consts_mips64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_mips64le = "5d42d46572f1dbf8d4002b29a88301cb4fde6845"
+const revision_mips64le = "c693a0518cc9fa7054c6f7bc6542470016ca3b36"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index e2b0ce1e7..b8991b75b 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -2644,7 +2644,7 @@ var structDescs_ppc64le = []*KeyedStruct{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}}},
}}},
{Key: StructKey{Name: "create_comp_channel_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_comp_channel_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "create_cq_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "create_cq_cmd", ArgDir: 2, IsVarlen: true}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "command", TypeSize: 4, ArgDir: 2}}, Val: 18},
@@ -8443,9 +8443,9 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seq", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_eth_filter", TypeSize: 16, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_mac", TypeSize: 6, ArgDir: 2}, Kind: 1, RangeBegin: 6, RangeEnd: 6},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "ether_type", TypeSize: 2, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "dst_mac"},
+ &UnionType{Key: StructKey{Name: "mac_addr", Dir: 2}, FldName: "src_mac"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ether_types", FldName: "ether_type", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 13, 16, 17, 21, 22, 23, 24, 25, 26, 27, 28, 96, 245, 246, 247, 248, 249, 512, 513, 1536, 2048, 2053, 2054, 2560, 2561, 8939, 8944, 17157, 24576, 24577, 24578, 24579, 24580, 24581, 24582, 24583, 25944, 32821, 32923, 33011, 33024, 33079, 34525, 34824, 34825, 34878, 34887, 34888, 34892, 34915, 34916, 34924, 34948, 34958, 34978, 34984, 34997, 35006, 35018, 35045, 35047, 35061, 35063, 35064, 35067, 35078, 35085, 35092, 35095, 35119, 36864, 37120, 37376, 37632, 56026, 64507}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "vlan_tag", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_gre_filter", TypeSize: 8, ArgDir: 2}, Fields: []Type{
@@ -8454,18 +8454,18 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "key", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv4_filter", TypeSize: 12, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "src_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dst_ip", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "proto", TypeSize: 1, ArgDir: 2}}},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv4_addr", Dir: 2}, FldName: "dst_ip"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv4_types", FldName: "proto", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 46, 47, 50, 51, 92, 94, 98, 103, 108, 115, 132, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tos", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "ttl", TypeSize: 1, ArgDir: 2}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ib_ipv4_flags", FldName: "flags", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{2, 4}, BitMask: true},
}}},
{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_ipv6_filter", TypeSize: 40, ArgDir: 2}, Fields: []Type{
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "src_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
- &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "dst_ip", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "src_ip"},
+ &UnionType{Key: StructKey{Name: "ipv6_addr", Dir: 2}, FldName: "dst_ip"},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flow_label", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ipv6_types", FldName: "next_hdr", TypeSize: 1, ArgDir: 2}}, Vals: []uint64{0, 0, 0, 1, 2, 4, 6, 8, 12, 17, 22, 29, 33, 41, 43, 43, 44, 44, 46, 47, 47, 50, 50, 51, 51, 58, 58, 59, 59, 60, 60, 92, 94, 98, 103, 108, 115, 132, 135, 135, 136, 137, 255}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "traffic_class", TypeSize: 1, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "hop_limit", TypeSize: 1, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 1, ArgDir: 2}}},
@@ -8475,75 +8475,75 @@ var structDescs_ppc64le = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_flow_spec_action_drop", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_drop", TypeSize: 8, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4097},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 8},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_action_tag", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_action_tag", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4096},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tag_id", TypeSize: 4, ArgDir: 2}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "ib_flow_spec_esp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_esp", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 52},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_esp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_eth", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_eth", TypeSize: 40, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 32},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_eth_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_gre", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_gre", TypeSize: 24, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 81},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 24},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_gre_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv4", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv4", TypeSize: 32, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 48},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 32},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv4_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_ipv6", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_ipv6", TypeSize: 88, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 49},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 88},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_ipv6_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_mpls", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_mpls", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 96},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_mpls_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tcp_udp", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tcp_udp", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4, ArgDir: 2}}, Kind: 1, RangeBegin: 64, RangeEnd: 65},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_spec_tunnel", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_spec_tunnel", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 80},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "val"},
&StructType{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, FldName: "mask"},
}}},
{Key: StructKey{Name: "ib_flow_tcp_udp_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tcp_udp_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "dst_port", TypeSize: 2, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "src_port", TypeSize: 2, ArgDir: 2}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "dst_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16be", FldName: "src_port", TypeSize: 2, ArgDir: 2}, ArgFormat: 1}, Kind: 1, RangeBegin: 20000, RangeEnd: 20004},
}}},
{Key: StructKey{Name: "ib_flow_tunnel_filter", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_flow_tunnel_filter", TypeSize: 4, ArgDir: 2}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "tunnel_id", TypeSize: 4, ArgDir: 2}}},
@@ -8603,8 +8603,8 @@ var structDescs_ppc64le = []*KeyedStruct{
}}},
{Key: StructKey{Name: "ib_uverbs_flow_spec_action_count", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ib_uverbs_flow_spec_action_count", TypeSize: 16, ArgDir: 2}, Fields: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 4, ArgDir: 2}}, Val: 4099},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 2, ArgDir: 2}}, Val: 16},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved0", TypeSize: 2, ArgDir: 2}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 2, ArgDir: 2}}, BitSize: 8, Path: []string{"parent"}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved", TypeSize: 2, ArgDir: 2}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "vcontext_handle", FldName: "handle", TypeSize: 4, ArgDir: 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}},
}}},
@@ -13612,7 +13612,7 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "lib_caps", TypeSize: 8, ArgDir: 2}}},
}}},
{Key: StructKey{Name: "mlx5_get_context_cmd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "mlx5_get_context_cmd_resp", TypeSize: 80, ArgDir: 1}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "async_fd", TypeSize: 4, ArgDir: 1}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "async_fd", TypeSize: 4, ArgDir: 1}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "num_comp_vectors", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "qp_tab_size", TypeSize: 4, ArgDir: 1}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "bf_reg_size", TypeSize: 4, ArgDir: 1}}},
@@ -34869,8 +34869,8 @@ var structDescs_ppc64le = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "in_words", TypeSize: 2, ArgDir: 2}}, Val: 6},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "out_words", TypeSize: 2, ArgDir: 2}}, Val: 1},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "response", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd", TypeSize: 4, ArgDir: 2}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "oflags", TypeSize: 4, ArgDir: 2}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4, ArgDir: 2, IsOptional: true}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "xrcd_flags", FldName: "oflags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{64, 128}, BitMask: true},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "driver_data", ArgDir: 2, IsVarlen: true}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 2}}}},
}}},
{Key: StructKey{Name: "open_xrcd_resp", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "open_xrcd_resp", TypeSize: 4, ArgDir: 1}, Fields: []Type{
@@ -74743,4 +74743,4 @@ var consts_ppc64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_ppc64le = "35f2bcf13af48b949fcd39cfc088a58c4afa7300"
+const revision_ppc64le = "c10818d0a21e7e201ef4c7fbf28103eb5791cf42"