diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2019-10-15 13:18:53 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2019-10-15 13:50:06 +0200 |
| commit | 6078bcf4f9f1450c5858386a76241cfe4d7262ee (patch) | |
| tree | d14118946b67e6186d11d4d332aead3494671435 /sys/linux | |
| parent | ef4a2149feeadf5833638d9b6ec3e53cb8dfd39d (diff) | |
sys/linux: add watch_queue descriptions
Diffstat (limited to 'sys/linux')
| -rw-r--r-- | sys/linux/gen/386.go | 40 | ||||
| -rw-r--r-- | sys/linux/gen/amd64.go | 40 | ||||
| -rw-r--r-- | sys/linux/gen/arm.go | 40 | ||||
| -rw-r--r-- | sys/linux/gen/arm64.go | 40 | ||||
| -rw-r--r-- | sys/linux/gen/ppc64le.go | 40 | ||||
| -rw-r--r-- | sys/linux/watch_queue.txt | 29 | ||||
| -rw-r--r-- | sys/linux/watch_queue_386.const | 8 | ||||
| -rw-r--r-- | sys/linux/watch_queue_amd64.const | 8 | ||||
| -rw-r--r-- | sys/linux/watch_queue_arm.const | 8 | ||||
| -rw-r--r-- | sys/linux/watch_queue_arm64.const | 8 | ||||
| -rw-r--r-- | sys/linux/watch_queue_ppc64le.const | 8 |
11 files changed, 264 insertions, 5 deletions
diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index b6f736836..0f5f561bc 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -126,6 +126,7 @@ var resources_386 = []*ResourceDesc{ {Name: "fd_vhci", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhci"}, Values: []uint64{18446744073709551615}}, {Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615}}, {Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_watch_queue", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_watch_queue"}, Values: []uint64{18446744073709551615}}, {Name: "flow_handle", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"flow_handle"}, Values: []uint64{0}}, {Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}}, {Name: "genl_ipvs_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_ipvs_family_id"}, Values: []uint64{0}}, @@ -28022,6 +28023,17 @@ var structDescs_386 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, }}}, + {Key: StructKey{Name: "watch_notification_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_filter", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nr_filters", TypeSize: 4}}, Path: []string{"filters"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "__reserved", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "filters", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "watch_notification_type_filter"}}}, + }}}, + {Key: StructKey{Name: "watch_notification_type_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_type_filter", TypeSize: 44}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_filter", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_mask", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "subtype_filter", TypeSize: 32}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -34597,6 +34609,16 @@ var syscalls_386 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1074819273}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "pr_reservation"}}}, }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_FILTER", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22369}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "watch_notification_filter"}}}, + }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_SIZE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22368}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "watch_queue_size", FldName: "arg", TypeSize: 4}}, Vals: []uint64{1, 2, 4, 8, 16}, BitMask: true}, + }}, {NR: 54, Name: "ioctl$ION_IOC_ALLOC", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_ion", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3222817024}, @@ -38873,6 +38895,14 @@ var syscalls_386 = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usbmon", FldName: "fd", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", TypeSize: 4}}, Kind: 1}, }}, + {NR: 192, Name: "mmap$watch_queue", CallName: "mmap", Args: []Type{ + &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 4}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"addr"}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_prot", FldName: "prot", TypeSize: 4}}, Vals: []uint64{0, 4, 1, 2, 8, 16777216, 33554432}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2, 64, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 67108864, 3, 524288, 1048576}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "offset", TypeSize: 4}}}, + }}, {NR: 192, Name: "mmap$xdp", CallName: "mmap", Args: []Type{ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 4}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"addr"}}, @@ -39766,6 +39796,12 @@ var syscalls_386 = []*Syscall{ &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}}}, + {NR: 295, Name: "openat$watch_queue", 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: 20}, Kind: 2, Values: []string{"/dev/fd_watch_queue\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_watch_queue", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 295, Name: "openat$xenevtchn", 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: 16}, Kind: 2, Values: []string{"/dev/xen/evtchn\x00"}}}, @@ -47586,6 +47622,8 @@ var consts_386 = []ConstValue{ {Name: "IOC_PR_REGISTER", Value: 1075343560}, {Name: "IOC_PR_RELEASE", Value: 1074819274}, {Name: "IOC_PR_RESERVE", Value: 1074819273}, + {Name: "IOC_WATCH_QUEUE_SET_FILTER", Value: 22369}, + {Name: "IOC_WATCH_QUEUE_SET_SIZE", Value: 22368}, {Name: "ION_FLAG_CACHED", Value: 1}, {Name: "ION_HEAP_TYPE_CARVEOUT_BIT", Value: 4}, {Name: "ION_HEAP_TYPE_CHUNK_BIT", Value: 8}, @@ -53436,4 +53474,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "aa1396241f46bcc6fb20a1c9a155aff4af6b18b9" +const revision_386 = "caa34ba6028e204ea1ede873fa3484a49a147985" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index 3ecfcf795..a994bfb15 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -126,6 +126,7 @@ var resources_amd64 = []*ResourceDesc{ {Name: "fd_vhci", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhci"}, Values: []uint64{18446744073709551615}}, {Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615}}, {Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_watch_queue", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_watch_queue"}, Values: []uint64{18446744073709551615}}, {Name: "flow_handle", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"flow_handle"}, Values: []uint64{0}}, {Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}}, {Name: "genl_ipvs_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_ipvs_family_id"}, Values: []uint64{0}}, @@ -28407,6 +28408,17 @@ var structDescs_amd64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, }}}, + {Key: StructKey{Name: "watch_notification_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_filter", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nr_filters", TypeSize: 4}}, Path: []string{"filters"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "__reserved", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "filters", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "watch_notification_type_filter"}}}, + }}}, + {Key: StructKey{Name: "watch_notification_type_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_type_filter", TypeSize: 44}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_filter", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_mask", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "subtype_filter", TypeSize: 32}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -35101,6 +35113,16 @@ var syscalls_amd64 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074819273}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "pr_reservation"}}}, }}, + {NR: 16, Name: "ioctl$IOC_WATCH_QUEUE_SET_FILTER", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22369}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "watch_notification_filter"}}}, + }}, + {NR: 16, Name: "ioctl$IOC_WATCH_QUEUE_SET_SIZE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22368}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "watch_queue_size", FldName: "arg", TypeSize: 8}}, Vals: []uint64{1, 2, 4, 8, 16}, BitMask: true}, + }}, {NR: 16, Name: "ioctl$ION_IOC_ALLOC", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_ion", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 3222817024}, @@ -39397,6 +39419,14 @@ var syscalls_amd64 = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usbmon", FldName: "fd", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", TypeSize: 8}}, Kind: 1}, }}, + {NR: 9, Name: "mmap$watch_queue", CallName: "mmap", Args: []Type{ + &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_prot", FldName: "prot", TypeSize: 8}}, Vals: []uint64{0, 4, 1, 2, 8, 16777216, 33554432}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2, 64, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 67108864, 3, 524288, 1048576}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "offset", TypeSize: 8}}}, + }}, {NR: 9, Name: "mmap$xdp", CallName: "mmap", Args: []Type{ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, @@ -40290,6 +40320,12 @@ var syscalls_amd64 = []*Syscall{ &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}}}, + {NR: 257, Name: "openat$watch_queue", 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: 20}, Kind: 2, Values: []string{"/dev/fd_watch_queue\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_watch_queue", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 257, Name: "openat$xenevtchn", 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: 16}, Kind: 2, Values: []string{"/dev/xen/evtchn\x00"}}}, @@ -48115,6 +48151,8 @@ var consts_amd64 = []ConstValue{ {Name: "IOC_PR_REGISTER", Value: 1075343560}, {Name: "IOC_PR_RELEASE", Value: 1074819274}, {Name: "IOC_PR_RESERVE", Value: 1074819273}, + {Name: "IOC_WATCH_QUEUE_SET_FILTER", Value: 22369}, + {Name: "IOC_WATCH_QUEUE_SET_SIZE", Value: 22368}, {Name: "ION_FLAG_CACHED", Value: 1}, {Name: "ION_HEAP_TYPE_CARVEOUT_BIT", Value: 4}, {Name: "ION_HEAP_TYPE_CHUNK_BIT", Value: 8}, @@ -53980,4 +54018,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "e7d25307e725b1e6951f545be84795f566d999a8" +const revision_amd64 = "5bb7010023efe0a465a43638f719c7ab6d7b2158" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index 188f1ad77..200260d7e 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -126,6 +126,7 @@ var resources_arm = []*ResourceDesc{ {Name: "fd_vhci", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhci"}, Values: []uint64{18446744073709551615}}, {Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615}}, {Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_watch_queue", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_watch_queue"}, Values: []uint64{18446744073709551615}}, {Name: "flow_handle", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"flow_handle"}, Values: []uint64{0}}, {Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}}, {Name: "genl_ipvs_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_ipvs_family_id"}, Values: []uint64{0}}, @@ -27828,6 +27829,17 @@ var structDescs_arm = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, }}}, + {Key: StructKey{Name: "watch_notification_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_filter", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nr_filters", TypeSize: 4}}, Path: []string{"filters"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "__reserved", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "filters", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "watch_notification_type_filter"}}}, + }}}, + {Key: StructKey{Name: "watch_notification_type_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_type_filter", TypeSize: 44}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_filter", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_mask", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "subtype_filter", TypeSize: 32}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -34401,6 +34413,16 @@ var syscalls_arm = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1074819273}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "pr_reservation"}}}, }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_FILTER", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22369}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "watch_notification_filter"}}}, + }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_SIZE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22368}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "watch_queue_size", FldName: "arg", TypeSize: 4}}, Vals: []uint64{1, 2, 4, 8, 16}, BitMask: true}, + }}, {NR: 54, Name: "ioctl$ION_IOC_ALLOC", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_ion", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3222817024}, @@ -38554,6 +38576,14 @@ var syscalls_arm = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usbmon", FldName: "fd", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", TypeSize: 4}}, Kind: 1}, }}, + {NR: 192, Name: "mmap$watch_queue", CallName: "mmap", Args: []Type{ + &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 4}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"addr"}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_prot", FldName: "prot", TypeSize: 4}}, Vals: []uint64{0, 4, 1, 2, 8, 16777216, 33554432}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{1, 2, 0, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 67108864, 3, 524288, 1048576}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "offset", TypeSize: 4}}}, + }}, {NR: 192, Name: "mmap$xdp", CallName: "mmap", Args: []Type{ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 4}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 4}}, Path: []string{"addr"}}, @@ -39427,6 +39457,12 @@ var syscalls_arm = []*Syscall{ &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}}}, + {NR: 322, Name: "openat$watch_queue", 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: 20}, Kind: 2, Values: []string{"/dev/fd_watch_queue\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_watch_queue", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 322, Name: "openat$xenevtchn", 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: 16}, Kind: 2, Values: []string{"/dev/xen/evtchn\x00"}}}, @@ -47225,6 +47261,8 @@ var consts_arm = []ConstValue{ {Name: "IOC_PR_REGISTER", Value: 1075343560}, {Name: "IOC_PR_RELEASE", Value: 1074819274}, {Name: "IOC_PR_RESERVE", Value: 1074819273}, + {Name: "IOC_WATCH_QUEUE_SET_FILTER", Value: 22369}, + {Name: "IOC_WATCH_QUEUE_SET_SIZE", Value: 22368}, {Name: "ION_FLAG_CACHED", Value: 1}, {Name: "ION_HEAP_TYPE_CARVEOUT_BIT", Value: 4}, {Name: "ION_HEAP_TYPE_CHUNK_BIT", Value: 8}, @@ -53013,4 +53051,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "83c3c7ca6808ff3085c1422f4eb13a6917a9d6a5" +const revision_arm = "0b7b2d545de7e689555e47957f7e2ced5fa23f1d" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 31910adab..c96f718b7 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -126,6 +126,7 @@ var resources_arm64 = []*ResourceDesc{ {Name: "fd_vhci", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhci"}, Values: []uint64{18446744073709551615}}, {Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615}}, {Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_watch_queue", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_watch_queue"}, Values: []uint64{18446744073709551615}}, {Name: "flow_handle", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"flow_handle"}, Values: []uint64{0}}, {Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}}, {Name: "genl_ipvs_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_ipvs_family_id"}, Values: []uint64{0}}, @@ -28199,6 +28200,17 @@ var structDescs_arm64 = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, }}}, + {Key: StructKey{Name: "watch_notification_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_filter", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nr_filters", TypeSize: 4}}, Path: []string{"filters"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "__reserved", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "filters", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "watch_notification_type_filter"}}}, + }}}, + {Key: StructKey{Name: "watch_notification_type_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_type_filter", TypeSize: 44}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_filter", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_mask", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "subtype_filter", TypeSize: 32}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -34813,6 +34825,16 @@ var syscalls_arm64 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 1074819273}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "pr_reservation"}}}, }}, + {NR: 29, Name: "ioctl$IOC_WATCH_QUEUE_SET_FILTER", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22369}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "watch_notification_filter"}}}, + }}, + {NR: 29, Name: "ioctl$IOC_WATCH_QUEUE_SET_SIZE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22368}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "watch_queue_size", FldName: "arg", TypeSize: 8}}, Vals: []uint64{1, 2, 4, 8, 16}, BitMask: true}, + }}, {NR: 29, Name: "ioctl$ION_IOC_ALLOC", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_ion", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 3222817024}, @@ -38959,6 +38981,14 @@ var syscalls_arm64 = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usbmon", FldName: "fd", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", TypeSize: 8}}, Kind: 1}, }}, + {NR: 222, Name: "mmap$watch_queue", CallName: "mmap", Args: []Type{ + &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_prot", FldName: "prot", TypeSize: 8}}, Vals: []uint64{0, 4, 1, 2, 8, 16777216, 33554432}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2, 0, 32, 2048, 4096, 0, 16, 256, 262144, 8192, 65536, 16384, 32768, 131072, 67108864, 3, 524288, 1048576}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "offset", TypeSize: 8}}}, + }}, {NR: 222, Name: "mmap$xdp", CallName: "mmap", Args: []Type{ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, @@ -39822,6 +39852,12 @@ var syscalls_arm64 = []*Syscall{ &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}}}, + {NR: 56, Name: "openat$watch_queue", 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: 20}, Kind: 2, Values: []string{"/dev/fd_watch_queue\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_watch_queue", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 56, Name: "openat$xenevtchn", 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: 16}, Kind: 2, Values: []string{"/dev/xen/evtchn\x00"}}}, @@ -47561,6 +47597,8 @@ var consts_arm64 = []ConstValue{ {Name: "IOC_PR_REGISTER", Value: 1075343560}, {Name: "IOC_PR_RELEASE", Value: 1074819274}, {Name: "IOC_PR_RESERVE", Value: 1074819273}, + {Name: "IOC_WATCH_QUEUE_SET_FILTER", Value: 22369}, + {Name: "IOC_WATCH_QUEUE_SET_SIZE", Value: 22368}, {Name: "ION_FLAG_CACHED", Value: 1}, {Name: "ION_HEAP_TYPE_CARVEOUT_BIT", Value: 4}, {Name: "ION_HEAP_TYPE_CHUNK_BIT", Value: 8}, @@ -53332,4 +53370,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "e37e0795739c9fbd08ef79ba57bcee09ec4262f9" +const revision_arm64 = "f9df0cdbf2cb34d1601a792c5e261d29f4d9d2da" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index d1a6e58d9..62a3bffa5 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -126,6 +126,7 @@ var resources_ppc64le = []*ResourceDesc{ {Name: "fd_vhci", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhci"}, Values: []uint64{18446744073709551615}}, {Name: "fd_vhost", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_vhost"}, Values: []uint64{18446744073709551615}}, {Name: "fd_video", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_video"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_watch_queue", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"fd", "fd_watch_queue"}, Values: []uint64{18446744073709551615}}, {Name: "flow_handle", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"flow_handle"}, Values: []uint64{0}}, {Name: "genl_fou_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_fou_family_id"}, Values: []uint64{0}}, {Name: "genl_ipvs_family_id", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: []string{"genl_ipvs_family_id"}, Values: []uint64{0}}, @@ -28094,6 +28095,17 @@ var structDescs_ppc64le = []*KeyedStruct{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_RES", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_RES, array[int8, 1:4]]"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "audio_UAC_GET_MEM", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "vusb_response_t[USB_TYPE_CLASS, UAC_GET_MEM, array[int8, 3]]"}}}, }}}, + {Key: StructKey{Name: "watch_notification_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_filter", IsVarlen: true}, Fields: []Type{ + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nr_filters", TypeSize: 4}}, Path: []string{"filters"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "__reserved", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "filters", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "watch_notification_type_filter"}}}, + }}}, + {Key: StructKey{Name: "watch_notification_type_filter"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "watch_notification_type_filter", TypeSize: 44}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_filter", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "info_mask", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "subtype_filter", TypeSize: 32}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + }}}, {Key: StructKey{Name: "winsize"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "winsize", TypeSize: 8}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "row", TypeSize: 2}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "col", TypeSize: 2}}}, @@ -34749,6 +34761,16 @@ var syscalls_ppc64le = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 2148561097}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "pr_reservation"}}}, }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_FILTER", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 536893281}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "watch_notification_filter"}}}, + }}, + {NR: 54, Name: "ioctl$IOC_WATCH_QUEUE_SET_SIZE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 536893280}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "watch_queue_size", FldName: "arg", TypeSize: 8}}, Vals: []uint64{1, 2, 4, 8, 16}, BitMask: true}, + }}, {NR: 54, Name: "ioctl$ION_IOC_ALLOC", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_ion", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 3222817024}, @@ -38860,6 +38882,14 @@ var syscalls_ppc64le = []*Syscall{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_usbmon", FldName: "fd", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fileoff", FldName: "offset", TypeSize: 8}}, Kind: 1}, }}, + {NR: 90, Name: "mmap$watch_queue", CallName: "mmap", Args: []Type{ + &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_prot", FldName: "prot", TypeSize: 8}}, Vals: []uint64{0, 4, 1, 2, 8, 16777216, 33554432}, BitMask: true}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mmap_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1, 2, 0, 32, 2048, 4096, 0, 16, 256, 262144, 128, 65536, 64, 32768, 131072, 67108864, 3, 524288, 1048576}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_watch_queue", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "offset", TypeSize: 8}}}, + }}, {NR: 90, Name: "mmap$xdp", CallName: "mmap", Args: []Type{ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"addr"}}, @@ -39753,6 +39783,12 @@ var syscalls_ppc64le = []*Syscall{ &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}}}, + {NR: 286, Name: "openat$watch_queue", 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: 20}, Kind: 2, Values: []string{"/dev/fd_watch_queue\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_watch_queue", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 286, Name: "openat$xenevtchn", 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: 16}, Kind: 2, Values: []string{"/dev/xen/evtchn\x00"}}}, @@ -47554,6 +47590,8 @@ var consts_ppc64le = []ConstValue{ {Name: "IOC_PR_REGISTER", Value: 2149085384}, {Name: "IOC_PR_RELEASE", Value: 2148561098}, {Name: "IOC_PR_RESERVE", Value: 2148561097}, + {Name: "IOC_WATCH_QUEUE_SET_FILTER", Value: 536893281}, + {Name: "IOC_WATCH_QUEUE_SET_SIZE", Value: 536893280}, {Name: "ION_FLAG_CACHED", Value: 1}, {Name: "ION_HEAP_TYPE_CARVEOUT_BIT", Value: 4}, {Name: "ION_HEAP_TYPE_CHUNK_BIT", Value: 8}, @@ -53297,4 +53335,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "42a1b9f46b354dff77558c3da620f311189b48aa" +const revision_ppc64le = "261e2fa5f00888060a46dbcb9028289bf439890f" diff --git a/sys/linux/watch_queue.txt b/sys/linux/watch_queue.txt new file mode 100644 index 000000000..d6bc9b33c --- /dev/null +++ b/sys/linux/watch_queue.txt @@ -0,0 +1,29 @@ +# Copyright 2019 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 <linux/fcntl.h> +include <linux/ioctl.h> +include <uapi/linux/watch_queue.h> + +resource fd_watch_queue[fd] + +openat$watch_queue(fd const[AT_FDCWD], file ptr[in, string["/dev/fd_watch_queue"]], flags flags[open_flags], mode const[0]) fd_watch_queue +mmap$watch_queue(addr vma, len len[addr], prot flags[mmap_prot], flags flags[mmap_flags], fd fd_watch_queue, offset const[0]) +ioctl$IOC_WATCH_QUEUE_SET_SIZE(fd fd_watch_queue, cmd const[IOC_WATCH_QUEUE_SET_SIZE], arg flags[watch_queue_size]) +ioctl$IOC_WATCH_QUEUE_SET_FILTER(fd fd_watch_queue, cmd const[IOC_WATCH_QUEUE_SET_FILTER], arg ptr[in, watch_notification_filter]) + +watch_notification_filter { + nr_filters len[filters, int32] + __reserved const[0, int32] + filters array[watch_notification_type_filter] +} + +watch_notification_type_filter { + type int32 + info_filter int32 + info_mask int32 + subtype_filter array[int32, 8] +} + +watch_queue_size = 1, 2, 4, 8, 16 +_ = __NR_mmap2 diff --git a/sys/linux/watch_queue_386.const b/sys/linux/watch_queue_386.const new file mode 100644 index 000000000..a499f9489 --- /dev/null +++ b/sys/linux/watch_queue_386.const @@ -0,0 +1,8 @@ +# AUTOGENERATED FILE +AT_FDCWD = 18446744073709551516 +IOC_WATCH_QUEUE_SET_FILTER = 22369 +IOC_WATCH_QUEUE_SET_SIZE = 22368 +__NR_ioctl = 54 +__NR_mmap = 192 +__NR_mmap2 = 192 +__NR_openat = 295 diff --git a/sys/linux/watch_queue_amd64.const b/sys/linux/watch_queue_amd64.const new file mode 100644 index 000000000..35b23cfaa --- /dev/null +++ b/sys/linux/watch_queue_amd64.const @@ -0,0 +1,8 @@ +# AUTOGENERATED FILE +AT_FDCWD = 18446744073709551516 +IOC_WATCH_QUEUE_SET_FILTER = 22369 +IOC_WATCH_QUEUE_SET_SIZE = 22368 +__NR_ioctl = 16 +__NR_mmap = 9 +# __NR_mmap2 is not set +__NR_openat = 257 diff --git a/sys/linux/watch_queue_arm.const b/sys/linux/watch_queue_arm.const new file mode 100644 index 000000000..a0062b24a --- /dev/null +++ b/sys/linux/watch_queue_arm.const @@ -0,0 +1,8 @@ +# AUTOGENERATED FILE +AT_FDCWD = 18446744073709551516 +IOC_WATCH_QUEUE_SET_FILTER = 22369 +IOC_WATCH_QUEUE_SET_SIZE = 22368 +__NR_ioctl = 54 +__NR_mmap = 192 +__NR_mmap2 = 192 +__NR_openat = 322 diff --git a/sys/linux/watch_queue_arm64.const b/sys/linux/watch_queue_arm64.const new file mode 100644 index 000000000..710f187af --- /dev/null +++ b/sys/linux/watch_queue_arm64.const @@ -0,0 +1,8 @@ +# AUTOGENERATED FILE +AT_FDCWD = 18446744073709551516 +IOC_WATCH_QUEUE_SET_FILTER = 22369 +IOC_WATCH_QUEUE_SET_SIZE = 22368 +__NR_ioctl = 29 +__NR_mmap = 222 +# __NR_mmap2 is not set +__NR_openat = 56 diff --git a/sys/linux/watch_queue_ppc64le.const b/sys/linux/watch_queue_ppc64le.const new file mode 100644 index 000000000..21e0512bd --- /dev/null +++ b/sys/linux/watch_queue_ppc64le.const @@ -0,0 +1,8 @@ +# AUTOGENERATED FILE +AT_FDCWD = 18446744073709551516 +IOC_WATCH_QUEUE_SET_FILTER = 536893281 +IOC_WATCH_QUEUE_SET_SIZE = 536893280 +__NR_ioctl = 54 +__NR_mmap = 90 +# __NR_mmap2 is not set +__NR_openat = 286 |
