aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-11-17 15:44:57 -0800
committerDmitry Vyukov <dvyukov@google.com>2018-11-17 15:46:37 -0800
commit15d00718f7a556006e23a8951c9f22598ff91724 (patch)
tree06dfd8870aa0af6f20478d46584d3e0789ef657c /sys/linux
parentd8004ff2dc60902bdee1eea0ccc4ffaa04dc1e45 (diff)
sys/linux: refine description for PR_SET_MM
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/gen/386.go59
-rw-r--r--sys/linux/gen/amd64.go58
-rw-r--r--sys/linux/gen/arm.go59
-rw-r--r--sys/linux/gen/arm64.go58
-rw-r--r--sys/linux/gen/ppc64le.go58
-rw-r--r--sys/linux/prctl.txt27
-rw-r--r--sys/linux/prctl_386.const8
-rw-r--r--sys/linux/prctl_amd64.const8
-rw-r--r--sys/linux/prctl_arm.const8
-rw-r--r--sys/linux/prctl_arm64.const8
-rw-r--r--sys/linux/prctl_ppc64le.const8
11 files changed, 326 insertions, 33 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index e817d8c39..56ee1368a 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -15543,6 +15543,23 @@ var structDescs_386 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}}},
+ {Key: StructKey{Name: "prctl_mm_map"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "prctl_mm_map", TypeSize: 104}, Fields: []Type{
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_stack", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_end", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_end", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "auxv", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "auxv_size", TypeSize: 4}}, BitSize: 8, Buf: "auxv"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "exe_fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
+ }}},
{Key: StructKey{Name: "q_cbq_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "q_cbq_options", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_LSSOPT, int16], tc_cbq_lssopt]"}, FldName: "TCA_CBQ_LSSOPT"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_WRROPT, int16], tc_cbq_wrropt]"}, FldName: "TCA_CBQ_WRROPT"},
@@ -31009,6 +31026,33 @@ var syscalls_386 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 8},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}},
+ {NR: 172, Name: "prctl$PR_SET_MM", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "opt", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_AUXV", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 12},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_EXE_FILE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 13},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_MAP", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 14},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "prctl_mm_map"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_MAP_SIZE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 15},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
{NR: 172, Name: "prctl$PR_SET_NAME", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 15},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}},
@@ -31068,11 +31112,6 @@ var syscalls_386 = []*Syscall{
{NR: 172, Name: "prctl$PR_TASK_PERF_EVENTS_ENABLE", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 32},
}},
- {NR: 172, Name: "prctl$setmm", CallName: "prctl", Args: []Type{
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option1", TypeSize: 4}}, Val: 35},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "option2", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7}},
- &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "val", TypeSize: 4}},
- }},
{NR: 180, Name: "pread64", CallName: "pread64", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 1, IsVarlen: true}}},
@@ -38963,9 +39002,17 @@ var consts_386 = []ConstValue{
{Name: "PR_SET_FP_MODE", Value: 45},
{Name: "PR_SET_KEEPCAPS", Value: 8},
{Name: "PR_SET_MM", Value: 35},
+ {Name: "PR_SET_MM_ARG_END", Value: 9},
+ {Name: "PR_SET_MM_ARG_START", Value: 8},
+ {Name: "PR_SET_MM_AUXV", Value: 12},
{Name: "PR_SET_MM_BRK", Value: 7},
{Name: "PR_SET_MM_END_CODE", Value: 2},
{Name: "PR_SET_MM_END_DATA", Value: 4},
+ {Name: "PR_SET_MM_ENV_END", Value: 11},
+ {Name: "PR_SET_MM_ENV_START", Value: 10},
+ {Name: "PR_SET_MM_EXE_FILE", Value: 13},
+ {Name: "PR_SET_MM_MAP", Value: 14},
+ {Name: "PR_SET_MM_MAP_SIZE", Value: 15},
{Name: "PR_SET_MM_START_BRK", Value: 6},
{Name: "PR_SET_MM_START_CODE", Value: 1},
{Name: "PR_SET_MM_START_DATA", Value: 3},
@@ -42303,4 +42350,4 @@ var consts_386 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_386 = "5be615680ac09c332170d9f080a0be530e160a4f"
+const revision_386 = "81e1aad90c0a21a605e862eb212079b9b333a8f3"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 7b44df637..f2fd74588 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -15777,6 +15777,22 @@ var structDescs_amd64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}}},
+ {Key: StructKey{Name: "prctl_mm_map"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "prctl_mm_map", TypeSize: 104}, Fields: []Type{
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_stack", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_end", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_end", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "auxv", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "auxv_size", TypeSize: 4}}, BitSize: 8, Buf: "auxv"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "exe_fd", TypeSize: 4}},
+ }}},
{Key: StructKey{Name: "q_cbq_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "q_cbq_options", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_LSSOPT, int16], tc_cbq_lssopt]"}, FldName: "TCA_CBQ_LSSOPT"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_WRROPT, int16], tc_cbq_wrropt]"}, FldName: "TCA_CBQ_WRROPT"},
@@ -31538,6 +31554,33 @@ var syscalls_amd64 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 8},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 8}}, Kind: 2, RangeEnd: 1},
}},
+ {NR: 157, Name: "prctl$PR_SET_MM", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "opt", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "arg", TypeSize: 8}},
+ }},
+ {NR: 157, Name: "prctl$PR_SET_MM_AUXV", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 12},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 157, Name: "prctl$PR_SET_MM_EXE_FILE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 13},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 157, Name: "prctl$PR_SET_MM_MAP", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 14},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "prctl_mm_map"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 157, Name: "prctl$PR_SET_MM_MAP_SIZE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 15},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
{NR: 157, Name: "prctl$PR_SET_NAME", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 15},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}},
@@ -31597,11 +31640,6 @@ var syscalls_amd64 = []*Syscall{
{NR: 157, Name: "prctl$PR_TASK_PERF_EVENTS_ENABLE", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 32},
}},
- {NR: 157, Name: "prctl$setmm", CallName: "prctl", Args: []Type{
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option1", TypeSize: 8}}, Val: 35},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "option2", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7}},
- &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "val", TypeSize: 8}},
- }},
{NR: 17, Name: "pread64", CallName: "pread64", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 1, IsVarlen: true}}},
@@ -39641,9 +39679,17 @@ var consts_amd64 = []ConstValue{
{Name: "PR_SET_FP_MODE", Value: 45},
{Name: "PR_SET_KEEPCAPS", Value: 8},
{Name: "PR_SET_MM", Value: 35},
+ {Name: "PR_SET_MM_ARG_END", Value: 9},
+ {Name: "PR_SET_MM_ARG_START", Value: 8},
+ {Name: "PR_SET_MM_AUXV", Value: 12},
{Name: "PR_SET_MM_BRK", Value: 7},
{Name: "PR_SET_MM_END_CODE", Value: 2},
{Name: "PR_SET_MM_END_DATA", Value: 4},
+ {Name: "PR_SET_MM_ENV_END", Value: 11},
+ {Name: "PR_SET_MM_ENV_START", Value: 10},
+ {Name: "PR_SET_MM_EXE_FILE", Value: 13},
+ {Name: "PR_SET_MM_MAP", Value: 14},
+ {Name: "PR_SET_MM_MAP_SIZE", Value: 15},
{Name: "PR_SET_MM_START_BRK", Value: 6},
{Name: "PR_SET_MM_START_CODE", Value: 1},
{Name: "PR_SET_MM_START_DATA", Value: 3},
@@ -43006,4 +43052,4 @@ var consts_amd64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_amd64 = "b7f4b3d01115f65eaf273efa57f7ae10400936dc"
+const revision_amd64 = "03c42a49553bc0ccf794b9c2d7a9ddef28f0bc36"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index e5d1a8398..ea4e8ab8b 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -15398,6 +15398,23 @@ var structDescs_arm = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}}},
+ {Key: StructKey{Name: "prctl_mm_map"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "prctl_mm_map", TypeSize: 104}, Fields: []Type{
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_stack", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_end", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_end", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "auxv", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "auxv_size", TypeSize: 4}}, BitSize: 8, Buf: "auxv"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "exe_fd", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
+ }}},
{Key: StructKey{Name: "q_cbq_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "q_cbq_options", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_LSSOPT, int16], tc_cbq_lssopt]"}, FldName: "TCA_CBQ_LSSOPT"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_WRROPT, int16], tc_cbq_wrropt]"}, FldName: "TCA_CBQ_WRROPT"},
@@ -30778,6 +30795,33 @@ var syscalls_arm = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 8},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}},
+ {NR: 172, Name: "prctl$PR_SET_MM", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "opt", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_AUXV", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 12},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_EXE_FILE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 13},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_MAP", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 14},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "prctl_mm_map"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 4}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 172, Name: "prctl$PR_SET_MM_MAP_SIZE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 4}}, Val: 15},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
{NR: 172, Name: "prctl$PR_SET_NAME", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 15},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}},
@@ -30837,11 +30881,6 @@ var syscalls_arm = []*Syscall{
{NR: 172, Name: "prctl$PR_TASK_PERF_EVENTS_ENABLE", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 4}}, Val: 32},
}},
- {NR: 172, Name: "prctl$setmm", CallName: "prctl", Args: []Type{
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option1", TypeSize: 4}}, Val: 35},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "option2", TypeSize: 4}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7}},
- &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "val", TypeSize: 4}},
- }},
{NR: 180, Name: "pread64", CallName: "pread64", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 1, IsVarlen: true}}},
@@ -38805,9 +38844,17 @@ var consts_arm = []ConstValue{
{Name: "PR_SET_FP_MODE", Value: 45},
{Name: "PR_SET_KEEPCAPS", Value: 8},
{Name: "PR_SET_MM", Value: 35},
+ {Name: "PR_SET_MM_ARG_END", Value: 9},
+ {Name: "PR_SET_MM_ARG_START", Value: 8},
+ {Name: "PR_SET_MM_AUXV", Value: 12},
{Name: "PR_SET_MM_BRK", Value: 7},
{Name: "PR_SET_MM_END_CODE", Value: 2},
{Name: "PR_SET_MM_END_DATA", Value: 4},
+ {Name: "PR_SET_MM_ENV_END", Value: 11},
+ {Name: "PR_SET_MM_ENV_START", Value: 10},
+ {Name: "PR_SET_MM_EXE_FILE", Value: 13},
+ {Name: "PR_SET_MM_MAP", Value: 14},
+ {Name: "PR_SET_MM_MAP_SIZE", Value: 15},
{Name: "PR_SET_MM_START_BRK", Value: 6},
{Name: "PR_SET_MM_START_CODE", Value: 1},
{Name: "PR_SET_MM_START_DATA", Value: 3},
@@ -42142,4 +42189,4 @@ var consts_arm = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm = "afc6275b4fb5b23a31eb035d17f61c6e71c4f752"
+const revision_arm = "c14b73154c70314bff7fda0ce0a1b1af89b2ee94"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index a548103f7..aa173a9bb 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -15594,6 +15594,22 @@ var structDescs_arm64 = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}}},
+ {Key: StructKey{Name: "prctl_mm_map"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "prctl_mm_map", TypeSize: 104}, Fields: []Type{
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_stack", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_end", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_end", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "auxv", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "auxv_size", TypeSize: 4}}, BitSize: 8, Buf: "auxv"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "exe_fd", TypeSize: 4}},
+ }}},
{Key: StructKey{Name: "q_cbq_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "q_cbq_options", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_LSSOPT, int16], tc_cbq_lssopt]"}, FldName: "TCA_CBQ_LSSOPT"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_WRROPT, int16], tc_cbq_wrropt]"}, FldName: "TCA_CBQ_WRROPT"},
@@ -31061,6 +31077,33 @@ var syscalls_arm64 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 8},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 8}}, Kind: 2, RangeEnd: 1},
}},
+ {NR: 167, Name: "prctl$PR_SET_MM", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "opt", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "arg", TypeSize: 8}},
+ }},
+ {NR: 167, Name: "prctl$PR_SET_MM_AUXV", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 12},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 167, Name: "prctl$PR_SET_MM_EXE_FILE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 13},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 167, Name: "prctl$PR_SET_MM_MAP", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 14},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "prctl_mm_map"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 167, Name: "prctl$PR_SET_MM_MAP_SIZE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 15},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
{NR: 167, Name: "prctl$PR_SET_NAME", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 15},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}},
@@ -31120,11 +31163,6 @@ var syscalls_arm64 = []*Syscall{
{NR: 167, Name: "prctl$PR_TASK_PERF_EVENTS_ENABLE", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 32},
}},
- {NR: 167, Name: "prctl$setmm", CallName: "prctl", Args: []Type{
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option1", TypeSize: 8}}, Val: 35},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "option2", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7}},
- &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "val", TypeSize: 8}},
- }},
{NR: 67, Name: "pread64", CallName: "pread64", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 1, IsVarlen: true}}},
@@ -39046,9 +39084,17 @@ var consts_arm64 = []ConstValue{
{Name: "PR_SET_FP_MODE", Value: 45},
{Name: "PR_SET_KEEPCAPS", Value: 8},
{Name: "PR_SET_MM", Value: 35},
+ {Name: "PR_SET_MM_ARG_END", Value: 9},
+ {Name: "PR_SET_MM_ARG_START", Value: 8},
+ {Name: "PR_SET_MM_AUXV", Value: 12},
{Name: "PR_SET_MM_BRK", Value: 7},
{Name: "PR_SET_MM_END_CODE", Value: 2},
{Name: "PR_SET_MM_END_DATA", Value: 4},
+ {Name: "PR_SET_MM_ENV_END", Value: 11},
+ {Name: "PR_SET_MM_ENV_START", Value: 10},
+ {Name: "PR_SET_MM_EXE_FILE", Value: 13},
+ {Name: "PR_SET_MM_MAP", Value: 14},
+ {Name: "PR_SET_MM_MAP_SIZE", Value: 15},
{Name: "PR_SET_MM_START_BRK", Value: 6},
{Name: "PR_SET_MM_START_CODE", Value: 1},
{Name: "PR_SET_MM_START_DATA", Value: 3},
@@ -42364,4 +42410,4 @@ var consts_arm64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm64 = "87b3d2dfde218108edd15e08bd8912168e4461ec"
+const revision_arm64 = "702b73cdb13ed1ea89289858aca56d949beae1c6"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index 4d3e529b6..9ce9ec8c8 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -15504,6 +15504,22 @@ var structDescs_ppc64le = []*KeyedStruct{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "flags", TypeSize: 4}}, Kind: 2, RangeEnd: 1},
}}},
+ {Key: StructKey{Name: "prctl_mm_map"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "prctl_mm_map", TypeSize: 104}, Fields: []Type{
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_code", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "end_data", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "brk", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "start_stack", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "arg_end", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_start", TypeSize: 8}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma64", FldName: "env_end", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "auxv", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "auxv_size", TypeSize: 4}}, BitSize: 8, Buf: "auxv"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "exe_fd", TypeSize: 4}},
+ }}},
{Key: StructKey{Name: "q_cbq_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "q_cbq_options", IsVarlen: true}, Fields: []Type{
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_LSSOPT, int16], tc_cbq_lssopt]"}, FldName: "TCA_CBQ_LSSOPT"},
&StructType{Key: StructKey{Name: "nlattr_t[const[TCA_CBQ_WRROPT, int16], tc_cbq_wrropt]"}, FldName: "TCA_CBQ_WRROPT"},
@@ -29552,6 +29568,33 @@ var syscalls_ppc64le = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 8},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 8}}, Kind: 2, RangeEnd: 1},
}},
+ {NR: 171, Name: "prctl$PR_SET_MM", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "opt", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "arg", TypeSize: 8}},
+ }},
+ {NR: 171, Name: "prctl$PR_SET_MM_AUXV", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 12},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 171, Name: "prctl$PR_SET_MM_EXE_FILE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 13},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "arg", TypeSize: 4}},
+ }},
+ {NR: 171, Name: "prctl$PR_SET_MM_MAP", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 14},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "prctl_mm_map"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Buf: "arg"},
+ }},
+ {NR: 171, Name: "prctl$PR_SET_MM_MAP_SIZE", CallName: "prctl", Args: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 35},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "opt", TypeSize: 8}}, Val: 15},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
{NR: 171, Name: "prctl$PR_SET_NAME", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 15},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}},
@@ -29611,11 +29654,6 @@ var syscalls_ppc64le = []*Syscall{
{NR: 171, Name: "prctl$PR_TASK_PERF_EVENTS_ENABLE", CallName: "prctl", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option", TypeSize: 8}}, Val: 32},
}},
- {NR: 171, Name: "prctl$setmm", CallName: "prctl", Args: []Type{
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "option1", TypeSize: 8}}, Val: 35},
- &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "prctl_mm_option", FldName: "option2", TypeSize: 8}}, Vals: []uint64{1, 2, 3, 4, 5, 6, 7}},
- &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "val", TypeSize: 8}},
- }},
{NR: 179, Name: "pread64", CallName: "pread64", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "buf", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 1, IsVarlen: true}}},
@@ -37341,9 +37379,17 @@ var consts_ppc64le = []ConstValue{
{Name: "PR_SET_FP_MODE", Value: 45},
{Name: "PR_SET_KEEPCAPS", Value: 8},
{Name: "PR_SET_MM", Value: 35},
+ {Name: "PR_SET_MM_ARG_END", Value: 9},
+ {Name: "PR_SET_MM_ARG_START", Value: 8},
+ {Name: "PR_SET_MM_AUXV", Value: 12},
{Name: "PR_SET_MM_BRK", Value: 7},
{Name: "PR_SET_MM_END_CODE", Value: 2},
{Name: "PR_SET_MM_END_DATA", Value: 4},
+ {Name: "PR_SET_MM_ENV_END", Value: 11},
+ {Name: "PR_SET_MM_ENV_START", Value: 10},
+ {Name: "PR_SET_MM_EXE_FILE", Value: 13},
+ {Name: "PR_SET_MM_MAP", Value: 14},
+ {Name: "PR_SET_MM_MAP_SIZE", Value: 15},
{Name: "PR_SET_MM_START_BRK", Value: 6},
{Name: "PR_SET_MM_START_CODE", Value: 1},
{Name: "PR_SET_MM_START_DATA", Value: 3},
@@ -39722,4 +39768,4 @@ var consts_ppc64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_ppc64le = "0944c19ee6b865deae581fd3e31e059d1989696d"
+const revision_ppc64le = "ecb0de3bb5fee4cfba1adbd79e9bf092f43b15a7"
diff --git a/sys/linux/prctl.txt b/sys/linux/prctl.txt
index 20147e427..449464d12 100644
--- a/sys/linux/prctl.txt
+++ b/sys/linux/prctl.txt
@@ -76,9 +76,30 @@ prctl$PR_MCE_KILL_GET(option const[PR_MCE_KILL_GET])
prctl_mce_kill_mode = PR_MCE_KILL_CLEAR, PR_MCE_KILL_SET
prctl_mce_kill_submode = PR_MCE_KILL_LATE, PR_MCE_KILL_EARLY, PR_MCE_KILL_DEFAULT
-prctl$setmm(option1 const[PR_SET_MM], option2 flags[prctl_mm_option], val vma)
-
-prctl_mm_option = PR_SET_MM_START_CODE, PR_SET_MM_END_CODE, PR_SET_MM_START_DATA, PR_SET_MM_END_DATA, PR_SET_MM_START_STACK, PR_SET_MM_START_BRK, PR_SET_MM_BRK
+prctl$PR_SET_MM(option const[PR_SET_MM], opt flags[prctl_mm_option], arg vma)
+prctl$PR_SET_MM_EXE_FILE(option const[PR_SET_MM], opt const[PR_SET_MM_EXE_FILE], arg fd)
+prctl$PR_SET_MM_AUXV(option const[PR_SET_MM], opt const[PR_SET_MM_AUXV], arg ptr[in, array[int8]], len bytesize[arg])
+prctl$PR_SET_MM_MAP(option const[PR_SET_MM], opt const[PR_SET_MM_MAP], arg ptr[in, prctl_mm_map], len bytesize[arg])
+prctl$PR_SET_MM_MAP_SIZE(option const[PR_SET_MM], opt const[PR_SET_MM_MAP_SIZE], arg ptr[out, int32])
+
+prctl_mm_option = PR_SET_MM_START_CODE, PR_SET_MM_END_CODE, PR_SET_MM_START_DATA, PR_SET_MM_END_DATA, PR_SET_MM_START_STACK, PR_SET_MM_START_BRK, PR_SET_MM_BRK, PR_SET_MM_ARG_START, PR_SET_MM_ARG_END, PR_SET_MM_ENV_START, PR_SET_MM_ENV_END
+
+prctl_mm_map {
+ start_code vma64
+ end_code vma64
+ start_data vma64
+ end_data vma64
+ start_brk vma64
+ brk vma64
+ start_stack vma64
+ arg_start vma64
+ arg_end vma64
+ env_start vma64
+ env_end vma64
+ auxv ptr[in, array[int8]]
+ auxv_size bytesize[auxv, int32]
+ exe_fd fd
+}
prctl$PR_SET_PTRACER(option const[PR_SET_PTRACER], pid pid)
diff --git a/sys/linux/prctl_386.const b/sys/linux/prctl_386.const
index ea3d2e1e9..0b9c3ab97 100644
--- a/sys/linux/prctl_386.const
+++ b/sys/linux/prctl_386.const
@@ -69,9 +69,17 @@ PR_SET_FPEXC = 12
PR_SET_FP_MODE = 45
PR_SET_KEEPCAPS = 8
PR_SET_MM = 35
+PR_SET_MM_ARG_END = 9
+PR_SET_MM_ARG_START = 8
+PR_SET_MM_AUXV = 12
PR_SET_MM_BRK = 7
PR_SET_MM_END_CODE = 2
PR_SET_MM_END_DATA = 4
+PR_SET_MM_ENV_END = 11
+PR_SET_MM_ENV_START = 10
+PR_SET_MM_EXE_FILE = 13
+PR_SET_MM_MAP = 14
+PR_SET_MM_MAP_SIZE = 15
PR_SET_MM_START_BRK = 6
PR_SET_MM_START_CODE = 1
PR_SET_MM_START_DATA = 3
diff --git a/sys/linux/prctl_amd64.const b/sys/linux/prctl_amd64.const
index e0c1f3ad2..d2c014e56 100644
--- a/sys/linux/prctl_amd64.const
+++ b/sys/linux/prctl_amd64.const
@@ -69,9 +69,17 @@ PR_SET_FPEXC = 12
PR_SET_FP_MODE = 45
PR_SET_KEEPCAPS = 8
PR_SET_MM = 35
+PR_SET_MM_ARG_END = 9
+PR_SET_MM_ARG_START = 8
+PR_SET_MM_AUXV = 12
PR_SET_MM_BRK = 7
PR_SET_MM_END_CODE = 2
PR_SET_MM_END_DATA = 4
+PR_SET_MM_ENV_END = 11
+PR_SET_MM_ENV_START = 10
+PR_SET_MM_EXE_FILE = 13
+PR_SET_MM_MAP = 14
+PR_SET_MM_MAP_SIZE = 15
PR_SET_MM_START_BRK = 6
PR_SET_MM_START_CODE = 1
PR_SET_MM_START_DATA = 3
diff --git a/sys/linux/prctl_arm.const b/sys/linux/prctl_arm.const
index 933fb9abe..11f16c599 100644
--- a/sys/linux/prctl_arm.const
+++ b/sys/linux/prctl_arm.const
@@ -69,9 +69,17 @@ PR_SET_FPEXC = 12
PR_SET_FP_MODE = 45
PR_SET_KEEPCAPS = 8
PR_SET_MM = 35
+PR_SET_MM_ARG_END = 9
+PR_SET_MM_ARG_START = 8
+PR_SET_MM_AUXV = 12
PR_SET_MM_BRK = 7
PR_SET_MM_END_CODE = 2
PR_SET_MM_END_DATA = 4
+PR_SET_MM_ENV_END = 11
+PR_SET_MM_ENV_START = 10
+PR_SET_MM_EXE_FILE = 13
+PR_SET_MM_MAP = 14
+PR_SET_MM_MAP_SIZE = 15
PR_SET_MM_START_BRK = 6
PR_SET_MM_START_CODE = 1
PR_SET_MM_START_DATA = 3
diff --git a/sys/linux/prctl_arm64.const b/sys/linux/prctl_arm64.const
index ade4c7fcf..4444c6eb7 100644
--- a/sys/linux/prctl_arm64.const
+++ b/sys/linux/prctl_arm64.const
@@ -69,9 +69,17 @@ PR_SET_FPEXC = 12
PR_SET_FP_MODE = 45
PR_SET_KEEPCAPS = 8
PR_SET_MM = 35
+PR_SET_MM_ARG_END = 9
+PR_SET_MM_ARG_START = 8
+PR_SET_MM_AUXV = 12
PR_SET_MM_BRK = 7
PR_SET_MM_END_CODE = 2
PR_SET_MM_END_DATA = 4
+PR_SET_MM_ENV_END = 11
+PR_SET_MM_ENV_START = 10
+PR_SET_MM_EXE_FILE = 13
+PR_SET_MM_MAP = 14
+PR_SET_MM_MAP_SIZE = 15
PR_SET_MM_START_BRK = 6
PR_SET_MM_START_CODE = 1
PR_SET_MM_START_DATA = 3
diff --git a/sys/linux/prctl_ppc64le.const b/sys/linux/prctl_ppc64le.const
index ba41c856e..1ab70e56a 100644
--- a/sys/linux/prctl_ppc64le.const
+++ b/sys/linux/prctl_ppc64le.const
@@ -69,9 +69,17 @@ PR_SET_FPEXC = 12
PR_SET_FP_MODE = 45
PR_SET_KEEPCAPS = 8
PR_SET_MM = 35
+PR_SET_MM_ARG_END = 9
+PR_SET_MM_ARG_START = 8
+PR_SET_MM_AUXV = 12
PR_SET_MM_BRK = 7
PR_SET_MM_END_CODE = 2
PR_SET_MM_END_DATA = 4
+PR_SET_MM_ENV_END = 11
+PR_SET_MM_ENV_START = 10
+PR_SET_MM_EXE_FILE = 13
+PR_SET_MM_MAP = 14
+PR_SET_MM_MAP_SIZE = 15
PR_SET_MM_START_BRK = 6
PR_SET_MM_START_CODE = 1
PR_SET_MM_START_DATA = 3