aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/gen
diff options
context:
space:
mode:
authorAndré Almeida <andrealmeid@riseup.net>2020-02-17 02:27:23 -0300
committerGitHub <noreply@github.com>2020-02-17 06:27:23 +0100
commitd0d8e8bc776b3fd53659a8067a1eb6f69141d2eb (patch)
treed15a154fcbdf6704e6a7a52a1aa6616e82303bbc /sys/linux/gen
parent1f448cd62db290246f8793128f85bd84aaa7a59d (diff)
sys/linux: add new FUTEX_WAIT_MULTIPLE operation
Create individual file for futex syscall and add description for the new operation FUTEX_WAIT_MULTIPLE. Signed-off-by: André Almeida <andrealmeid@collabora.com>
Diffstat (limited to 'sys/linux/gen')
-rw-r--r--sys/linux/gen/386.go19
-rw-r--r--sys/linux/gen/amd64.go19
-rw-r--r--sys/linux/gen/arm.go19
-rw-r--r--sys/linux/gen/arm64.go19
-rw-r--r--sys/linux/gen/mips64le.go19
-rw-r--r--sys/linux/gen/ppc64le.go19
6 files changed, 102 insertions, 12 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 7123e28ff..93224973a 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -7297,6 +7297,11 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 12}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -49221,12 +49226,20 @@ var syscalls_386 = []*Syscall{
}},
{NR: 240, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 4}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 4}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 4}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 240, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 4}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 4}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 4}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 4}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 4}}},
+ }},
{NR: 299, Name: "futimesat", CallName: "futimesat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "dir", TypeSize: 4}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "pathname", TypeSize: 4}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
@@ -67654,6 +67667,8 @@ var consts_386 = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -75807,4 +75822,4 @@ var consts_386 = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_386 = "81074d7797beb1fd663277e323762de00cf0aee6"
+const revision_386 = "7e933a8cce847a63d31163d1c6dfa926b9d707ce"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 8505a0b0e..c261c2732 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -7431,6 +7431,11 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 16}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -50129,12 +50134,20 @@ var syscalls_amd64 = []*Syscall{
}},
{NR: 202, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 202, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 8}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 8}}},
+ }},
{NR: 261, Name: "futimesat", CallName: "futimesat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "dir", TypeSize: 4}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "pathname", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
@@ -68600,6 +68613,8 @@ var consts_amd64 = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -76767,4 +76782,4 @@ var consts_amd64 = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_amd64 = "154b48703f29bb3a08a78b81a3046cf44928e4d9"
+const revision_amd64 = "05f868b16d6867c0842ba72cf5f4e62b61b93a05"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 8b8ed5491..8a256e13e 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -7331,6 +7331,11 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 12}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -49114,12 +49119,20 @@ var syscalls_arm = []*Syscall{
}},
{NR: 240, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 4}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 4}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 4}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 4}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 240, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 4}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 4}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 4}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 4}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 4}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 4}}},
+ }},
{NR: 326, Name: "futimesat", CallName: "futimesat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "dir", TypeSize: 4}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "pathname", TypeSize: 4}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
@@ -67371,6 +67384,8 @@ var consts_arm = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -75459,4 +75474,4 @@ var consts_arm = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_arm = "5c075e7d181710010f2fc69117b0caba1ca876dd"
+const revision_arm = "c2ed820e865dcb4c50b91174fcb8be4d26c9b5cb"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index d7eea1f29..190400a78 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -7431,6 +7431,11 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 16}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -49850,12 +49855,20 @@ var syscalls_arm64 = []*Syscall{
}},
{NR: 98, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 98, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 8}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 8}}},
+ }},
{NR: 236, Name: "get_mempolicy", CallName: "get_mempolicy", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "mode", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "nodemask", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}},
@@ -68038,6 +68051,8 @@ var consts_arm64 = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -76112,4 +76127,4 @@ var consts_arm64 = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_arm64 = "8987c5cf20d8a46fba8534793aa33c4be1678e0f"
+const revision_arm64 = "e1ea3f956cb5b2b67e3d815b820bb7948c83c955"
diff --git a/sys/linux/gen/mips64le.go b/sys/linux/gen/mips64le.go
index c0e9f9523..9499536dc 100644
--- a/sys/linux/gen/mips64le.go
+++ b/sys/linux/gen/mips64le.go
@@ -7418,6 +7418,11 @@ var structDescs_mips64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 16}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -48942,12 +48947,20 @@ var syscalls_mips64le = []*Syscall{
}},
{NR: 5194, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 5194, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 8}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 8}}},
+ }},
{NR: 5251, Name: "futimesat", CallName: "futimesat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "dir", TypeSize: 4}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "pathname", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
@@ -66692,6 +66705,8 @@ var consts_mips64le = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -73735,4 +73750,4 @@ var consts_mips64le = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_mips64le = "2b84b657bff1ea3b7b3f73590543e4797622adbd"
+const revision_mips64le = "819b0d0076710643840257c4e954ec1603839dd2"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index 86ddccf53..8a0207c6b 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -7430,6 +7430,11 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "padding", TypeSize: 4}}},
}}},
+ {StructKey{Name: "futex_wait_block"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "futex_wait_block", TypeSize: 16}, Fields: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "uaddr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "bitset", TypeSize: 4}}, Val: 4294967295},
+ }}},
{StructKey{Name: "fw_policy"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "fw_policy", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_CLASSID, int16], tcm_handle]"}, FldName: "TCA_FW_CLASSID"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_FW_POLICE, int16], array[police_policy]]"}, FldName: "TCA_FW_POLICE"},
@@ -49785,12 +49790,20 @@ var syscalls_ppc64le = []*Syscall{
}},
{NR: 221, Name: "futex", CallName: "futex", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 128, 129, 139, 140}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "futex_op", FldName: "op", TypeSize: 8}}, Vals: []uint64{0, 1, 3, 4, 9, 13, 128, 129, 139, 140, 141}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "addr2", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}, Kind: 1, RangeEnd: 2}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val3", TypeSize: 4}}, Kind: 1, RangeEnd: 2},
}},
+ {NR: 221, Name: "futex$FUTEX_WAIT_MULTIPLE", CallName: "futex", Args: []Type{
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "addr", TypeSize: 8}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "futex_wait_block"}}, Kind: 1, RangeEnd: 129}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 13},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "val", TypeSize: 8}}, Path: []string{"addr"}},
+ &PtrType{TypeCommon{TypeName: "ptr", FldName: "timeout", TypeSize: 8}, &StructType{Key: StructKey{Name: "timespec"}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "addr2", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "val3", TypeSize: 8}}},
+ }},
{NR: 290, Name: "futimesat", CallName: "futimesat", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd_dir", FldName: "dir", TypeSize: 4}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "pathname", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}},
@@ -68060,6 +68073,8 @@ var consts_ppc64le = []ConstValue{
{"FUTEX_REQUEUE", 3},
{Name: "FUTEX_WAIT"},
{"FUTEX_WAIT_BITSET", 9},
+ {"FUTEX_WAIT_MULTIPLE", 13},
+ {"FUTEX_WAIT_MULTIPLE_PRIVATE", 141},
{"FUTEX_WAIT_PRIVATE", 128},
{"FUTEX_WAIT_REQUEUE_PI_PRIVATE", 139},
{"FUTEX_WAKE", 1},
@@ -76109,4 +76124,4 @@ var consts_ppc64le = []ConstValue{
{"ethtool_per_queue_op_size", 128},
}
-const revision_ppc64le = "3396f69ff357c213bed1cf176308552f52f7cb8a"
+const revision_ppc64le = "983c33d3c33e7722f2cf2de15b12fe03e0f7d9ba"