aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2017-09-20 14:01:19 +0200
committerDmitry Vyukov <dvyukov@google.com>2017-09-20 14:01:19 +0200
commit4e341009dbb5b5acab09ed4feab81592f2860829 (patch)
treedf688187d5e4c62e0911c2624f857ef7dfb4a321 /sys/linux
parent0818340e80e2541b2c9fd16755f7b04c383f1b9b (diff)
sys/linux: improve user_desc description
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/386.go17
-rw-r--r--sys/linux/amd64.go17
-rw-r--r--sys/linux/ppc64le.go17
-rw-r--r--sys/linux/sys.txt17
4 files changed, 46 insertions, 22 deletions
diff --git a/sys/linux/386.go b/sys/linux/386.go
index d58bc604e..bb166ec6e 100644
--- a/sys/linux/386.go
+++ b/sys/linux/386.go
@@ -5516,11 +5516,16 @@ var structDescs_386 = []*KeyedStruct{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd1", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "user_desc"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "user_desc", TypeSize: 16}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "base", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "flags", TypeSize: 1}}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry_number", TypeSize: 4}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_bases", FldName: "base_addr", TypeSize: 4}}, Vals: []uint64{0, 4096, 1048576, 536870912, 536872960, 536875008, 4294967295}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_limits", FldName: "limit", TypeSize: 4}}, Vals: []uint64{0, 1024, 4096, 8192, 16384, 4294967295}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_32bit", TypeSize: 4}, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "contents", TypeSize: 4}, BitfieldOff: 1, BitfieldLen: 2, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_exec_only", TypeSize: 4}, BitfieldOff: 3, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit_in_pages", TypeSize: 4}, BitfieldOff: 4, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_not_present", TypeSize: 4}, BitfieldOff: 5, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "useable", TypeSize: 4}, BitfieldOff: 6, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "lm", TypeSize: 4}, BitfieldOff: 7, BitfieldLen: 1}},
}}},
{Key: StructKey{Name: "ustat", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ustat", TypeSize: 20, ArgDir: 1}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "free", TypeSize: 4, ArgDir: 1}}},
@@ -16729,4 +16734,4 @@ var consts_386 = []ConstValue{
{Name: "__WNOTHREAD", Value: 536870912},
}
-const revision_386 = "817d5dcfa9dec456b49c7cc6ca36ba9b9d5c1446"
+const revision_386 = "86d577076d75af98e3c800a3c65bf8e4869e3ea4"
diff --git a/sys/linux/amd64.go b/sys/linux/amd64.go
index 0f3289ddf..f3f058d81 100644
--- a/sys/linux/amd64.go
+++ b/sys/linux/amd64.go
@@ -5696,11 +5696,16 @@ var structDescs_amd64 = []*KeyedStruct{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd1", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "user_desc"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "user_desc", TypeSize: 16}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "base", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "flags", TypeSize: 1}}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry_number", TypeSize: 4}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_bases", FldName: "base_addr", TypeSize: 4}}, Vals: []uint64{0, 4096, 1048576, 536870912, 536872960, 536875008, 4294967295}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_limits", FldName: "limit", TypeSize: 4}}, Vals: []uint64{0, 1024, 4096, 8192, 16384, 4294967295}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_32bit", TypeSize: 4}, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "contents", TypeSize: 4}, BitfieldOff: 1, BitfieldLen: 2, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_exec_only", TypeSize: 4}, BitfieldOff: 3, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit_in_pages", TypeSize: 4}, BitfieldOff: 4, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_not_present", TypeSize: 4}, BitfieldOff: 5, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "useable", TypeSize: 4}, BitfieldOff: 6, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "lm", TypeSize: 4}, BitfieldOff: 7, BitfieldLen: 1}},
}}},
{Key: StructKey{Name: "ustat", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ustat", TypeSize: 32, ArgDir: 1}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "free", TypeSize: 4, ArgDir: 1}}},
@@ -17259,4 +17264,4 @@ var consts_amd64 = []ConstValue{
{Name: "__WNOTHREAD", Value: 536870912},
}
-const revision_amd64 = "2110332256642767b7334820437051cbaa3bdec8"
+const revision_amd64 = "e482e82186ee2d78bed701630c062b7c5d5b23c6"
diff --git a/sys/linux/ppc64le.go b/sys/linux/ppc64le.go
index b73cd8324..6686885b5 100644
--- a/sys/linux/ppc64le.go
+++ b/sys/linux/ppc64le.go
@@ -5329,11 +5329,16 @@ var structDescs_ppc64le = []*KeyedStruct{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd1", TypeSize: 4, ArgDir: 1}},
}}},
{Key: StructKey{Name: "user_desc"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "user_desc", TypeSize: 16}, Fields: []Type{
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "base", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit", TypeSize: 4}}},
- &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "flags", TypeSize: 1}}},
- &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "entry_number", TypeSize: 4}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_bases", FldName: "base_addr", TypeSize: 4}}, Vals: []uint64{0, 4096, 1048576, 536870912, 536872960, 536875008, 4294967295}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "user_desc_limits", FldName: "limit", TypeSize: 4}}, Vals: []uint64{0, 1024, 4096, 8192, 16384, 4294967295}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_32bit", TypeSize: 4}, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "contents", TypeSize: 4}, BitfieldOff: 1, BitfieldLen: 2, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_exec_only", TypeSize: 4}, BitfieldOff: 3, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "limit_in_pages", TypeSize: 4}, BitfieldOff: 4, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "seg_not_present", TypeSize: 4}, BitfieldOff: 5, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "useable", TypeSize: 4}, BitfieldOff: 6, BitfieldLen: 1, BitfieldMdl: true}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "lm", TypeSize: 4}, BitfieldOff: 7, BitfieldLen: 1}},
}}},
{Key: StructKey{Name: "ustat", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "ustat", TypeSize: 32, ArgDir: 1}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "free", TypeSize: 4, ArgDir: 1}}},
@@ -16325,4 +16330,4 @@ var consts_ppc64le = []ConstValue{
{Name: "__WNOTHREAD", Value: 536870912},
}
-const revision_ppc64le = "97d1c4ad9a60234dd4a2125f5ef68755e795a6b2"
+const revision_ppc64le = "0af6f5872777fdaf20c06a1f982df39659c46b6a"
diff --git a/sys/linux/sys.txt b/sys/linux/sys.txt
index f2241155c..e72025674 100644
--- a/sys/linux/sys.txt
+++ b/sys/linux/sys.txt
@@ -802,14 +802,23 @@ ustat {
}
user_desc {
- entry int32
+ entry_number int32
# Base should be vma and limit should be len[base]
# But these fields are int32, so we can't use vma.
- base int32
- limit int32
- flags int8
+ base_addr flags[user_desc_bases, int32]
+ limit flags[user_desc_limits, int32]
+ seg_32bit int32:1
+ contents int32:2
+ read_exec_only int32:1
+ limit_in_pages int32:1
+ seg_not_present int32:1
+ useable int32:1
+ lm int32:1
}
+user_desc_bases = 0, 4096, 1048576, 536870912, 536872960, 536875008, 0xffffffff
+user_desc_limits = 0, 1024, 4096, 8192, 16384, 0xffffffff
+
sched_attr {
size flags[sched_attr_size, int32]
policy flags[sched_policy, int32]