From 90fc4b7a8988a2f84756cb6d9061cb5b83525a90 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 25 Sep 2018 17:20:32 +0200 Subject: sys/linux: add erofs descriptions --- sys/linux/filesystem.txt | 12 +++++++++++- sys/linux/gen/386.go | 33 +++++++++++++++++++++++++++++++-- sys/linux/gen/amd64.go | 33 +++++++++++++++++++++++++++++++-- sys/linux/gen/arm.go | 33 +++++++++++++++++++++++++++++++-- sys/linux/gen/arm64.go | 33 +++++++++++++++++++++++++++++++-- sys/linux/gen/ppc64le.go | 33 +++++++++++++++++++++++++++++++-- 6 files changed, 166 insertions(+), 11 deletions(-) (limited to 'sys/linux') diff --git a/sys/linux/filesystem.txt b/sys/linux/filesystem.txt index 27624b8d6..f6f3734c2 100644 --- a/sys/linux/filesystem.txt +++ b/sys/linux/filesystem.txt @@ -9,7 +9,7 @@ umount2(path ptr[in, filename], flags flags[umount_flags]) mount$bpf(src const[0], dst ptr[in, filename], type ptr[in, string["bpf"]], flags flags[mount_flags], opts ptr[in, fs_options[bpf_options]]) mount$overlay(src const[0], dst ptr[in, filename], type ptr[in, string["overlay"]], flags flags[mount_flags], opts ptr[in, fs_options[overlay_options]]) -filesystem = "sysfs", "rootfs", "ramfs", "tmpfs", "devtmpfs", "debugfs", "securityfs", "sockfs", "pipefs", "anon_inodefs", "devpts", "ext3", "ext2", "ext4", "hugetlbfs", "vfat", "ecryptfs", "fuseblk", "fuse", "rpc_pipefs", "nfs", "nfs4", "nfsd", "binfmt_misc", "autofs", "xfs", "jfs", "msdos", "ntfs", "minix", "hfs", "hfsplus", "qnx4", "ufs", "btrfs", "configfs", "ncpfs", "qnx6", "exofs", "befs", "vxfs", "gfs2", "gfs2meta", "fusectl", "bfs", "nsfs", "efs", "cifs", "efivarfs", "affs", "tracefs", "bdev", "ocfs2", "ocfs2_dlmfs", "hpfs", "proc", "afs", "reiserfs", "jffs2", "romfs", "aio", "sysv", "v7", "udf", "ceph", "pstore", "adfs", "9p", "hostfs", "squashfs", "cramfs", "iso9660", "coda", "nilfs2", "logfs", "overlay", "f2fs", "omfs", "ubifs", "openpromfs", "bpf", "cgroup", "cgroup2", "cpuset", "mqueue", "aufs", "selinuxfs", "dax" +filesystem = "sysfs", "rootfs", "ramfs", "tmpfs", "devtmpfs", "debugfs", "securityfs", "sockfs", "pipefs", "anon_inodefs", "devpts", "ext3", "ext2", "ext4", "hugetlbfs", "vfat", "ecryptfs", "fuseblk", "fuse", "rpc_pipefs", "nfs", "nfs4", "nfsd", "binfmt_misc", "autofs", "xfs", "jfs", "msdos", "ntfs", "minix", "hfs", "hfsplus", "qnx4", "ufs", "btrfs", "configfs", "ncpfs", "qnx6", "exofs", "befs", "vxfs", "gfs2", "gfs2meta", "fusectl", "bfs", "nsfs", "efs", "cifs", "efivarfs", "affs", "tracefs", "bdev", "ocfs2", "ocfs2_dlmfs", "hpfs", "proc", "afs", "reiserfs", "jffs2", "romfs", "aio", "sysv", "v7", "udf", "ceph", "pstore", "adfs", "9p", "hostfs", "squashfs", "cramfs", "iso9660", "coda", "nilfs2", "logfs", "overlay", "f2fs", "omfs", "ubifs", "openpromfs", "bpf", "cgroup", "cgroup2", "cpuset", "mqueue", "aufs", "selinuxfs", "dax", "erofs" blockdev_filename [ filename filename @@ -77,6 +77,8 @@ syz_mount_image$cifs(fs ptr[in, string["cifs"]], dir ptr[in, filename], size int syz_mount_image$ceph(fs ptr[in, string["ceph"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string]) +syz_mount_image$erofs(fs ptr[in, string["erofs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[erofs_options]]) + fs_image_segment { data ptr[in, array[int8]] size len[data, intptr] @@ -609,6 +611,14 @@ overlay_options [ metacopy_off stringnoz["metacopy=off"] ] [varlen] +erofs_options [ + user_xattr stringnoz["user_xattr"] + nouser_xattr stringnoz["nouser_xattr"] + acl stringnoz["acl"] + noacl stringnoz["noacl"] + fault_injection fs_opt_hex["fault_injection", int32] +] [varlen] + codepage_nums = "1250", "1251", "1255", "437", "737", "775", "850", "852", "855", "857", "860", "861", "862", "863", "864", "865", "866", "869", "874", "932", "936", "949", "950" codepages_names = "macceltic", "maccenteuro", "maccroatian", "maccyrillic", "macgaelic", "macgreek", "maciceland", "macinuit", "macroman", "macromanian", "macturkish", "ascii", "default", "cp1250", "cp1251", "cp1255", "cp437", "cp737", "cp775", "cp850", "cp852", "cp855", "cp857", "cp860", "cp861", "cp862", "cp863", "cp864", "cp865", "cp866", "cp869", "cp874", "cp932", "cp936", "cp949", "cp950", "euc-jp", "iso8859-13", "iso8859-14", "iso8859-15", "iso8859-1", "iso8859-2", "iso8859-3", "iso8859-4", "iso8859-5", "iso8859-6", "iso8859-7", "iso8859-9", "koi8-r", "koi8-ru", "koi8-u", "utf8", "none" mount_flags = MS_BIND, MS_DIRSYNC, MS_MANDLOCK, MS_MOVE, MS_NOATIME, MS_NODEV, MS_NODIRATIME, MS_NOEXEC, MS_NOSUID, MS_RDONLY, MS_RELATIME, MS_REMOUNT, MS_SILENT, MS_STRICTATIME, MS_SYNCHRONOUS, MS_REC, MS_POSIXACL, MS_UNBINDABLE, MS_PRIVATE, MS_SLAVE, MS_SHARED, MS_I_VERSION, MS_LAZYTIME diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index 7538a5e57..beb2387f7 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -2653,6 +2653,13 @@ var structDescs_386 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "epoll_ev", FldName: "ev", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{1, 4, 8192, 2, 8, 16, 2147483648, 1073741824, 268435456, 536870912}, BitMask: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "erofs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erofs_options", IsVarlen: true}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "user_xattr", TypeSize: 10}, Kind: 2, Values: []string{"user_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nouser_xattr", TypeSize: 12}, Kind: 2, Values: []string{"nouser_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "acl", TypeSize: 3}, Kind: 2, Values: []string{"acl"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "noacl", TypeSize: 5}, Kind: 2, Values: []string{"noacl"}, NoZ: true}, + &StructType{Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, FldName: "fault_injection"}, + }}}, {Key: StructKey{Name: "erspan_base_hdr[1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erspan_base_hdr[1]", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "vlan_upper", TypeSize: 1}, BitfieldLen: 4, BitfieldMdl: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ver", TypeSize: 1}, BitfieldOff: 4, BitfieldLen: 4}, Val: 1}, @@ -3802,6 +3809,11 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, }}}, + {Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fault_injection\", fmt[hex, int32]]", TypeSize: 34}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 15}, Kind: 2, Values: []string{"fault_injection"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, + }}}, {Key: StructKey{Name: "fs_opt[\"fd\", fmt[hex, fd_fuse]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fd\", fmt[hex, fd_fuse]]", TypeSize: 21}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 2}, Kind: 2, Values: []string{"fd"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -4175,6 +4187,10 @@ var structDescs_386 = []*KeyedStruct{ &UnionType{Key: StructKey{Name: "btrfs_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, }}}, + {Key: StructKey{Name: "fs_opt_elem[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[erofs_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "erofs_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[ext4_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "ext4_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -4247,6 +4263,10 @@ var structDescs_386 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[btrfs_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, }}}, + {Key: StructKey{Name: "fs_options[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[erofs_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[erofs_options]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[ext4_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[ext4_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, @@ -29410,7 +29430,7 @@ var syscalls_386 = []*Syscall{ {NR: 21, Name: "mount", CallName: "mount", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "src", TypeSize: 4}, Type: &UnionType{Key: StructKey{Name: "blockdev_filename"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00", "erofs\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, @@ -33361,6 +33381,15 @@ var syscalls_386 = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, + {Name: "syz_mount_image$erofs", CallName: "syz_mount_image", Args: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 6}, Kind: 2, Values: []string{"erofs\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nsegs", TypeSize: 4}}, Buf: "segments"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "segments", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_image_segment"}}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "fs_options[erofs_options]"}}}, + }}, {Name: "syz_mount_image$ext4", CallName: "syz_mount_image", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 5}, Kind: 2, SubKind: "ext4_types", Values: []string{"ext4\x00", "ext3\x00", "ext2\x00"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -40908,4 +40937,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "cc69e61db7f0fdef320b108544ef8237898c9de9" +const revision_386 = "54960b4a6bc1c71f5ca40e5be974c12b1467a987" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index c2509e3a9..a9a33c8b6 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -2737,6 +2737,13 @@ var structDescs_amd64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "epoll_ev", FldName: "ev", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{1, 4, 8192, 2, 8, 16, 2147483648, 1073741824, 268435456, 536870912}, BitMask: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "erofs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erofs_options", IsVarlen: true}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "user_xattr", TypeSize: 10}, Kind: 2, Values: []string{"user_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nouser_xattr", TypeSize: 12}, Kind: 2, Values: []string{"nouser_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "acl", TypeSize: 3}, Kind: 2, Values: []string{"acl"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "noacl", TypeSize: 5}, Kind: 2, Values: []string{"noacl"}, NoZ: true}, + &StructType{Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, FldName: "fault_injection"}, + }}}, {Key: StructKey{Name: "erspan_base_hdr[1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erspan_base_hdr[1]", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "vlan_upper", TypeSize: 1}, BitfieldLen: 4, BitfieldMdl: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ver", TypeSize: 1}, BitfieldOff: 4, BitfieldLen: 4}, Val: 1}, @@ -3888,6 +3895,11 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, }}}, + {Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fault_injection\", fmt[hex, int32]]", TypeSize: 34}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 15}, Kind: 2, Values: []string{"fault_injection"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, + }}}, {Key: StructKey{Name: "fs_opt[\"fd\", fmt[hex, fd_fuse]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fd\", fmt[hex, fd_fuse]]", TypeSize: 21}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 2}, Kind: 2, Values: []string{"fd"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -4261,6 +4273,10 @@ var structDescs_amd64 = []*KeyedStruct{ &UnionType{Key: StructKey{Name: "btrfs_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, }}}, + {Key: StructKey{Name: "fs_opt_elem[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[erofs_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "erofs_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[ext4_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "ext4_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -4333,6 +4349,10 @@ var structDescs_amd64 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[btrfs_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, }}}, + {Key: StructKey{Name: "fs_options[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[erofs_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[erofs_options]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[ext4_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[ext4_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, @@ -29880,7 +29900,7 @@ var syscalls_amd64 = []*Syscall{ {NR: 165, Name: "mount", CallName: "mount", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "src", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "blockdev_filename"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00", "erofs\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, @@ -34030,6 +34050,15 @@ var syscalls_amd64 = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, + {Name: "syz_mount_image$erofs", CallName: "syz_mount_image", Args: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 6}, Kind: 2, Values: []string{"erofs\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nsegs", TypeSize: 8}}, Buf: "segments"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "segments", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_image_segment"}}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fs_options[erofs_options]"}}}, + }}, {Name: "syz_mount_image$ext4", CallName: "syz_mount_image", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 5}, Kind: 2, SubKind: "ext4_types", Values: []string{"ext4\x00", "ext3\x00", "ext2\x00"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -41602,4 +41631,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "e1bf70e619aed79fe30f6e640f8c38dd1f01ffcd" +const revision_amd64 = "791337ac2ec7dcc7ccd5fd28ffedd4e7563551d6" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index b9ac303aa..d303f9b1e 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -2658,6 +2658,13 @@ var structDescs_arm = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "epoll_ev", FldName: "ev", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{1, 4, 8192, 2, 8, 16, 2147483648, 1073741824, 268435456, 536870912}, BitMask: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "erofs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erofs_options", IsVarlen: true}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "user_xattr", TypeSize: 10}, Kind: 2, Values: []string{"user_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nouser_xattr", TypeSize: 12}, Kind: 2, Values: []string{"nouser_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "acl", TypeSize: 3}, Kind: 2, Values: []string{"acl"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "noacl", TypeSize: 5}, Kind: 2, Values: []string{"noacl"}, NoZ: true}, + &StructType{Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, FldName: "fault_injection"}, + }}}, {Key: StructKey{Name: "erspan_base_hdr[1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erspan_base_hdr[1]", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "vlan_upper", TypeSize: 1}, BitfieldLen: 4, BitfieldMdl: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ver", TypeSize: 1}, BitfieldOff: 4, BitfieldLen: 4}, Val: 1}, @@ -3807,6 +3814,11 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, }}}, + {Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fault_injection\", fmt[hex, int32]]", TypeSize: 34}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 15}, Kind: 2, Values: []string{"fault_injection"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, + }}}, {Key: StructKey{Name: "fs_opt[\"fd\", fmt[hex, fd_fuse]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fd\", fmt[hex, fd_fuse]]", TypeSize: 21}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 2}, Kind: 2, Values: []string{"fd"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -4180,6 +4192,10 @@ var structDescs_arm = []*KeyedStruct{ &UnionType{Key: StructKey{Name: "btrfs_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, }}}, + {Key: StructKey{Name: "fs_opt_elem[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[erofs_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "erofs_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[ext4_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "ext4_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -4252,6 +4268,10 @@ var structDescs_arm = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[btrfs_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, }}}, + {Key: StructKey{Name: "fs_options[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[erofs_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[erofs_options]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[ext4_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[ext4_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, @@ -29148,7 +29168,7 @@ var syscalls_arm = []*Syscall{ {NR: 21, Name: "mount", CallName: "mount", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "src", TypeSize: 4}, Type: &UnionType{Key: StructKey{Name: "blockdev_filename"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00", "erofs\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 4, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, @@ -33288,6 +33308,15 @@ var syscalls_arm = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, + {Name: "syz_mount_image$erofs", CallName: "syz_mount_image", Args: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 6}, Kind: 2, Values: []string{"erofs\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nsegs", TypeSize: 4}}, Buf: "segments"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "segments", TypeSize: 4}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_image_segment"}}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 4}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "fs_options[erofs_options]"}}}, + }}, {Name: "syz_mount_image$ext4", CallName: "syz_mount_image", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 5}, Kind: 2, SubKind: "ext4_types", Values: []string{"ext4\x00", "ext3\x00", "ext2\x00"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -40774,4 +40803,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "f9a35b6ece17e40876334f4c679195e5e1e83fb6" +const revision_arm = "dfe5e7b4cdda3466f2dc68e66fc74656223a73c0" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index d7c15ec49..e7b5cd99d 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -2737,6 +2737,13 @@ var structDescs_arm64 = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "epoll_ev", FldName: "ev", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{1, 4, 8192, 2, 8, 16, 2147483648, 1073741824, 268435456, 536870912}, BitMask: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "erofs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erofs_options", IsVarlen: true}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "user_xattr", TypeSize: 10}, Kind: 2, Values: []string{"user_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nouser_xattr", TypeSize: 12}, Kind: 2, Values: []string{"nouser_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "acl", TypeSize: 3}, Kind: 2, Values: []string{"acl"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "noacl", TypeSize: 5}, Kind: 2, Values: []string{"noacl"}, NoZ: true}, + &StructType{Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, FldName: "fault_injection"}, + }}}, {Key: StructKey{Name: "erspan_base_hdr[1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erspan_base_hdr[1]", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "vlan_upper", TypeSize: 1}, BitfieldLen: 4, BitfieldMdl: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ver", TypeSize: 1}, BitfieldOff: 4, BitfieldLen: 4}, Val: 1}, @@ -3888,6 +3895,11 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, }}}, + {Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fault_injection\", fmt[hex, int32]]", TypeSize: 34}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 15}, Kind: 2, Values: []string{"fault_injection"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, + }}}, {Key: StructKey{Name: "fs_opt[\"fd\", fmt[hex, fd_fuse]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fd\", fmt[hex, fd_fuse]]", TypeSize: 21}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 2}, Kind: 2, Values: []string{"fd"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -4261,6 +4273,10 @@ var structDescs_arm64 = []*KeyedStruct{ &UnionType{Key: StructKey{Name: "btrfs_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, }}}, + {Key: StructKey{Name: "fs_opt_elem[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[erofs_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "erofs_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[ext4_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "ext4_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -4333,6 +4349,10 @@ var structDescs_arm64 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[btrfs_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, }}}, + {Key: StructKey{Name: "fs_options[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[erofs_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[erofs_options]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[ext4_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[ext4_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, @@ -29449,7 +29469,7 @@ var syscalls_arm64 = []*Syscall{ {NR: 40, Name: "mount", CallName: "mount", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "src", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "blockdev_filename"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00", "erofs\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, @@ -33533,6 +33553,15 @@ var syscalls_arm64 = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, + {Name: "syz_mount_image$erofs", CallName: "syz_mount_image", Args: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 6}, Kind: 2, Values: []string{"erofs\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nsegs", TypeSize: 8}}, Buf: "segments"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "segments", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_image_segment"}}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fs_options[erofs_options]"}}}, + }}, {Name: "syz_mount_image$ext4", CallName: "syz_mount_image", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 5}, Kind: 2, SubKind: "ext4_types", Values: []string{"ext4\x00", "ext3\x00", "ext2\x00"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -40996,4 +41025,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "cca85f28570e8e8ce8313deaafe85b4342f32f50" +const revision_arm64 = "38bb896123ea577daf77bfa6ec12aa2a399db40e" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index 8856f5329..f9f3d42b4 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -2728,6 +2728,13 @@ var structDescs_ppc64le = []*KeyedStruct{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "epoll_ev", FldName: "ev", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{1, 4, 8192, 2, 8, 16, 2147483648, 1073741824, 268435456, 536870912}, BitMask: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "erofs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erofs_options", IsVarlen: true}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "user_xattr", TypeSize: 10}, Kind: 2, Values: []string{"user_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "nouser_xattr", TypeSize: 12}, Kind: 2, Values: []string{"nouser_xattr"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "acl", TypeSize: 3}, Kind: 2, Values: []string{"acl"}, NoZ: true}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "noacl", TypeSize: 5}, Kind: 2, Values: []string{"noacl"}, NoZ: true}, + &StructType{Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, FldName: "fault_injection"}, + }}}, {Key: StructKey{Name: "erspan_base_hdr[1]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "erspan_base_hdr[1]", TypeSize: 4}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "vlan_upper", TypeSize: 1}, BitfieldLen: 4, BitfieldMdl: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "ver", TypeSize: 1}, BitfieldOff: 4, BitfieldLen: 4}, Val: 1}, @@ -3879,6 +3886,11 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, }}}, + {Key: StructKey{Name: "fs_opt[\"fault_injection\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fault_injection\", fmt[hex, int32]]", TypeSize: 34}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 15}, Kind: 2, Values: []string{"fault_injection"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 18}, ArgFormat: 3}}, + }}}, {Key: StructKey{Name: "fs_opt[\"fd\", fmt[hex, fd_fuse]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"fd\", fmt[hex, fd_fuse]]", TypeSize: 21}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 2}, Kind: 2, Values: []string{"fd"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -4252,6 +4264,10 @@ var structDescs_ppc64le = []*KeyedStruct{ &UnionType{Key: StructKey{Name: "btrfs_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, }}}, + {Key: StructKey{Name: "fs_opt_elem[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[erofs_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "erofs_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[ext4_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "ext4_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -4324,6 +4340,10 @@ var structDescs_ppc64le = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[btrfs_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, }}}, + {Key: StructKey{Name: "fs_options[erofs_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[erofs_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[erofs_options]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[ext4_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[ext4_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[ext4_options]"}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, @@ -27971,7 +27991,7 @@ var syscalls_ppc64le = []*Syscall{ {NR: 21, Name: "mount", CallName: "mount", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "src", TypeSize: 8}, Type: &UnionType{Key: StructKey{Name: "blockdev_filename"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, - &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "type", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2, SubKind: "filesystem", Values: []string{"sysfs\x00", "rootfs\x00", "ramfs\x00", "tmpfs\x00", "devtmpfs\x00", "debugfs\x00", "securityfs\x00", "sockfs\x00", "pipefs\x00", "anon_inodefs\x00", "devpts\x00", "ext3\x00", "ext2\x00", "ext4\x00", "hugetlbfs\x00", "vfat\x00", "ecryptfs\x00", "fuseblk\x00", "fuse\x00", "rpc_pipefs\x00", "nfs\x00", "nfs4\x00", "nfsd\x00", "binfmt_misc\x00", "autofs\x00", "xfs\x00", "jfs\x00", "msdos\x00", "ntfs\x00", "minix\x00", "hfs\x00", "hfsplus\x00", "qnx4\x00", "ufs\x00", "btrfs\x00", "configfs\x00", "ncpfs\x00", "qnx6\x00", "exofs\x00", "befs\x00", "vxfs\x00", "gfs2\x00", "gfs2meta\x00", "fusectl\x00", "bfs\x00", "nsfs\x00", "efs\x00", "cifs\x00", "efivarfs\x00", "affs\x00", "tracefs\x00", "bdev\x00", "ocfs2\x00", "ocfs2_dlmfs\x00", "hpfs\x00", "proc\x00", "afs\x00", "reiserfs\x00", "jffs2\x00", "romfs\x00", "aio\x00", "sysv\x00", "v7\x00", "udf\x00", "ceph\x00", "pstore\x00", "adfs\x00", "9p\x00", "hostfs\x00", "squashfs\x00", "cramfs\x00", "iso9660\x00", "coda\x00", "nilfs2\x00", "logfs\x00", "overlay\x00", "f2fs\x00", "omfs\x00", "ubifs\x00", "openpromfs\x00", "bpf\x00", "cgroup\x00", "cgroup2\x00", "cpuset\x00", "mqueue\x00", "aufs\x00", "selinuxfs\x00", "dax\x00", "erofs\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8, IsOptional: true}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, @@ -31907,6 +31927,15 @@ var syscalls_ppc64le = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", IsVarlen: true}, Kind: 2}}, }}, + {Name: "syz_mount_image$erofs", CallName: "syz_mount_image", Args: []Type{ + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 6}, Kind: 2, Values: []string{"erofs\x00"}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "nsegs", TypeSize: 8}}, Buf: "segments"}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "segments", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_image_segment"}}}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "mount_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{4096, 128, 64, 8192, 1024, 4, 2048, 8, 2, 1, 2097152, 32, 32768, 16777216, 16, 16384, 65536, 131072, 262144, 524288, 1048576, 8388608, 33554432}, BitMask: true}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "opts", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fs_options[erofs_options]"}}}, + }}, {Name: "syz_mount_image$ext4", CallName: "syz_mount_image", Args: []Type{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "fs", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", TypeSize: 5}, Kind: 2, SubKind: "ext4_types", Values: []string{"ext4\x00", "ext3\x00", "ext2\x00"}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dir", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -38352,4 +38381,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "89ae7c21d4813ae4b2d434f72bb1fa1f37176ec1" +const revision_ppc64le = "90c9d00e657e048648bcdb20d5e4c5d7a6187bc4" -- cgit mrf-deployment