aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-08-26 04:54:54 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-08-26 04:54:54 +0200
commit77e79ca08e54764a84a6f0dfa83bcfc9a7494d08 (patch)
tree746fcb97b690e88bf60a4cfb98e876d9f8d2dbd1 /sys/linux
parent36d87ddbf8693dafac3c0952094063326817a9a0 (diff)
sys/linux: add userio descriptions
Update #533
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/gen/386.go35
-rw-r--r--sys/linux/gen/amd64.go35
-rw-r--r--sys/linux/gen/arm.go35
-rw-r--r--sys/linux/gen/arm64.go35
-rw-r--r--sys/linux/gen/ppc64le.go35
-rw-r--r--sys/linux/sys.txt1
-rw-r--r--sys/linux/userio.txt18
-rw-r--r--sys/linux/userio_386.const7
-rw-r--r--sys/linux/userio_amd64.const7
-rw-r--r--sys/linux/userio_arm.const7
-rw-r--r--sys/linux/userio_arm64.const7
-rw-r--r--sys/linux/userio_ppc64le.const7
12 files changed, 218 insertions, 11 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go
index 958eb68ab..1a9560dc8 100644
--- a/sys/linux/gen/386.go
+++ b/sys/linux/gen/386.go
@@ -78,6 +78,7 @@ var resources_386 = []*ResourceDesc{
{Name: "fd_uffd", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uffd"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uhid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uhid"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uinput", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uinput"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
+ {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_v4l2_buffer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_v4l2_buffer"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
@@ -18653,6 +18654,18 @@ var structDescs_386 = []*KeyedStruct{
&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: "userio_cmd[USERIO_CMD_REGISTER]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_REGISTER]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 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}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "inode", TypeSize: 4, ArgDir: 1}}},
@@ -29172,7 +29185,7 @@ var syscalls_386 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 12}, Kind: 2, Values: []string{"/dev/userio\x00"}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "open_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 1024, 8192, 524288, 64, 16384, 65536, 128, 32768, 262144, 256, 131072, 2048, 2097152, 1052672, 512, 4194304}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 4}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
{NR: 295, Name: "openat$vcs", CallName: "openat", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 4}}, Val: 18446744073709551516},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 9}, Kind: 2, Values: []string{"/dev/vcs\x00"}}},
@@ -33315,6 +33328,21 @@ var syscalls_386 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "uhid_set_report_req"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
}},
+ {NR: 4, Name: "write$USERIO_CMD_REGISTER", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SEND_INTERRUPT", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SET_PORT_TYPE", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
{NR: 4, Name: "write$binfmt_aout", CallName: "write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "binfmt_aout"}}},
@@ -38152,6 +38180,9 @@ var consts_386 = []ConstValue{
{Name: "UI_SET_SWBIT", Value: 1074025837},
{Name: "UMOUNT_NOFOLLOW", Value: 8},
{Name: "UNIX_PATH_MAX", Value: 108},
+ {Name: "USERIO_CMD_REGISTER"},
+ {Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
+ {Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
@@ -39805,4 +39836,4 @@ var consts_386 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_386 = "8600e9d5ccdb9ef2faf96e906017cd916330b6cd"
+const revision_386 = "653420e40f1229688e81b83af5d94ec00d3f8b36"
diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go
index 2e8a4a7f6..3b00d42e4 100644
--- a/sys/linux/gen/amd64.go
+++ b/sys/linux/gen/amd64.go
@@ -78,6 +78,7 @@ var resources_amd64 = []*ResourceDesc{
{Name: "fd_uffd", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uffd"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uhid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uhid"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uinput", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uinput"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
+ {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_v4l2_buffer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_v4l2_buffer"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
@@ -18971,6 +18972,18 @@ var structDescs_amd64 = []*KeyedStruct{
&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: "userio_cmd[USERIO_CMD_REGISTER]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_REGISTER]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 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}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
@@ -29685,7 +29698,7 @@ var syscalls_amd64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 12}, Kind: 2, Values: []string{"/dev/userio\x00"}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "open_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 1024, 8192, 524288, 64, 16384, 65536, 128, 32768, 262144, 256, 131072, 2048, 2097152, 1052672, 512, 4194304}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 8}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
{NR: 257, Name: "openat$vcs", CallName: "openat", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 8}}, Val: 18446744073709551516},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 9}, Kind: 2, Values: []string{"/dev/vcs\x00"}}},
@@ -33977,6 +33990,21 @@ var syscalls_amd64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "uhid_set_report_req"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
}},
+ {NR: 1, Name: "write$USERIO_CMD_REGISTER", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 1, Name: "write$USERIO_CMD_SEND_INTERRUPT", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 1, Name: "write$USERIO_CMD_SET_PORT_TYPE", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
{NR: 1, Name: "write$binfmt_aout", CallName: "write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "binfmt_aout"}}},
@@ -38828,6 +38856,9 @@ var consts_amd64 = []ConstValue{
{Name: "UI_SET_SWBIT", Value: 1074025837},
{Name: "UMOUNT_NOFOLLOW", Value: 8},
{Name: "UNIX_PATH_MAX", Value: 108},
+ {Name: "USERIO_CMD_REGISTER"},
+ {Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
+ {Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
@@ -40492,4 +40523,4 @@ var consts_amd64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_amd64 = "59a1b42d93f9b942a6d7feb28265f13e5f18f59b"
+const revision_amd64 = "05f2fe589c5c3436257454e091f72e966610d5db"
diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go
index 0cb4eb6e6..616fde9bc 100644
--- a/sys/linux/gen/arm.go
+++ b/sys/linux/gen/arm.go
@@ -78,6 +78,7 @@ var resources_arm = []*ResourceDesc{
{Name: "fd_uffd", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uffd"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uhid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uhid"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uinput", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uinput"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
+ {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_v4l2_buffer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_v4l2_buffer"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
@@ -18510,6 +18511,18 @@ var structDescs_arm = []*KeyedStruct{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd0", TypeSize: 4, ArgDir: 1}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd1", TypeSize: 4, ArgDir: 1}},
}}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_REGISTER]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 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}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "inode", TypeSize: 4, ArgDir: 1}}},
@@ -28948,7 +28961,7 @@ var syscalls_arm = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 12}, Kind: 2, Values: []string{"/dev/userio\x00"}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "open_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 1024, 8192, 524288, 64, 65536, 16384, 128, 131072, 262144, 256, 32768, 2048, 2097152, 1052672, 512, 4194304}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 4}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
{NR: 322, Name: "openat$vcs", CallName: "openat", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 4}}, Val: 18446744073709551516},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 9}, Kind: 2, Values: []string{"/dev/vcs\x00"}}},
@@ -33223,6 +33236,21 @@ var syscalls_arm = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "uhid_set_report_req"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
}},
+ {NR: 4, Name: "write$USERIO_CMD_REGISTER", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SEND_INTERRUPT", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SET_PORT_TYPE", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Buf: "data"},
+ }},
{NR: 4, Name: "write$binfmt_aout", CallName: "write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "binfmt_aout"}}},
@@ -38012,6 +38040,9 @@ var consts_arm = []ConstValue{
{Name: "UI_SET_SWBIT", Value: 1074025837},
{Name: "UMOUNT_NOFOLLOW", Value: 8},
{Name: "UNIX_PATH_MAX", Value: 108},
+ {Name: "USERIO_CMD_REGISTER"},
+ {Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
+ {Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
@@ -39663,4 +39694,4 @@ var consts_arm = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm = "b0dd9abc7a5acfffcc6da3159ae9df0700a84a4a"
+const revision_arm = "fbdcb749741366eb0ddae36e107d657053bc3ddb"
diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go
index 4617b8c4e..77a25444d 100644
--- a/sys/linux/gen/arm64.go
+++ b/sys/linux/gen/arm64.go
@@ -78,6 +78,7 @@ var resources_arm64 = []*ResourceDesc{
{Name: "fd_uffd", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uffd"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uhid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uhid"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uinput", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uinput"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
+ {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_v4l2_buffer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_v4l2_buffer"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
@@ -18750,6 +18751,18 @@ var structDescs_arm64 = []*KeyedStruct{
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd0", TypeSize: 4, ArgDir: 1}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "sock_unix", FldName: "fd1", TypeSize: 4, ArgDir: 1}},
}}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_REGISTER]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
{Key: StructKey{Name: "v4l2_audio"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "v4l2_audio", TypeSize: 52}, Fields: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index", TypeSize: 4}}},
&BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "name", TypeSize: 32}, Kind: 1, RangeBegin: 32, RangeEnd: 32},
@@ -29218,7 +29231,7 @@ var syscalls_arm64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 12}, Kind: 2, Values: []string{"/dev/userio\x00"}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "open_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 1024, 8192, 524288, 64, 65536, 16384, 128, 131072, 262144, 256, 32768, 2048, 2097152, 1052672, 512, 4194304}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 8}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
{NR: 56, Name: "openat$vcs", CallName: "openat", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 8}}, Val: 18446744073709551516},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 9}, Kind: 2, Values: []string{"/dev/vcs\x00"}}},
@@ -33427,6 +33440,21 @@ var syscalls_arm64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "uhid_set_report_req"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
}},
+ {NR: 64, Name: "write$USERIO_CMD_REGISTER", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 64, Name: "write$USERIO_CMD_SEND_INTERRUPT", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 64, Name: "write$USERIO_CMD_SET_PORT_TYPE", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
{NR: 64, Name: "write$binfmt_aout", CallName: "write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "binfmt_aout"}}},
@@ -38235,6 +38263,9 @@ var consts_arm64 = []ConstValue{
{Name: "UI_SET_SWBIT", Value: 1074025837},
{Name: "UMOUNT_NOFOLLOW", Value: 8},
{Name: "UNIX_PATH_MAX", Value: 108},
+ {Name: "USERIO_CMD_REGISTER"},
+ {Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
+ {Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
{Name: "V4L2_AUDCAP_AVL", Value: 2},
{Name: "V4L2_AUDCAP_STEREO", Value: 1},
@@ -39857,4 +39888,4 @@ var consts_arm64 = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_arm64 = "a704fd29cde1884c766605de62de1d34ec317232"
+const revision_arm64 = "08c218976280776c081377a76ece94c9005958ec"
diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go
index 553a53105..b95a6f623 100644
--- a/sys/linux/gen/ppc64le.go
+++ b/sys/linux/gen/ppc64le.go
@@ -77,6 +77,7 @@ var resources_ppc64le = []*ResourceDesc{
{Name: "fd_uffd", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uffd"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uhid", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uhid"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_uinput", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_uinput"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
+ {Name: "fd_userio", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_userio"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615, 18446744073709551516}},
{Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}},
@@ -18624,6 +18625,18 @@ var structDescs_ppc64le = []*KeyedStruct{
&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: "userio_cmd[USERIO_CMD_REGISTER]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_REGISTER]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 1}}},
+ }}},
+ {Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]", TypeSize: 2}, Fields: []Type{
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type", TypeSize: 1}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "data", TypeSize: 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}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true},
@@ -27766,7 +27779,7 @@ var syscalls_ppc64le = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 12}, Kind: 2, Values: []string{"/dev/userio\x00"}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "open_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{0, 1, 2, 1024, 8192, 524288, 64, 131072, 16384, 128, 65536, 262144, 256, 32768, 2048, 2097152, 1052672, 512, 4194304}, BitMask: true},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "mode", TypeSize: 8}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "ret", TypeSize: 4, ArgDir: 1}}},
{NR: 286, Name: "openat$vcs", CallName: "openat", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "fd", TypeSize: 8}}, Val: 18446744073709551516},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "file", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 9}, Kind: 2, Values: []string{"/dev/vcs\x00"}}},
@@ -31894,6 +31907,21 @@ var syscalls_ppc64le = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "uhid_set_report_req"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
}},
+ {NR: 4, Name: "write$USERIO_CMD_REGISTER", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_REGISTER]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SEND_INTERRUPT", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SEND_INTERRUPT]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
+ {NR: 4, Name: "write$USERIO_CMD_SET_PORT_TYPE", CallName: "write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_userio", FldName: "fd", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "userio_cmd[USERIO_CMD_SET_PORT_TYPE]"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "data"},
+ }},
{NR: 4, Name: "write$binfmt_aout", CallName: "write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "binfmt_aout"}}},
@@ -36584,6 +36612,9 @@ var consts_ppc64le = []ConstValue{
{Name: "UI_SET_SWBIT", Value: 2147767661},
{Name: "UMOUNT_NOFOLLOW", Value: 8},
{Name: "UNIX_PATH_MAX", Value: 108},
+ {Name: "USERIO_CMD_REGISTER"},
+ {Name: "USERIO_CMD_SEND_INTERRUPT", Value: 2},
+ {Name: "USERIO_CMD_SET_PORT_TYPE", Value: 1},
{Name: "USER_CLIENT", Value: 1},
{Name: "VETH_INFO_PEER", Value: 1},
{Name: "VHOST_ACCESS_RO", Value: 1},
@@ -37288,4 +37319,4 @@ var consts_ppc64le = []ConstValue{
{Name: "bpf_insn_load_imm_dw", Value: 24},
}
-const revision_ppc64le = "796e339f01a361b1b5c04a4c0cd5a06c59b26955"
+const revision_ppc64le = "f48d04238b4a7847cf4e24a8548d31c6650a3f3e"
diff --git a/sys/linux/sys.txt b/sys/linux/sys.txt
index e27c9372c..de4e3a257 100644
--- a/sys/linux/sys.txt
+++ b/sys/linux/sys.txt
@@ -533,7 +533,6 @@ openat$full(fd const[AT_FDCWD], file ptr[in, string["/dev/full"]], flags flags[o
openat$snapshot(fd const[AT_FDCWD], file ptr[in, string["/dev/snapshot"]], flags flags[open_flags], mode const[0]) fd
openat$vga_arbiter(fd const[AT_FDCWD], file ptr[in, string["/dev/vga_arbiter"]], flags flags[open_flags], mode const[0]) fd
openat$vhci(fd const[AT_FDCWD], file ptr[in, string["/dev/vhci"]], flags flags[open_flags], mode const[0]) fd
-openat$userio(fd const[AT_FDCWD], file ptr[in, string["/dev/userio"]], flags flags[open_flags], mode const[0]) fd
openat$rtc(fd const[AT_FDCWD], file ptr[in, string["/dev/rtc0"]], flags flags[open_flags], mode const[0]) fd
openat$rfkill(fd const[AT_FDCWD], file ptr[in, string["/dev/rfkill"]], flags flags[open_flags], mode const[0]) fd
openat$qat_adf_ctl(fd const[AT_FDCWD], file ptr[in, string["/dev/qat_adf_ctl"]], flags flags[open_flags], mode const[0]) fd
diff --git a/sys/linux/userio.txt b/sys/linux/userio.txt
new file mode 100644
index 000000000..d7f17e572
--- /dev/null
+++ b/sys/linux/userio.txt
@@ -0,0 +1,18 @@
+# Copyright 2018 syzkaller project authors. All rights reserved.
+# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+
+include <uapi/linux/fcntl.h>
+include <uapi/linux/userio.h>
+
+resource fd_userio[fd]
+
+openat$userio(fd const[AT_FDCWD], file ptr[in, string["/dev/userio"]], flags flags[open_flags], mode const[0]) fd_userio
+
+write$USERIO_CMD_REGISTER(fd fd_userio, data ptr[in, userio_cmd[USERIO_CMD_REGISTER]], len len[data])
+write$USERIO_CMD_SET_PORT_TYPE(fd fd_userio, data ptr[in, userio_cmd[USERIO_CMD_SET_PORT_TYPE]], len len[data])
+write$USERIO_CMD_SEND_INTERRUPT(fd fd_userio, data ptr[in, userio_cmd[USERIO_CMD_SEND_INTERRUPT]], len len[data])
+
+type userio_cmd[TYPE] {
+ type const[TYPE, int8]
+ data int8
+}
diff --git a/sys/linux/userio_386.const b/sys/linux/userio_386.const
new file mode 100644
index 000000000..1eab444cc
--- /dev/null
+++ b/sys/linux/userio_386.const
@@ -0,0 +1,7 @@
+# AUTOGENERATED FILE
+AT_FDCWD = 18446744073709551516
+USERIO_CMD_REGISTER = 0
+USERIO_CMD_SEND_INTERRUPT = 2
+USERIO_CMD_SET_PORT_TYPE = 1
+__NR_openat = 295
+__NR_write = 4
diff --git a/sys/linux/userio_amd64.const b/sys/linux/userio_amd64.const
new file mode 100644
index 000000000..5ab394701
--- /dev/null
+++ b/sys/linux/userio_amd64.const
@@ -0,0 +1,7 @@
+# AUTOGENERATED FILE
+AT_FDCWD = 18446744073709551516
+USERIO_CMD_REGISTER = 0
+USERIO_CMD_SEND_INTERRUPT = 2
+USERIO_CMD_SET_PORT_TYPE = 1
+__NR_openat = 257
+__NR_write = 1
diff --git a/sys/linux/userio_arm.const b/sys/linux/userio_arm.const
new file mode 100644
index 000000000..f345a67ca
--- /dev/null
+++ b/sys/linux/userio_arm.const
@@ -0,0 +1,7 @@
+# AUTOGENERATED FILE
+AT_FDCWD = 18446744073709551516
+USERIO_CMD_REGISTER = 0
+USERIO_CMD_SEND_INTERRUPT = 2
+USERIO_CMD_SET_PORT_TYPE = 1
+__NR_openat = 322
+__NR_write = 4
diff --git a/sys/linux/userio_arm64.const b/sys/linux/userio_arm64.const
new file mode 100644
index 000000000..ff5126f26
--- /dev/null
+++ b/sys/linux/userio_arm64.const
@@ -0,0 +1,7 @@
+# AUTOGENERATED FILE
+AT_FDCWD = 18446744073709551516
+USERIO_CMD_REGISTER = 0
+USERIO_CMD_SEND_INTERRUPT = 2
+USERIO_CMD_SET_PORT_TYPE = 1
+__NR_openat = 56
+__NR_write = 64
diff --git a/sys/linux/userio_ppc64le.const b/sys/linux/userio_ppc64le.const
new file mode 100644
index 000000000..d896c0268
--- /dev/null
+++ b/sys/linux/userio_ppc64le.const
@@ -0,0 +1,7 @@
+# AUTOGENERATED FILE
+AT_FDCWD = 18446744073709551516
+USERIO_CMD_REGISTER = 0
+USERIO_CMD_SEND_INTERRUPT = 2
+USERIO_CMD_SET_PORT_TYPE = 1
+__NR_openat = 286
+__NR_write = 4