From ab342da3f9aa45e3f2d9e872576ab5cd3e3c350b Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 2 Dec 2019 18:21:43 +0100 Subject: sys/linux: add binderfs descriptions --- sys/linux/gen/amd64.go | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) (limited to 'sys/linux/gen/amd64.go') diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index 0d80daca0..788f1c2a7 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -877,6 +877,10 @@ var structDescs_amd64 = []*KeyedStruct{ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "offsetof", FldName: "off1", TypeSize: 8}}, BitSize: 8, Offset: true, Path: []string{"binder_transaction_data", "buffer", "obj1"}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "offsetof", FldName: "off2", TypeSize: 8}}, BitSize: 8, Offset: true, Path: []string{"binder_transaction_data", "buffer", "obj2"}}, }}}, + {Key: StructKey{Name: "binder_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "binder_options", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "fs_opt[\"max\", fmt[dec, int32[0:4]]]"}, FldName: "max"}, + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "stats", TypeSize: 12}, Kind: 2, Values: []string{"stats=global"}, NoZ: true}, + }}}, {Key: StructKey{Name: "binder_transaction_data"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "binder_transaction_data", TypeSize: 64}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "handle", TypeSize: 4}}, Kind: 1, RangeEnd: 3}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 4}}}, @@ -5694,6 +5698,11 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "val", IsVarlen: true}, Kind: 2, SubKind: "ima_masks", Values: []string{"MAY_EXEC", "MAY_WRITE", "MAY_READ", "MAY_APPEND", "^MAY_EXEC", "^MAY_WRITE", "^MAY_READ", "^MAY_APPEND"}, NoZ: true}, }}}, + {Key: StructKey{Name: "fs_opt[\"max\", fmt[dec, int32[0:4]]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"max\", fmt[dec, int32[0:4]]]", TypeSize: 24}, Fields: []Type{ + &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 3}, Kind: 2, Values: []string{"max"}, NoZ: true}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 20}, ArgFormat: 2}, Kind: 1, RangeEnd: 4}, + }}}, {Key: StructKey{Name: "fs_opt[\"max_batch_time\", fmt[hex, int32]]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt[\"max_batch_time\", fmt[hex, int32]]", TypeSize: 33}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 14}, Kind: 2, Values: []string{"max_batch_time"}, NoZ: true}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, @@ -6019,6 +6028,10 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "eq", TypeSize: 1}}, Val: 61}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", FldName: "val", IsVarlen: true}, Kind: 3, NoZ: true}, }}}, + {Key: StructKey{Name: "fs_opt_elem[binder_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[binder_options]", IsVarlen: true}, Fields: []Type{ + &UnionType{Key: StructKey{Name: "binder_options"}, FldName: "elem"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, + }}}, {Key: StructKey{Name: "fs_opt_elem[bpf_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_opt_elem[bpf_options]", IsVarlen: true}, Fields: []Type{ &UnionType{Key: StructKey{Name: "bpf_options"}, FldName: "elem"}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "comma", TypeSize: 1}}, Val: 44}, @@ -6127,6 +6140,11 @@ var structDescs_amd64 = []*KeyedStruct{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "name", TypeSize: 4}, Kind: 2, Values: []string{"uid>"}, NoZ: true}, &ResourceType{TypeCommon: TypeCommon{TypeName: "uid", TypeSize: 20}, ArgFormat: 2}, }}}, + {Key: StructKey{Name: "fs_options[binder_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[binder_options]", IsVarlen: true}, Fields: []Type{ + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[binder_options]"}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "security", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[fs_options_security]"}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "null", TypeSize: 1}}}, + }}}, {Key: StructKey{Name: "fs_options[bpf_options]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fs_options[bpf_options]", IsVarlen: true}, Fields: []Type{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "elems", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[bpf_options]"}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "security", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "fs_opt_elem[fs_options_security]"}}}, @@ -34031,7 +34049,7 @@ var syscalls_amd64 = []*Syscall{ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fsmount_attr_flags", FldName: "attr_flags", TypeSize: 8}}, Vals: []uint64{1, 2, 4, 8, 112, 128}, BitMask: true}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_open_tree", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 430, Name: "fsopen", CallName: "fsopen", Args: []Type{ - &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", "virtiofs\x00", "exfat\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", "virtiofs\x00", "exfat\x00", "binder\x00"}}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "fsopen_flags", FldName: "flags", TypeSize: 8}}, Vals: []uint64{1}, BitMask: true}, }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_fscontext", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, {NR: 433, Name: "fspick", CallName: "fspick", Args: []Type{ @@ -42311,7 +42329,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", "erofs\x00", "virtiofs\x00", "exfat\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", "virtiofs\x00", "exfat\x00", "binder\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}}, }}, @@ -42357,6 +42375,13 @@ 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: &StructType{Key: StructKey{Name: "p9_options_xen"}}}, }}, + {NR: 165, Name: "mount$binder", CallName: "mount", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "src", TypeSize: 8}}}, + &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", TypeSize: 7}, Kind: 2, Values: []string{"binder\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: "opts", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "fs_options[binder_options]"}}}, + }}, {NR: 165, Name: "mount$bpf", CallName: "mount", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "src", TypeSize: 8}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dst", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, @@ -57778,4 +57803,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "e3b8869a383871023d4befca78e5d00da208436e" +const revision_amd64 = "c524527ddb33e1658f145e9b03ad8c7f76d64601" -- cgit mrf-deployment