From 6e045ca26d969f7465819984668417c9c3b47520 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Sun, 28 Oct 2018 19:04:28 +0100 Subject: sys/syz-extract: support missing arch headers The latest Linux kernel misses some arch-specific headers on some archs: asm/a.out.h asm/prctl.h asm/mce.h Support that. --- executor/defs.h | 10 +- executor/syscalls.h | 50 +++++++ sys/linux/bpf_386.const | 2 +- sys/linux/bpf_amd64.const | 2 +- sys/linux/bpf_arm.const | 2 +- sys/linux/bpf_arm64.const | 2 +- sys/linux/bpf_ppc64le.const | 2 +- sys/linux/floppy_386.const | 56 ++++++++ sys/linux/floppy_arm.const | 56 ++++++++ sys/linux/gen/386.go | 327 ++++++++++++++++++++++++++++++++++++++++++- sys/linux/gen/amd64.go | 6 +- sys/linux/gen/arm.go | 331 +++++++++++++++++++++++++++++++++++++++++++- sys/linux/gen/arm64.go | 10 +- sys/linux/gen/ppc64le.go | 14 +- sys/linux/init.go | 5 +- sys/linux/sys.txt | 1 + sys/linux/sys_arm.const | 8 +- sys/linux/sys_arm64.const | 8 +- sys/linux/sys_ppc64le.const | 12 +- sys/syz-extract/linux.go | 17 +++ 20 files changed, 867 insertions(+), 54 deletions(-) create mode 100644 sys/linux/floppy_386.const create mode 100644 sys/linux/floppy_arm.const diff --git a/executor/defs.h b/executor/defs.h index c7f5eeee6..5fbdcc586 100644 --- a/executor/defs.h +++ b/executor/defs.h @@ -60,7 +60,7 @@ #if GOARCH_386 #define GOARCH "386" -#define SYZ_REVISION "19d08eea29fb1a170319a86df783d31aa4d29b93" +#define SYZ_REVISION "08dfe051b3382d620914abd11b9bfb3e2a1ad1e3" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -70,7 +70,7 @@ #if GOARCH_amd64 #define GOARCH "amd64" -#define SYZ_REVISION "c65d8903b787f6f35b4f1794adc1558f95956a2f" +#define SYZ_REVISION "e75911ad4c7f227f02de1d9b6ba937a5265304a7" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -80,7 +80,7 @@ #if GOARCH_arm #define GOARCH "arm" -#define SYZ_REVISION "159cd727c1551ba9f1ddb35408ab61c3866826a3" +#define SYZ_REVISION "b92ca200efb674df22cba2ed604a0036e14c3ae7" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -90,7 +90,7 @@ #if GOARCH_arm64 #define GOARCH "arm64" -#define SYZ_REVISION "ce615e0bea35e137e9751e3fb6e89bdcddf375c5" +#define SYZ_REVISION "4c770e24a3b557a8745d4c710868546a05f0215a" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -100,7 +100,7 @@ #if GOARCH_ppc64le #define GOARCH "ppc64le" -#define SYZ_REVISION "faade1eb57ce44523c093c0a30cd5067758c1953" +#define SYZ_REVISION "3b4bcf2cc4eab89fd9c72d2b0943a2565608925a" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 diff --git a/executor/syscalls.h b/executor/syscalls.h index be077dec8..8a47bb1e2 100644 --- a/executor/syscalls.h +++ b/executor/syscalls.h @@ -1897,6 +1897,31 @@ const call_t syscalls[] = { {"ioctl$FIGETBSZ", 54}, {"ioctl$FIONREAD", 54}, {"ioctl$FITRIM", 54}, + {"ioctl$FLOPPY_FDCLRPRM", 54}, + {"ioctl$FLOPPY_FDDEFPRM", 54}, + {"ioctl$FLOPPY_FDEJECT", 54}, + {"ioctl$FLOPPY_FDFLUSH", 54}, + {"ioctl$FLOPPY_FDFMTBEG", 54}, + {"ioctl$FLOPPY_FDFMTEND", 54}, + {"ioctl$FLOPPY_FDFMTTRK", 54}, + {"ioctl$FLOPPY_FDGETDRVPRM", 54}, + {"ioctl$FLOPPY_FDGETDRVSTAT", 54}, + {"ioctl$FLOPPY_FDGETDRVTYP", 54}, + {"ioctl$FLOPPY_FDGETFDCSTAT", 54}, + {"ioctl$FLOPPY_FDGETMAXERRS", 54}, + {"ioctl$FLOPPY_FDGETPRM", 54}, + {"ioctl$FLOPPY_FDMSGOFF", 54}, + {"ioctl$FLOPPY_FDMSGON", 54}, + {"ioctl$FLOPPY_FDPOLLDRVSTAT", 54}, + {"ioctl$FLOPPY_FDRAWCMD", 54}, + {"ioctl$FLOPPY_FDRESET", 54}, + {"ioctl$FLOPPY_FDSETDRVPRM", 54}, + {"ioctl$FLOPPY_FDSETEMSGTRESH", 54}, + {"ioctl$FLOPPY_FDSETMAXERRS", 54}, + {"ioctl$FLOPPY_FDSETPRM", 54}, + {"ioctl$FLOPPY_FDTWADDLE", 54}, + {"ioctl$FLOPPY_FDWERRORCLR", 54}, + {"ioctl$FLOPPY_FDWERRORGET", 54}, {"ioctl$FS_IOC_FIEMAP", 54}, {"ioctl$FS_IOC_FSGETXATTR", 54}, {"ioctl$FS_IOC_FSSETXATTR", 54}, @@ -6421,6 +6446,31 @@ const call_t syscalls[] = { {"ioctl$FIGETBSZ", 54}, {"ioctl$FIONREAD", 54}, {"ioctl$FITRIM", 54}, + {"ioctl$FLOPPY_FDCLRPRM", 54}, + {"ioctl$FLOPPY_FDDEFPRM", 54}, + {"ioctl$FLOPPY_FDEJECT", 54}, + {"ioctl$FLOPPY_FDFLUSH", 54}, + {"ioctl$FLOPPY_FDFMTBEG", 54}, + {"ioctl$FLOPPY_FDFMTEND", 54}, + {"ioctl$FLOPPY_FDFMTTRK", 54}, + {"ioctl$FLOPPY_FDGETDRVPRM", 54}, + {"ioctl$FLOPPY_FDGETDRVSTAT", 54}, + {"ioctl$FLOPPY_FDGETDRVTYP", 54}, + {"ioctl$FLOPPY_FDGETFDCSTAT", 54}, + {"ioctl$FLOPPY_FDGETMAXERRS", 54}, + {"ioctl$FLOPPY_FDGETPRM", 54}, + {"ioctl$FLOPPY_FDMSGOFF", 54}, + {"ioctl$FLOPPY_FDMSGON", 54}, + {"ioctl$FLOPPY_FDPOLLDRVSTAT", 54}, + {"ioctl$FLOPPY_FDRAWCMD", 54}, + {"ioctl$FLOPPY_FDRESET", 54}, + {"ioctl$FLOPPY_FDSETDRVPRM", 54}, + {"ioctl$FLOPPY_FDSETEMSGTRESH", 54}, + {"ioctl$FLOPPY_FDSETMAXERRS", 54}, + {"ioctl$FLOPPY_FDSETPRM", 54}, + {"ioctl$FLOPPY_FDTWADDLE", 54}, + {"ioctl$FLOPPY_FDWERRORCLR", 54}, + {"ioctl$FLOPPY_FDWERRORGET", 54}, {"ioctl$FS_IOC_FIEMAP", 54}, {"ioctl$FS_IOC_FSGETXATTR", 54}, {"ioctl$FS_IOC_FSSETXATTR", 54}, diff --git a/sys/linux/bpf_386.const b/sys/linux/bpf_386.const index 46bc14b78..4a1fcd0fe 100644 --- a/sys/linux/bpf_386.const +++ b/sys/linux/bpf_386.const @@ -140,7 +140,7 @@ BPF_XADD0 = 6 BPF_XOR0 = 10 BTF_MAGIC = 60319 BTF_VERSION = 1 -__BPF_FUNC_MAX_ID = 84 +__BPF_FUNC_MAX_ID = 91 __NR_bpf = 357 bpf_call_code = 133 bpf_exit_code = 149 diff --git a/sys/linux/bpf_amd64.const b/sys/linux/bpf_amd64.const index fad539b85..79575c6a8 100644 --- a/sys/linux/bpf_amd64.const +++ b/sys/linux/bpf_amd64.const @@ -140,7 +140,7 @@ BPF_XADD0 = 6 BPF_XOR0 = 10 BTF_MAGIC = 60319 BTF_VERSION = 1 -__BPF_FUNC_MAX_ID = 84 +__BPF_FUNC_MAX_ID = 91 __NR_bpf = 321 bpf_call_code = 133 bpf_exit_code = 149 diff --git a/sys/linux/bpf_arm.const b/sys/linux/bpf_arm.const index e9d6c1ef4..cc09358af 100644 --- a/sys/linux/bpf_arm.const +++ b/sys/linux/bpf_arm.const @@ -140,7 +140,7 @@ BPF_XADD0 = 6 BPF_XOR0 = 10 BTF_MAGIC = 60319 BTF_VERSION = 1 -__BPF_FUNC_MAX_ID = 84 +__BPF_FUNC_MAX_ID = 91 __NR_bpf = 386 bpf_call_code = 133 bpf_exit_code = 149 diff --git a/sys/linux/bpf_arm64.const b/sys/linux/bpf_arm64.const index c7a837eb2..2abe42de6 100644 --- a/sys/linux/bpf_arm64.const +++ b/sys/linux/bpf_arm64.const @@ -140,7 +140,7 @@ BPF_XADD0 = 6 BPF_XOR0 = 10 BTF_MAGIC = 60319 BTF_VERSION = 1 -__BPF_FUNC_MAX_ID = 84 +__BPF_FUNC_MAX_ID = 91 __NR_bpf = 280 bpf_call_code = 133 bpf_exit_code = 149 diff --git a/sys/linux/bpf_ppc64le.const b/sys/linux/bpf_ppc64le.const index 44299f688..57c7807be 100644 --- a/sys/linux/bpf_ppc64le.const +++ b/sys/linux/bpf_ppc64le.const @@ -140,7 +140,7 @@ BPF_XADD0 = 6 BPF_XOR0 = 10 BTF_MAGIC = 60319 BTF_VERSION = 1 -__BPF_FUNC_MAX_ID = 84 +__BPF_FUNC_MAX_ID = 91 __NR_bpf = 361 bpf_call_code = 133 bpf_exit_code = 149 diff --git a/sys/linux/floppy_386.const b/sys/linux/floppy_386.const new file mode 100644 index 000000000..ab4cb11c8 --- /dev/null +++ b/sys/linux/floppy_386.const @@ -0,0 +1,56 @@ +# AUTOGENERATED FILE +FDCLRPRM = 577 +FDDEFPRM = 1075577411 +FDEJECT = 602 +FDFLUSH = 587 +FDFMTBEG = 583 +FDFMTEND = 585 +FDFMTTRK = 1074528840 +FDGETDRVPRM = 2153251345 +FDGETDRVSTAT = 2150892050 +FDGETDRVTYP = 2148532751 +FDGETFDCSTAT = 2149581333 +FDGETMAXERRS = 2148794894 +FDMSGOFF = 582 +FDMSGON = 581 +FDPOLLDRVSTAT = 2150892051 +FDRAWCMD = 600 +FDRESET = 596 +FDSETDRVPRM = 1079509648 +FDSETEMSGTRESH = 586 +FDSETMAXERRS = 1075053132 +FDSETPRM = 1075577410 +FDTWADDLE = 601 +FDWERRORCLR = 598 +FDWERRORGET = 2149057047 +FD_BROKEN_DCL = 32 +FD_DEBUG = 2 +FD_DISK_CHANGED_BIT = 4 +FD_DISK_NEWCHANGE_BIT = 2 +FD_DISK_WRITABLE_BIT = 5 +FD_INVERTED_DCL = 128 +FD_NEED_TWADDLE_BIT = 0 +FD_OPEN_SHOULD_FAIL_BIT = 6 +FD_RAW_DISK_CHANGE = 4 +FD_RAW_FAILURE = 65536 +FD_RAW_HARDFAILURE = 131072 +FD_RAW_INTR = 8 +FD_RAW_MORE = 256 +FD_RAW_NEED_DISK = 64 +FD_RAW_NEED_SEEK = 128 +FD_RAW_NO_MOTOR = 4 +FD_RAW_NO_MOTOR_AFTER = 32 +FD_RAW_READ = 1 +FD_RAW_SOFTFAILURE = 2048 +FD_RAW_SPIN = 16 +FD_RAW_STOP_IF_FAILURE = 512 +FD_RAW_STOP_IF_SUCCESS = 1024 +FD_RAW_WRITE = 2 +FD_RESET_ALWAYS = 2 +FD_RESET_IF_NEEDED = 0 +FD_RESET_IF_RAWCMD = 1 +FD_SILENT_DCL_CLEAR = 4 +FD_UNUSED_BIT = 3 +FD_VERIFY_BIT = 1 +FTD_MSG = 16 +__NR_ioctl = 54 diff --git a/sys/linux/floppy_arm.const b/sys/linux/floppy_arm.const new file mode 100644 index 000000000..ab4cb11c8 --- /dev/null +++ b/sys/linux/floppy_arm.const @@ -0,0 +1,56 @@ +# AUTOGENERATED FILE +FDCLRPRM = 577 +FDDEFPRM = 1075577411 +FDEJECT = 602 +FDFLUSH = 587 +FDFMTBEG = 583 +FDFMTEND = 585 +FDFMTTRK = 1074528840 +FDGETDRVPRM = 2153251345 +FDGETDRVSTAT = 2150892050 +FDGETDRVTYP = 2148532751 +FDGETFDCSTAT = 2149581333 +FDGETMAXERRS = 2148794894 +FDMSGOFF = 582 +FDMSGON = 581 +FDPOLLDRVSTAT = 2150892051 +FDRAWCMD = 600 +FDRESET = 596 +FDSETDRVPRM = 1079509648 +FDSETEMSGTRESH = 586 +FDSETMAXERRS = 1075053132 +FDSETPRM = 1075577410 +FDTWADDLE = 601 +FDWERRORCLR = 598 +FDWERRORGET = 2149057047 +FD_BROKEN_DCL = 32 +FD_DEBUG = 2 +FD_DISK_CHANGED_BIT = 4 +FD_DISK_NEWCHANGE_BIT = 2 +FD_DISK_WRITABLE_BIT = 5 +FD_INVERTED_DCL = 128 +FD_NEED_TWADDLE_BIT = 0 +FD_OPEN_SHOULD_FAIL_BIT = 6 +FD_RAW_DISK_CHANGE = 4 +FD_RAW_FAILURE = 65536 +FD_RAW_HARDFAILURE = 131072 +FD_RAW_INTR = 8 +FD_RAW_MORE = 256 +FD_RAW_NEED_DISK = 64 +FD_RAW_NEED_SEEK = 128 +FD_RAW_NO_MOTOR = 4 +FD_RAW_NO_MOTOR_AFTER = 32 +FD_RAW_READ = 1 +FD_RAW_SOFTFAILURE = 2048 +FD_RAW_SPIN = 16 +FD_RAW_STOP_IF_FAILURE = 512 +FD_RAW_STOP_IF_SUCCESS = 1024 +FD_RAW_WRITE = 2 +FD_RESET_ALWAYS = 2 +FD_RESET_IF_NEEDED = 0 +FD_RESET_IF_RAWCMD = 1 +FD_SILENT_DCL_CLEAR = 4 +FD_UNUSED_BIT = 3 +FD_VERIFY_BIT = 1 +FTD_MSG = 16 +__NR_ioctl = 54 diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index 7e6fede59..d09fbd2a7 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -803,7 +803,7 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 133}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "regs", TypeSize: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "off", TypeSize: 2}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 84}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 91}, }}}, {Key: StructKey{Name: "bpf_insn_exit"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_insn_exit", TypeSize: 8}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 149}, @@ -3654,6 +3654,157 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, }}}, + {Key: StructKey{Name: "floppy_drive_params"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_params", TypeSize: 88}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmos", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "max_dtr", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hlt", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hut", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "srt", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spindown", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spindown_offset", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "select_delay", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rps", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tracks", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "timeout", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "intreleave_sect", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &StructType{Key: StructKey{Name: "floppy_max_errors"}, FldName: "max_errors"}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_params_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{16, 32, 2, 4, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "read_track", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "autodetect", TypeSize: 16}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "checkfreq", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "native_format", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "floppy_drive_params", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_params", TypeSize: 88, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmos", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "max_dtr", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hlt", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hut", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "srt", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spindown", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spindown_offset", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "select_delay", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rps", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tracks", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "timeout", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "intreleave_sect", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &StructType{Key: StructKey{Name: "floppy_max_errors", Dir: 1}, FldName: "max_errors"}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_params_flags", FldName: "flags", TypeSize: 1, ArgDir: 1}}, Vals: []uint64{16, 32, 2, 4, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "read_track", TypeSize: 1, ArgDir: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "autodetect", TypeSize: 16, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2, ArgDir: 1}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "checkfreq", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "native_format", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "floppy_drive_struct", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_struct", TypeSize: 52, ArgDir: 1}, Fields: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_struct_flags", FldName: "flags", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "select_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "first_read_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "probed_format", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "track", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "maxblock", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "maxtrack", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "keep_data", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd_ref", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd_device", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "last_checked", TypeSize: 4, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dmabuf", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bufblocks", TypeSize: 4, ArgDir: 1}}, Buf: "dmabuf"}, + }}}, + {Key: StructKey{Name: "floppy_fdc_state", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_fdc_state", TypeSize: 32, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "spec1", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "spec2", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dtr", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "version", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "dor", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "address", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rawcmd", TypeSize: 4, ArgDir: 1}, BitfieldLen: 2, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4, ArgDir: 1}, BitfieldOff: 2, BitfieldLen: 1, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "need_configure", TypeSize: 4, ArgDir: 1}, BitfieldOff: 3, BitfieldLen: 1, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "perp_mode", TypeSize: 4, ArgDir: 1}, BitfieldOff: 4, BitfieldLen: 2, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "has_fifo", TypeSize: 4, ArgDir: 1}, BitfieldOff: 6, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "driver_version", TypeSize: 4, ArgDir: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "track", TypeSize: 4, ArgDir: 1}, Kind: 1, RangeBegin: 4, RangeEnd: 4}, + }}}, + {Key: StructKey{Name: "floppy_max_errors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_max_errors", TypeSize: 20}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "abort", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_track", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "recal", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reporting", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "floppy_max_errors", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_max_errors", TypeSize: 20, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "abort", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_track", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "recal", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reporting", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "floppy_raw_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_raw_cmd", TypeSize: 80, ArgDir: 2}, Fields: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_raw_cmd_flags", FldName: "flags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{1, 2, 4, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 65536, 131072}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "data", TypeSize: 4, ArgDir: 2}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 2, IsVarlen: true}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "kernel_data", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1}}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "next", TypeSize: 4, ArgDir: 2}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "length", TypeSize: 4, ArgDir: 2}}, Buf: "data"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "phys_length", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_length", TypeSize: 4, ArgDir: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1, ArgDir: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmd_count", TypeSize: 1, ArgDir: 2}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "cmd", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reply_count", TypeSize: 1, ArgDir: 2}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "reply", TypeSize: 16, ArgDir: 2}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1, ArgDir: 2}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 1}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "resultcode", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}}, + }}}, + {Key: StructKey{Name: "floppy_struct"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_struct", TypeSize: 28}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "sect", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "stretch", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "gap", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spec1", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "fmt_gap", TypeSize: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 2, IsVarlen: true}, Kind: 2}}, + }}}, + {Key: StructKey{Name: "floppy_struct", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_struct", TypeSize: 28, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "sect", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "stretch", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "gap", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spec1", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "fmt_gap", TypeSize: 1, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 2, IsVarlen: true}, Kind: 2}}, + }}}, + {Key: StructKey{Name: "floppy_write_errors", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_write_errors", TypeSize: 24, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "write_errors", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "first_error_sector", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "first_error_generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "last_error_sector", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "lsat_error_generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "badness", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "format_descr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "format_descr", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "device", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "fou_nl_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fou_nl_policy", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "nlattr_t[const[FOU_ATTR_PORT, int16], sock_port]"}, FldName: "FOU_ATTR_PORT"}, &StructType{Key: StructKey{Name: "nlattr_t[const[FOU_ATTR_AF, int16], flags[fou_families, int8]]"}, FldName: "FOU_ATTR_AF"}, @@ -26018,6 +26169,122 @@ var syscalls_386 = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3222820985}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "fstrim_range"}}}, }}, + {NR: 54, Name: "ioctl$FLOPPY_FDCLRPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 577}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDDEFPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577411}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDEJECT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 602}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFLUSH", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 587}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTBEG", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 583}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTEND", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 585}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTTRK", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1074528840}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "format_descr"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2153251345}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_params", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2150892050}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVTYP", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2148532751}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETFDCSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2149581333}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_fdc_state", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETMAXERRS", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2148794894}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_max_errors", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577411}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDMSGOFF", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 582}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDMSGON", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 581}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDPOLLDRVSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2150892051}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDRAWCMD", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 600}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_raw_cmd", Dir: 2}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDRESET", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 596}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_reset_mode", FldName: "arg", TypeSize: 4}}, Vals: []uint64{0, 1, 2}, BitMask: true}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETDRVPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1079509648}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_params"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETEMSGTRESH", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 586}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 4}}, Kind: 2, RangeEnd: 15}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETMAXERRS", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075053132}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_max_errors"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577410}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDTWADDLE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 601}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDWERRORCLR", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 598}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDWERRORGET", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2149057047}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_write_errors", Dir: 1}}}, + }}, {NR: 54, Name: "ioctl$FS_IOC_FIEMAP", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3223348747}, @@ -35882,7 +36149,60 @@ var consts_386 = []ConstValue{ {Name: "FAN_UNLIMITED_MARKS", Value: 32}, {Name: "FAN_UNLIMITED_QUEUE", Value: 16}, {Name: "FASYNC", Value: 8192}, + {Name: "FDCLRPRM", Value: 577}, + {Name: "FDDEFPRM", Value: 1075577411}, + {Name: "FDEJECT", Value: 602}, + {Name: "FDFLUSH", Value: 587}, + {Name: "FDFMTBEG", Value: 583}, + {Name: "FDFMTEND", Value: 585}, + {Name: "FDFMTTRK", Value: 1074528840}, + {Name: "FDGETDRVPRM", Value: 2153251345}, + {Name: "FDGETDRVSTAT", Value: 2150892050}, + {Name: "FDGETDRVTYP", Value: 2148532751}, + {Name: "FDGETFDCSTAT", Value: 2149581333}, + {Name: "FDGETMAXERRS", Value: 2148794894}, + {Name: "FDMSGOFF", Value: 582}, + {Name: "FDMSGON", Value: 581}, + {Name: "FDPOLLDRVSTAT", Value: 2150892051}, + {Name: "FDRAWCMD", Value: 600}, + {Name: "FDRESET", Value: 596}, + {Name: "FDSETDRVPRM", Value: 1079509648}, + {Name: "FDSETEMSGTRESH", Value: 586}, + {Name: "FDSETMAXERRS", Value: 1075053132}, + {Name: "FDSETPRM", Value: 1075577410}, + {Name: "FDTWADDLE", Value: 601}, + {Name: "FDWERRORCLR", Value: 598}, + {Name: "FDWERRORGET", Value: 2149057047}, + {Name: "FD_BROKEN_DCL", Value: 32}, {Name: "FD_CLOEXEC", Value: 1}, + {Name: "FD_DEBUG", Value: 2}, + {Name: "FD_DISK_CHANGED_BIT", Value: 4}, + {Name: "FD_DISK_NEWCHANGE_BIT", Value: 2}, + {Name: "FD_DISK_WRITABLE_BIT", Value: 5}, + {Name: "FD_INVERTED_DCL", Value: 128}, + {Name: "FD_NEED_TWADDLE_BIT"}, + {Name: "FD_OPEN_SHOULD_FAIL_BIT", Value: 6}, + {Name: "FD_RAW_DISK_CHANGE", Value: 4}, + {Name: "FD_RAW_FAILURE", Value: 65536}, + {Name: "FD_RAW_HARDFAILURE", Value: 131072}, + {Name: "FD_RAW_INTR", Value: 8}, + {Name: "FD_RAW_MORE", Value: 256}, + {Name: "FD_RAW_NEED_DISK", Value: 64}, + {Name: "FD_RAW_NEED_SEEK", Value: 128}, + {Name: "FD_RAW_NO_MOTOR", Value: 4}, + {Name: "FD_RAW_NO_MOTOR_AFTER", Value: 32}, + {Name: "FD_RAW_READ", Value: 1}, + {Name: "FD_RAW_SOFTFAILURE", Value: 2048}, + {Name: "FD_RAW_SPIN", Value: 16}, + {Name: "FD_RAW_STOP_IF_FAILURE", Value: 512}, + {Name: "FD_RAW_STOP_IF_SUCCESS", Value: 1024}, + {Name: "FD_RAW_WRITE", Value: 2}, + {Name: "FD_RESET_ALWAYS", Value: 2}, + {Name: "FD_RESET_IF_NEEDED"}, + {Name: "FD_RESET_IF_RAWCMD", Value: 1}, + {Name: "FD_SILENT_DCL_CLEAR", Value: 4}, + {Name: "FD_UNUSED_BIT", Value: 3}, + {Name: "FD_VERIFY_BIT", Value: 1}, {Name: "FF_CONSTANT", Value: 82}, {Name: "FF_CUSTOM", Value: 93}, {Name: "FF_DAMPER", Value: 85}, @@ -36001,6 +36321,7 @@ var consts_386 = []ConstValue{ {Name: "FS_POLICY_FLAGS_PAD_16", Value: 2}, {Name: "FS_POLICY_FLAGS_PAD_4"}, {Name: "FS_POLICY_FLAGS_PAD_8", Value: 1}, + {Name: "FTD_MSG", Value: 16}, {Name: "FUSE_ABORT_ERROR", Value: 2097152}, {Name: "FUSE_ASYNC_DIO", Value: 32768}, {Name: "FUSE_ASYNC_READ", Value: 1}, @@ -41032,7 +41353,7 @@ var consts_386 = []ConstValue{ {Name: "_DRM_VBLANK_SECONDARY", Value: 536870912}, {Name: "_DRM_VBLANK_SIGNAL", Value: 1073741824}, {Name: "_DRM_WRITE_COMBINING", Value: 16}, - {Name: "__BPF_FUNC_MAX_ID", Value: 84}, + {Name: "__BPF_FUNC_MAX_ID", Value: 91}, {Name: "__NR_accept4", Value: 364}, {Name: "__NR_acct", Value: 51}, {Name: "__NR_add_key", Value: 286}, @@ -41327,4 +41648,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "19d08eea29fb1a170319a86df783d31aa4d29b93" +const revision_386 = "08dfe051b3382d620914abd11b9bfb3e2a1ad1e3" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index 9fcaf6faa..c59d3572f 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -811,7 +811,7 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 133}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "regs", TypeSize: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "off", TypeSize: 2}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 84}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 91}, }}}, {Key: StructKey{Name: "bpf_insn_exit"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_insn_exit", TypeSize: 8}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 149}, @@ -42045,7 +42045,7 @@ var consts_amd64 = []ConstValue{ {Name: "_DRM_VBLANK_SECONDARY", Value: 536870912}, {Name: "_DRM_VBLANK_SIGNAL", Value: 1073741824}, {Name: "_DRM_WRITE_COMBINING", Value: 16}, - {Name: "__BPF_FUNC_MAX_ID", Value: 84}, + {Name: "__BPF_FUNC_MAX_ID", Value: 91}, {Name: "__NR_accept", Value: 43}, {Name: "__NR_accept4", Value: 288}, {Name: "__NR_acct", Value: 163}, @@ -42351,4 +42351,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "c65d8903b787f6f35b4f1794adc1558f95956a2f" +const revision_amd64 = "e75911ad4c7f227f02de1d9b6ba937a5265304a7" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index d741f6edc..58386230d 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -808,7 +808,7 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 133}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "regs", TypeSize: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "off", TypeSize: 2}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 84}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 91}, }}}, {Key: StructKey{Name: "bpf_insn_exit"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_insn_exit", TypeSize: 8}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 149}, @@ -3659,6 +3659,157 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, }}}, + {Key: StructKey{Name: "floppy_drive_params"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_params", TypeSize: 88}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmos", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "max_dtr", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hlt", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hut", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "srt", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spindown", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spindown_offset", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "select_delay", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rps", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tracks", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "timeout", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "intreleave_sect", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &StructType{Key: StructKey{Name: "floppy_max_errors"}, FldName: "max_errors"}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_params_flags", FldName: "flags", TypeSize: 1}}, Vals: []uint64{16, 32, 2, 4, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "read_track", TypeSize: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "autodetect", TypeSize: 16}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "checkfreq", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "native_format", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "floppy_drive_params", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_params", TypeSize: 88, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmos", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "max_dtr", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hlt", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "hut", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "srt", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spindown", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spindown_offset", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "select_delay", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rps", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "tracks", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "timeout", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "intreleave_sect", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 3}}, IsPad: true}, + &StructType{Key: StructKey{Name: "floppy_max_errors", Dir: 1}, FldName: "max_errors"}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_params_flags", FldName: "flags", TypeSize: 1, ArgDir: 1}}, Vals: []uint64{16, 32, 2, 4, 128}, BitMask: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "read_track", TypeSize: 1, ArgDir: 1}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "autodetect", TypeSize: 16, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", TypeSize: 2, ArgDir: 1}}}, Kind: 1, RangeBegin: 8, RangeEnd: 8}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "checkfreq", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "native_format", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "floppy_drive_struct", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_drive_struct", TypeSize: 52, ArgDir: 1}, Fields: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_drive_struct_flags", FldName: "flags", TypeSize: 4, ArgDir: 1}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "spinup_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "select_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "first_read_date", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "probed_format", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "track", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "maxblock", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int16", FldName: "maxtrack", TypeSize: 2, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "keep_data", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd_ref", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "fd_device", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "last_checked", TypeSize: 4, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "dmabuf", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "bufblocks", TypeSize: 4, ArgDir: 1}}, Buf: "dmabuf"}, + }}}, + {Key: StructKey{Name: "floppy_fdc_state", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_fdc_state", TypeSize: 32, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "spec1", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "spec2", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "dtr", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "version", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "dor", TypeSize: 1, ArgDir: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 2}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "address", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "rawcmd", TypeSize: 4, ArgDir: 1}, BitfieldLen: 2, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4, ArgDir: 1}, BitfieldOff: 2, BitfieldLen: 1, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "need_configure", TypeSize: 4, ArgDir: 1}, BitfieldOff: 3, BitfieldLen: 1, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "perp_mode", TypeSize: 4, ArgDir: 1}, BitfieldOff: 4, BitfieldLen: 2, BitfieldMdl: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "has_fifo", TypeSize: 4, ArgDir: 1}, BitfieldOff: 6, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "driver_version", TypeSize: 4, ArgDir: 1}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "track", TypeSize: 4, ArgDir: 1}, Kind: 1, RangeBegin: 4, RangeEnd: 4}, + }}}, + {Key: StructKey{Name: "floppy_max_errors"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_max_errors", TypeSize: 20}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "abort", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_track", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "recal", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reporting", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "floppy_max_errors", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_max_errors", TypeSize: 20, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "abort", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "read_track", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reset", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "recal", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "reporting", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "floppy_raw_cmd", Dir: 2}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_raw_cmd", TypeSize: 80, ArgDir: 2}, Fields: []Type{ + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_raw_cmd_flags", FldName: "flags", TypeSize: 4, ArgDir: 2}}, Vals: []uint64{1, 2, 4, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 65536, 131072}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "buffer", FldName: "data", TypeSize: 4, ArgDir: 2}, Type: &BufferType{TypeCommon: TypeCommon{ArgDir: 2, IsVarlen: true}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "kernel_data", TypeSize: 4}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1}}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "next", TypeSize: 4, ArgDir: 2}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "length", TypeSize: 4, ArgDir: 2}}, Buf: "data"}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "phys_length", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_length", TypeSize: 4, ArgDir: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1, ArgDir: 2}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "cmd_count", TypeSize: 1, ArgDir: 2}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "cmd", TypeSize: 16, ArgDir: 2}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reply_count", TypeSize: 1, ArgDir: 2}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "reply", TypeSize: 16, ArgDir: 2}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1, ArgDir: 2}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 1}}, IsPad: true}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "resultcode", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved1", TypeSize: 4, ArgDir: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "reserved2", TypeSize: 4, ArgDir: 2}}}, + }}}, + {Key: StructKey{Name: "floppy_struct"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_struct", TypeSize: 28}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "sect", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "stretch", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "gap", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spec1", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "fmt_gap", TypeSize: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 2, IsVarlen: true}, Kind: 2}}, + }}}, + {Key: StructKey{Name: "floppy_struct", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_struct", TypeSize: 28, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "sect", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "stretch", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "gap", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "rate", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "spec1", TypeSize: 1, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "fmt_gap", TypeSize: 1, ArgDir: 1}}}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 2, IsVarlen: true}, Kind: 2}}, + }}}, + {Key: StructKey{Name: "floppy_write_errors", Dir: 1}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "floppy_write_errors", TypeSize: 24, ArgDir: 1}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "write_errors", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "first_error_sector", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "first_error_generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "last_error_sector", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "lsat_error_generation", TypeSize: 4, ArgDir: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "badness", TypeSize: 4, ArgDir: 1}}}, + }}}, + {Key: StructKey{Name: "format_descr"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "format_descr", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "device", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "head", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "track", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "fou_nl_policy"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "fou_nl_policy", IsVarlen: true}, Fields: []Type{ &StructType{Key: StructKey{Name: "nlattr_t[const[FOU_ATTR_PORT, int16], sock_port]"}, FldName: "FOU_ATTR_PORT"}, &StructType{Key: StructKey{Name: "nlattr_t[const[FOU_ATTR_AF, int16], flags[fou_families, int8]]"}, FldName: "FOU_ATTR_AF"}, @@ -25913,6 +26064,122 @@ var syscalls_arm = []*Syscall{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3222820985}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "fstrim_range"}}}, }}, + {NR: 54, Name: "ioctl$FLOPPY_FDCLRPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 577}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDDEFPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577411}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDEJECT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 602}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFLUSH", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 587}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTBEG", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 583}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTEND", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 585}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDFMTTRK", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1074528840}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "format_descr"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2153251345}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_params", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2150892050}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETDRVTYP", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2148532751}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", TypeSize: 16, ArgDir: 1}, Kind: 1, RangeBegin: 16, RangeEnd: 16}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETFDCSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2149581333}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_fdc_state", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETMAXERRS", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2148794894}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_max_errors", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDGETPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577411}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDMSGOFF", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 582}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDMSGON", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 581}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDPOLLDRVSTAT", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2150892051}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_struct", Dir: 1}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDRAWCMD", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 600}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_raw_cmd", Dir: 2}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDRESET", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 596}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "floppy_reset_mode", FldName: "arg", TypeSize: 4}}, Vals: []uint64{0, 1, 2}, BitMask: true}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETDRVPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1079509648}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_drive_params"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETEMSGTRESH", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 586}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "arg", TypeSize: 4}}, Kind: 2, RangeEnd: 15}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETMAXERRS", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075053132}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_max_errors"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDSETPRM", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 1075577410}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_struct"}}}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDTWADDLE", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 601}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDWERRORCLR", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 598}, + }}, + {NR: 54, Name: "ioctl$FLOPPY_FDWERRORGET", CallName: "ioctl", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_floppy", FldName: "fd", TypeSize: 4}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 2149057047}, + &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, Type: &StructType{Key: StructKey{Name: "floppy_write_errors", Dir: 1}}}, + }}, {NR: 54, Name: "ioctl$FS_IOC_FIEMAP", CallName: "ioctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "fd", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 3223348747}, @@ -34810,10 +35077,6 @@ var consts_arm = []ConstValue{ {Name: "ALG_SET_IV", Value: 2}, {Name: "ALG_SET_KEY", Value: 1}, {Name: "ALG_SET_OP", Value: 3}, - {Name: "ARCH_GET_FS", Value: 4099}, - {Name: "ARCH_GET_GS", Value: 4100}, - {Name: "ARCH_SET_FS", Value: 4098}, - {Name: "ARCH_SET_GS", Value: 4097}, {Name: "ARPHRD_6LOWPAN", Value: 825}, {Name: "ARPHRD_ADAPT", Value: 264}, {Name: "ARPHRD_APPLETLK", Value: 8}, @@ -35810,7 +36073,60 @@ var consts_arm = []ConstValue{ {Name: "FAN_UNLIMITED_MARKS", Value: 32}, {Name: "FAN_UNLIMITED_QUEUE", Value: 16}, {Name: "FASYNC", Value: 8192}, + {Name: "FDCLRPRM", Value: 577}, + {Name: "FDDEFPRM", Value: 1075577411}, + {Name: "FDEJECT", Value: 602}, + {Name: "FDFLUSH", Value: 587}, + {Name: "FDFMTBEG", Value: 583}, + {Name: "FDFMTEND", Value: 585}, + {Name: "FDFMTTRK", Value: 1074528840}, + {Name: "FDGETDRVPRM", Value: 2153251345}, + {Name: "FDGETDRVSTAT", Value: 2150892050}, + {Name: "FDGETDRVTYP", Value: 2148532751}, + {Name: "FDGETFDCSTAT", Value: 2149581333}, + {Name: "FDGETMAXERRS", Value: 2148794894}, + {Name: "FDMSGOFF", Value: 582}, + {Name: "FDMSGON", Value: 581}, + {Name: "FDPOLLDRVSTAT", Value: 2150892051}, + {Name: "FDRAWCMD", Value: 600}, + {Name: "FDRESET", Value: 596}, + {Name: "FDSETDRVPRM", Value: 1079509648}, + {Name: "FDSETEMSGTRESH", Value: 586}, + {Name: "FDSETMAXERRS", Value: 1075053132}, + {Name: "FDSETPRM", Value: 1075577410}, + {Name: "FDTWADDLE", Value: 601}, + {Name: "FDWERRORCLR", Value: 598}, + {Name: "FDWERRORGET", Value: 2149057047}, + {Name: "FD_BROKEN_DCL", Value: 32}, {Name: "FD_CLOEXEC", Value: 1}, + {Name: "FD_DEBUG", Value: 2}, + {Name: "FD_DISK_CHANGED_BIT", Value: 4}, + {Name: "FD_DISK_NEWCHANGE_BIT", Value: 2}, + {Name: "FD_DISK_WRITABLE_BIT", Value: 5}, + {Name: "FD_INVERTED_DCL", Value: 128}, + {Name: "FD_NEED_TWADDLE_BIT"}, + {Name: "FD_OPEN_SHOULD_FAIL_BIT", Value: 6}, + {Name: "FD_RAW_DISK_CHANGE", Value: 4}, + {Name: "FD_RAW_FAILURE", Value: 65536}, + {Name: "FD_RAW_HARDFAILURE", Value: 131072}, + {Name: "FD_RAW_INTR", Value: 8}, + {Name: "FD_RAW_MORE", Value: 256}, + {Name: "FD_RAW_NEED_DISK", Value: 64}, + {Name: "FD_RAW_NEED_SEEK", Value: 128}, + {Name: "FD_RAW_NO_MOTOR", Value: 4}, + {Name: "FD_RAW_NO_MOTOR_AFTER", Value: 32}, + {Name: "FD_RAW_READ", Value: 1}, + {Name: "FD_RAW_SOFTFAILURE", Value: 2048}, + {Name: "FD_RAW_SPIN", Value: 16}, + {Name: "FD_RAW_STOP_IF_FAILURE", Value: 512}, + {Name: "FD_RAW_STOP_IF_SUCCESS", Value: 1024}, + {Name: "FD_RAW_WRITE", Value: 2}, + {Name: "FD_RESET_ALWAYS", Value: 2}, + {Name: "FD_RESET_IF_NEEDED"}, + {Name: "FD_RESET_IF_RAWCMD", Value: 1}, + {Name: "FD_SILENT_DCL_CLEAR", Value: 4}, + {Name: "FD_UNUSED_BIT", Value: 3}, + {Name: "FD_VERIFY_BIT", Value: 1}, {Name: "FF_CONSTANT", Value: 82}, {Name: "FF_CUSTOM", Value: 93}, {Name: "FF_DAMPER", Value: 85}, @@ -35929,6 +36245,7 @@ var consts_arm = []ConstValue{ {Name: "FS_POLICY_FLAGS_PAD_16", Value: 2}, {Name: "FS_POLICY_FLAGS_PAD_4"}, {Name: "FS_POLICY_FLAGS_PAD_8", Value: 1}, + {Name: "FTD_MSG", Value: 16}, {Name: "FUSE_ABORT_ERROR", Value: 2097152}, {Name: "FUSE_ASYNC_DIO", Value: 32768}, {Name: "FUSE_ASYNC_READ", Value: 1}, @@ -40908,7 +41225,7 @@ var consts_arm = []ConstValue{ {Name: "_DRM_VBLANK_SECONDARY", Value: 536870912}, {Name: "_DRM_VBLANK_SIGNAL", Value: 1073741824}, {Name: "_DRM_WRITE_COMBINING", Value: 16}, - {Name: "__BPF_FUNC_MAX_ID", Value: 84}, + {Name: "__BPF_FUNC_MAX_ID", Value: 91}, {Name: "__NR_accept", Value: 285}, {Name: "__NR_accept4", Value: 366}, {Name: "__NR_acct", Value: 51}, @@ -41202,4 +41519,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "159cd727c1551ba9f1ddb35408ab61c3866826a3" +const revision_arm = "b92ca200efb674df22cba2ed604a0036e14c3ae7" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index b6fe5ae72..0d0c33837 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -811,7 +811,7 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 133}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "regs", TypeSize: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "off", TypeSize: 2}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 84}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 91}, }}}, {Key: StructKey{Name: "bpf_insn_exit"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_insn_exit", TypeSize: 8}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 149}, @@ -35309,10 +35309,6 @@ var consts_arm64 = []ConstValue{ {Name: "ALG_SET_IV", Value: 2}, {Name: "ALG_SET_KEY", Value: 1}, {Name: "ALG_SET_OP", Value: 3}, - {Name: "ARCH_GET_FS", Value: 4099}, - {Name: "ARCH_GET_GS", Value: 4100}, - {Name: "ARCH_SET_FS", Value: 4098}, - {Name: "ARCH_SET_GS", Value: 4097}, {Name: "ARPHRD_6LOWPAN", Value: 825}, {Name: "ARPHRD_ADAPT", Value: 264}, {Name: "ARPHRD_APPLETLK", Value: 8}, @@ -41480,7 +41476,7 @@ var consts_arm64 = []ConstValue{ {Name: "_DRM_VBLANK_SECONDARY", Value: 536870912}, {Name: "_DRM_VBLANK_SIGNAL", Value: 1073741824}, {Name: "_DRM_WRITE_COMBINING", Value: 16}, - {Name: "__BPF_FUNC_MAX_ID", Value: 84}, + {Name: "__BPF_FUNC_MAX_ID", Value: 91}, {Name: "__NR_accept", Value: 202}, {Name: "__NR_accept4", Value: 242}, {Name: "__NR_acct", Value: 89}, @@ -41745,4 +41741,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "ce615e0bea35e137e9751e3fb6e89bdcddf375c5" +const revision_arm64 = "4c770e24a3b557a8745d4c710868546a05f0215a" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index d3060fc3a..61ed40754 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -802,7 +802,7 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 133}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "regs", TypeSize: 1}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "off", TypeSize: 2}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 84}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func", TypeSize: 4}}, Kind: 2, RangeEnd: 91}, }}}, {Key: StructKey{Name: "bpf_insn_exit"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_insn_exit", TypeSize: 8}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "code", TypeSize: 1}}, Val: 149}, @@ -29446,7 +29446,7 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "seccomp_metadata"}}}, }}, {NR: 26, Name: "ptrace$cont", CallName: "ptrace", Args: []Type{ - &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ptrace_req_cont", FldName: "req", TypeSize: 8}}, Vals: []uint64{7, 24, 9}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "ptrace_req_cont", FldName: "req", TypeSize: 8}}, Vals: []uint64{7, 24, 9, 29, 30}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "pid", FldName: "pid", TypeSize: 4}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "ignored", TypeSize: 8}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "data", TypeSize: 8}}}, @@ -33704,10 +33704,6 @@ var consts_ppc64le = []ConstValue{ {Name: "ALG_SET_IV", Value: 2}, {Name: "ALG_SET_KEY", Value: 1}, {Name: "ALG_SET_OP", Value: 3}, - {Name: "ARCH_GET_FS", Value: 4099}, - {Name: "ARCH_GET_GS", Value: 4100}, - {Name: "ARCH_SET_FS", Value: 4098}, - {Name: "ARCH_SET_GS", Value: 4097}, {Name: "ARPHRD_6LOWPAN", Value: 825}, {Name: "ARPHRD_ADAPT", Value: 264}, {Name: "ARPHRD_APPLETLK", Value: 8}, @@ -36905,6 +36901,8 @@ var consts_ppc64le = []ConstValue{ {Name: "PTRACE_SETSIGINFO", Value: 16899}, {Name: "PTRACE_SINGLESTEP", Value: 9}, {Name: "PTRACE_SYSCALL", Value: 24}, + {Name: "PTRACE_SYSEMU", Value: 29}, + {Name: "PTRACE_SYSEMU_SINGLESTEP", Value: 30}, {Name: "PTRACE_TRACEME"}, {Name: "PT_DYNAMIC", Value: 2}, {Name: "PT_GNU_STACK", Value: 1685382481}, @@ -38811,7 +38809,7 @@ var consts_ppc64le = []ConstValue{ {Name: "_DRM_VBLANK_SECONDARY", Value: 536870912}, {Name: "_DRM_VBLANK_SIGNAL", Value: 1073741824}, {Name: "_DRM_WRITE_COMBINING", Value: 16}, - {Name: "__BPF_FUNC_MAX_ID", Value: 84}, + {Name: "__BPF_FUNC_MAX_ID", Value: 91}, {Name: "__NR_accept", Value: 330}, {Name: "__NR_accept4", Value: 344}, {Name: "__NR_acct", Value: 51}, @@ -39101,4 +39099,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "faade1eb57ce44523c093c0a30cd5067758c1953" +const revision_ppc64le = "3b4bcf2cc4eab89fd9c72d2b0943a2565608925a" diff --git a/sys/linux/init.go b/sys/linux/init.go index 09fca92fc..a0e99f3de 100644 --- a/sys/linux/init.go +++ b/sys/linux/init.go @@ -27,11 +27,12 @@ func InitTarget(target *prog.Target) { FAN_ACCESS_PERM: target.GetConst("FAN_ACCESS_PERM"), PTRACE_TRACEME: target.GetConst("PTRACE_TRACEME"), CLOCK_REALTIME: target.GetConst("CLOCK_REALTIME"), - ARCH_SET_FS: target.GetConst("ARCH_SET_FS"), - ARCH_SET_GS: target.GetConst("ARCH_SET_GS"), AF_NFC: target.GetConst("AF_NFC"), AF_LLC: target.GetConst("AF_LLC"), AF_BLUETOOTH: target.GetConst("AF_BLUETOOTH"), + // These are not present on all arches. + ARCH_SET_FS: target.ConstMap["ARCH_SET_FS"], + ARCH_SET_GS: target.ConstMap["ARCH_SET_GS"], } target.MakeMmap = targets.MakePosixMmap(target) diff --git a/sys/linux/sys.txt b/sys/linux/sys.txt index 8b45e3d0b..a6826d637 100644 --- a/sys/linux/sys.txt +++ b/sys/linux/sys.txt @@ -125,6 +125,7 @@ eventfd2(initval int32, flags flags[eventfd_flags]) fd_event read$eventfd(fd fd_event, val ptr[out, int64], len len[val]) write$eventfd(fd fd_event, val ptr[in, int64], len len[val]) +# TODO: offset must be page-aligned. Or does the syscall even accept offset in pages? mmap(addr vma, len len[addr], prot flags[mmap_prot], flags flags[mmap_flags], fd fd, offset fileoff) munmap(addr vma, len len[addr]) mremap(addr vma, len len[addr], newlen len[newaddr], flags flags[mremap_flags], newaddr vma) diff --git a/sys/linux/sys_arm.const b/sys/linux/sys_arm.const index 00a7962ce..98d693daf 100644 --- a/sys/linux/sys_arm.const +++ b/sys/linux/sys_arm.const @@ -3,10 +3,10 @@ ADDR_COMPAT_LAYOUT = 2097152 ADDR_LIMIT_32BIT = 8388608 ADDR_LIMIT_3GB = 134217728 ADDR_NO_RANDOMIZE = 262144 -ARCH_GET_FS = 4099 -ARCH_GET_GS = 4100 -ARCH_SET_FS = 4098 -ARCH_SET_GS = 4097 +# ARCH_GET_FS is not set +# ARCH_GET_GS is not set +# ARCH_SET_FS is not set +# ARCH_SET_GS is not set AT_EMPTY_PATH = 4096 AT_FDCWD = 18446744073709551516 AT_NO_AUTOMOUNT = 2048 diff --git a/sys/linux/sys_arm64.const b/sys/linux/sys_arm64.const index 9bb3daa1c..baec76ee0 100644 --- a/sys/linux/sys_arm64.const +++ b/sys/linux/sys_arm64.const @@ -3,10 +3,10 @@ ADDR_COMPAT_LAYOUT = 2097152 ADDR_LIMIT_32BIT = 8388608 ADDR_LIMIT_3GB = 134217728 ADDR_NO_RANDOMIZE = 262144 -ARCH_GET_FS = 4099 -ARCH_GET_GS = 4100 -ARCH_SET_FS = 4098 -ARCH_SET_GS = 4097 +# ARCH_GET_FS is not set +# ARCH_GET_GS is not set +# ARCH_SET_FS is not set +# ARCH_SET_GS is not set AT_EMPTY_PATH = 4096 AT_FDCWD = 18446744073709551516 AT_NO_AUTOMOUNT = 2048 diff --git a/sys/linux/sys_ppc64le.const b/sys/linux/sys_ppc64le.const index 2aa284b1d..97091b256 100644 --- a/sys/linux/sys_ppc64le.const +++ b/sys/linux/sys_ppc64le.const @@ -3,10 +3,10 @@ ADDR_COMPAT_LAYOUT = 2097152 ADDR_LIMIT_32BIT = 8388608 ADDR_LIMIT_3GB = 134217728 ADDR_NO_RANDOMIZE = 262144 -ARCH_GET_FS = 4099 -ARCH_GET_GS = 4100 -ARCH_SET_FS = 4098 -ARCH_SET_GS = 4097 +# ARCH_GET_FS is not set +# ARCH_GET_GS is not set +# ARCH_SET_FS is not set +# ARCH_SET_GS is not set AT_EMPTY_PATH = 4096 AT_FDCWD = 18446744073709551516 AT_NO_AUTOMOUNT = 2048 @@ -460,8 +460,8 @@ PTRACE_SETREGSET = 16901 PTRACE_SETSIGINFO = 16899 PTRACE_SINGLESTEP = 9 PTRACE_SYSCALL = 24 -# PTRACE_SYSEMU is not set -# PTRACE_SYSEMU_SINGLESTEP is not set +PTRACE_SYSEMU = 29 +PTRACE_SYSEMU_SINGLESTEP = 30 PTRACE_TRACEME = 0 P_ALL = 0 P_PGID = 2 diff --git a/sys/syz-extract/linux.go b/sys/syz-extract/linux.go index 5c428461c..c5786a87d 100644 --- a/sys/syz-extract/linux.go +++ b/sys/syz-extract/linux.go @@ -43,6 +43,22 @@ func (*linux) prepare(sourcedir string, build bool, arches []string) error { } func (*linux) prepareArch(arch *Arch) error { + // Kernel misses these headers on all arches. + // So we create empty stubs in buildDir/syzkaller and add -IbuildDir/syzkaller + // as the last flag so it won't override real kernel headers. + for _, hdr := range []string{ + "asm/a.out.h", + "asm/prctl.h", + "asm/mce.h", + } { + fullPath := filepath.Join(arch.buildDir, "syzkaller", hdr) + if err := osutil.MkdirAll(filepath.Dir(fullPath)); err != nil { + return err + } + if err := osutil.WriteFile(fullPath, nil); err != nil { + return nil + } + } if !arch.build { return nil } @@ -100,6 +116,7 @@ func (*linux) processFile(arch *Arch, info *compiler.ConstInfo) (map[string]uint "-I" + sourceDir + "/include/uapi", "-I" + buildDir + "/include/generated/uapi", "-I" + sourceDir, + "-I" + buildDir + "/syzkaller", "-include", sourceDir + "/include/linux/kconfig.h", } args = append(args, arch.target.CFlags...) -- cgit mrf-deployment