Upgrade strace to 4.16 from 4.14.
Noteworthy changes in release 4.16 (2017-02-14)
* Improvements
* Implemented syscall return value injection (-e inject=SET:retval= option).
* Implemented signal injection (-e inject=SET:signal= option).
* Implemented decoding of SUID_DUMP_* constants in PR_[GS]ET_DUMPABLE.
* Implemented decoding of all SG_* ioctl commands.
* Implemented decoding of ustat syscall.
* Implemented decoding of BPF_OBJ_PIN, BPF_OBJ_GET, BPF_PROG_ATTACH,
and BPF_PROG_DETACH commands of bpf syscall.
* Enhanced decoding of sg_io_hdr and sg_io_v4 structures.
* Enhanced decoding of get_robust_list, getrandom, io_submit, set_robust_list
syscalls.
* Enhanced decoding of entities of kernel long type on x32 and mips n32 ABIs.
* Updated lists of IP_*, IPV6_*, and LOOP_* constants.
* Updated lists of ioctl commands from Linux 4.10.
* Added decoding of recently added syscalls on avr32, microblaze, ppc,
and ppc64.
* Bug fixes
* Fixed pathmatch of oldselect syscall on 64-bit architectures.
* Fixed decoding of mmap2 syscall on s390 when arguments are not available.
* Fixed decoding of kexec_file_load, mprotect, pkey_mprotect, prctl, preadv*,
and pwritev* syscalls on x32.
* Fixed printing of string arguments of getxattr and setxattr syscalls
when -s option is used to limit the printed string size.
* Fixed decoding of ifconf, ifreq, and loop_info structures on non-native
personalities.
* Fixed decoding of SG_* and LOOP_* ioctl commands.
* Fixed build on mips with musl libc.
* Fixed cross-building of ioctlsort.
* Applied minor formatting fixes to the manual page.
Noteworthy changes in release 4.15 (2016-12-14)
* Changes in behavior
* Time stamps are now printed according to ISO 8601.
* Changed output format of val3 parameter of futex FUTEX_WAKE_OP operation.
* The last argument of mincore, sched_getaffinity, and sched_setaffinity
syscalls is now formatted as an array.
* Improvements
* Implemented syscall fault injection (-e fault=... option).
* Implemented decoding of DM_* ioctl commands.
* Implemented decoding of attr parameter of perf_event_open syscall.
* Implemented decoding of pkey_alloc, pkey_free, and pkey_mprotect syscalls.
* Implemented dumping of mq_timedsend and mq_timedreceive syscalls.
* Implemented decoding of PR_SET_FP_MODE and PR_GET_FP_MODE operations
of prctl syscall.
* Implemented PTRACE_GETREGS API support on m68k.
* Updated lists of ARCH_*, BPF_*, BTRFS_*, FALLOC_*, MS_*, *_MAGIC,
and V4L2_* constants.
* Updated lists of ioctl commands from Linux 4.9.
* Added decoding of recently added syscalls on arc, x32, and xtensa.
* Enhanced manual page.
* Bug fixes
* Fixed corner cases in decoding of exit, exit_group, futimesat, getgroups,
getresuid, init_module, inotify_init1, kcmp, kexec_load, lookup_dcookie,
mq_getsetattr, mq_notify, mq_open, mq_timedreceive, mq_timedsend,
name_to_handle_at, prctl, process_vm_readv, process_vm_writev, setfsuid,
setgroups, setns, unshare, and utimes syscalls.
* Fixed handling of verbose flag in printing of controls array
of struct v4l2_ext_controls.
* Fixed omission of field names in the output of capability, sigaction,
sigevent, statfs, timespec, timeval, and utimbuf structures.
* Fixed printing of unknown syscalls in siginfo structure.
* Fixed decoding of ioctl constants on m68k.
* Fixed cris architecture support.
* Fixed cross build when host compiler does not support the same
set of warning flags as the cross compiler.
* Fixed build on SLE10 and SLE11.
Bug: N/A
Test: manual
Change-Id: I590bf5db1652aa1dfdc0eb16e30fd97c82af2261
diff --git a/mpers-m32/struct_v4l2_ext_controls.d2 b/mpers-m32/struct_v4l2_ext_controls.d2
new file mode 100644
index 0000000..5870f8d
--- /dev/null
+++ b/mpers-m32/struct_v4l2_ext_controls.d2
@@ -0,0 +1,334 @@
+<1><1d>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 1
+DW_AT_encoding : 6 (signed char)
+DW_AT_name : (indirect string, offset: 0x271): signed char
+<1><24>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 2
+DW_AT_encoding : 5 (signed)
+DW_AT_name : (indirect string, offset: 0x56): short int
+<1><2b>
+Abbrev Number: 3 (DW_TAG_base_type)
+DW_AT_byte_size : 4
+DW_AT_encoding : 5 (signed)
+DW_AT_name : int
+<1><32>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 8
+DW_AT_encoding : 5 (signed)
+DW_AT_name : (indirect string, offset: 0x245): long long int
+<1><39>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 1
+DW_AT_encoding : 8 (unsigned char)
+DW_AT_name : (indirect string, offset: 0xc5): unsigned char
+<1><40>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 2
+DW_AT_encoding : 7 (unsigned)
+DW_AT_name : (indirect string, offset: 0x43): short unsigned int
+<1><47>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 4
+DW_AT_encoding : 7 (unsigned)
+DW_AT_name : (indirect string, offset: 0x1a5): unsigned int
+<1><4e>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 8
+DW_AT_encoding : 7 (unsigned)
+DW_AT_name : (indirect string, offset: 0x94): long long unsigned int
+<1><55>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 4
+DW_AT_encoding : 5 (signed)
+DW_AT_name : (indirect string, offset: 0x25d): long int
+<1><5c>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 4
+DW_AT_encoding : 7 (unsigned)
+DW_AT_name : (indirect string, offset: 0xd3): long unsigned int
+<1><63>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 4
+DW_AT_encoding : 7 (unsigned)
+DW_AT_name : (indirect string, offset: 0x23c): sizetype
+<1><6a>
+Abbrev Number: 4 (DW_TAG_pointer_type)
+DW_AT_byte_size : 4
+DW_AT_type : <0x70>
+<1><70>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 1
+DW_AT_encoding : 6 (signed char)
+DW_AT_name : (indirect string, offset: 0x1fc): char
+<1><77>
+Abbrev Number: 4 (DW_TAG_pointer_type)
+DW_AT_byte_size : 4
+DW_AT_type : <0x7d>
+<1><7d>
+Abbrev Number: 5 (DW_TAG_const_type)
+DW_AT_type : <0x70>
+<1><82>
+Abbrev Number: 6 (DW_TAG_structure_type)
+DW_AT_name : (indirect string, offset: 0xe5): sysent
+DW_AT_byte_size : 20
+DW_AT_decl_file : 1
+DW_AT_decl_line : 4
+DW_AT_sibling : <0xd5>
+<2><8e>
+Abbrev Number: 7 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x13c): nargs
+DW_AT_decl_file : 1
+DW_AT_decl_line : 5
+DW_AT_type : <0x47>
+DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst: 0)
+<2><9c>
+Abbrev Number: 7 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x8a): sys_flags
+DW_AT_decl_file : 1
+DW_AT_decl_line : 6
+DW_AT_type : <0x2b>
+DW_AT_data_member_location: 2 byte block: 23 4 (DW_OP_plus_uconst: 4)
+<2><aa>
+Abbrev Number: 8 (DW_TAG_member)
+DW_AT_name : sen
+DW_AT_decl_file : 1
+DW_AT_decl_line : 7
+DW_AT_type : <0x2b>
+DW_AT_data_member_location: 2 byte block: 23 8 (DW_OP_plus_uconst: 8)
+<2><b8>
+Abbrev Number: 7 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x282): sys_func
+DW_AT_decl_file : 1
+DW_AT_decl_line : 8
+DW_AT_type : <0xe0>
+DW_AT_data_member_location: 2 byte block: 23 c (DW_OP_plus_uconst: 12)
+<2><c6>
+Abbrev Number: 7 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x69): sys_name
+DW_AT_decl_file : 1
+DW_AT_decl_line : 9
+DW_AT_type : <0x77>
+DW_AT_data_member_location: 2 byte block: 23 10 (DW_OP_plus_uconst: 16)
+<1><d5>
+Abbrev Number: 9 (DW_TAG_subroutine_type)
+DW_AT_type : <0x2b>
+DW_AT_sibling : <0xe0>
+<2><de>
+Abbrev Number: 10 (DW_TAG_unspecified_parameters)
+<1><e0>
+Abbrev Number: 4 (DW_TAG_pointer_type)
+DW_AT_byte_size : 4
+DW_AT_type : <0xd5>
+<1><e6>
+Abbrev Number: 11 (DW_TAG_typedef)
+DW_AT_name : (indirect string, offset: 0x1c9): struct_sysent
+DW_AT_decl_file : 1
+DW_AT_decl_line : 10
+DW_AT_type : <0x82>
+<1><f1>
+Abbrev Number: 4 (DW_TAG_pointer_type)
+DW_AT_byte_size : 4
+DW_AT_type : <0xf7>
+<1><f7>
+Abbrev Number: 5 (DW_TAG_const_type)
+DW_AT_type : <0xe6>
+<1><fc>
+Abbrev Number: 2 (DW_TAG_base_type)
+DW_AT_byte_size : 1
+DW_AT_encoding : 2 (boolean)
+DW_AT_name : (indirect string, offset: 0x1a): _Bool
+<1><103>
+Abbrev Number: 11 (DW_TAG_typedef)
+DW_AT_name : (indirect string, offset: 0x105): __s32
+DW_AT_decl_file : 2
+DW_AT_decl_line : 25
+DW_AT_type : <0x2b>
+<1><10e>
+Abbrev Number: 11 (DW_TAG_typedef)
+DW_AT_name : (indirect string, offset: 0x20): __u32
+DW_AT_decl_file : 2
+DW_AT_decl_line : 26
+DW_AT_type : <0x47>
+<1><119>
+Abbrev Number: 11 (DW_TAG_typedef)
+DW_AT_name : (indirect string, offset: 0x28b): __s64
+DW_AT_decl_file : 2
+DW_AT_decl_line : 29
+DW_AT_type : <0x32>
+<1><124>
+Abbrev Number: 12 (DW_TAG_enumeration_type)
+DW_AT_name : (indirect string, offset: 0x18a): v4l2_preemphasis
+DW_AT_byte_size : 4
+DW_AT_decl_file : 6
+DW_AT_decl_line : 763
+DW_AT_sibling : <0x144>
+<2><131>
+Abbrev Number: 13 (DW_TAG_enumerator)
+DW_AT_name : (indirect string, offset: 0x0): V4L2_PREEMPHASIS_DISABLED
+DW_AT_const_value : 0
+<2><137>
+Abbrev Number: 13 (DW_TAG_enumerator)
+DW_AT_name : (indirect string, offset: 0x1b2): V4L2_PREEMPHASIS_50_uS
+DW_AT_const_value : 1
+<2><13d>
+Abbrev Number: 13 (DW_TAG_enumerator)
+DW_AT_name : (indirect string, offset: 0x11c): V4L2_PREEMPHASIS_75_uS
+DW_AT_const_value : 2
+<1><144>
+Abbrev Number: 14 (DW_TAG_array_type)
+DW_AT_type : <0x10e>
+DW_AT_sibling : <0x154>
+<2><14d>
+Abbrev Number: 15 (DW_TAG_subrange_type)
+DW_AT_type : <0x63>
+DW_AT_upper_bound : 1
+<1><154>
+Abbrev Number: 16 (DW_TAG_union_type)
+DW_AT_byte_size : 8
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1225
+DW_AT_sibling : <0x182>
+<2><15d>
+Abbrev Number: 17 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x26): value
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1226
+DW_AT_type : <0x103>
+<2><169>
+Abbrev Number: 17 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0xbd): value64
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1227
+DW_AT_type : <0x119>
+<2><175>
+Abbrev Number: 17 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x72): string
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1228
+DW_AT_type : <0x6a>
+<1><182>
+Abbrev Number: 18 (DW_TAG_structure_type)
+DW_AT_name : (indirect string, offset: 0x32): v4l2_ext_control
+DW_AT_byte_size : 20
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1221
+DW_AT_sibling : <0x1c4>
+<2><18f>
+Abbrev Number: 19 (DW_TAG_member)
+DW_AT_name : id
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1222
+DW_AT_type : <0x10e>
+DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst: 0)
+<2><19d>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x27d): size
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1223
+DW_AT_type : <0x10e>
+DW_AT_data_member_location: 2 byte block: 23 4 (DW_OP_plus_uconst: 4)
+<2><1ac>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x253): reserved2
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1224
+DW_AT_type : <0x1c4>
+DW_AT_data_member_location: 2 byte block: 23 8 (DW_OP_plus_uconst: 8)
+<2><1bb>
+Abbrev Number: 21 (DW_TAG_member)
+DW_AT_type : <0x154>
+DW_AT_data_member_location: 2 byte block: 23 c (DW_OP_plus_uconst: 12)
+<1><1c4>
+Abbrev Number: 14 (DW_TAG_array_type)
+DW_AT_type : <0x10e>
+DW_AT_sibling : <0x1d4>
+<2><1cd>
+Abbrev Number: 15 (DW_TAG_subrange_type)
+DW_AT_type : <0x63>
+DW_AT_upper_bound : 0
+<1><1d4>
+Abbrev Number: 18 (DW_TAG_structure_type)
+DW_AT_name : (indirect string, offset: 0xab): v4l2_ext_controls
+DW_AT_byte_size : 24
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1232
+DW_AT_sibling : <0x22d>
+<2><1e1>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x266): ctrl_class
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1233
+DW_AT_type : <0x10e>
+DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst: 0)
+<2><1f0>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x2c): count
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1234
+DW_AT_type : <0x10e>
+DW_AT_data_member_location: 2 byte block: 23 4 (DW_OP_plus_uconst: 4)
+<2><1ff>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x19b): error_idx
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1235
+DW_AT_type : <0x10e>
+DW_AT_data_member_location: 2 byte block: 23 8 (DW_OP_plus_uconst: 8)
+<2><20e>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x133): reserved
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1236
+DW_AT_type : <0x144>
+DW_AT_data_member_location: 2 byte block: 23 c (DW_OP_plus_uconst: 12)
+<2><21d>
+Abbrev Number: 20 (DW_TAG_member)
+DW_AT_name : (indirect string, offset: 0x60): controls
+DW_AT_decl_file : 3
+DW_AT_decl_line : 1237
+DW_AT_type : <0x22d>
+DW_AT_data_member_location: 2 byte block: 23 14 (DW_OP_plus_uconst: 20)
+<1><22d>
+Abbrev Number: 4 (DW_TAG_pointer_type)
+DW_AT_byte_size : 4
+DW_AT_type : <0x182>
+<1><233>
+Abbrev Number: 11 (DW_TAG_typedef)
+DW_AT_name : (indirect string, offset: 0xec): struct_v4l2_ext_controls
+DW_AT_decl_file : 4
+DW_AT_decl_line : 41
+DW_AT_type : <0x1d4>
+<1><23e>
+Abbrev Number: 22 (DW_TAG_variable)
+DW_AT_name : (indirect string, offset: 0x10b): current_wordsize
+DW_AT_decl_file : 5
+DW_AT_decl_line : 757
+DW_AT_type : <0x47>
+DW_AT_external : 1
+DW_AT_declaration : 1
+<1><24c>
+Abbrev Number: 22 (DW_TAG_variable)
+DW_AT_name : (indirect string, offset: 0xe5): sysent
+DW_AT_decl_file : 5
+DW_AT_decl_line : 892
+DW_AT_type : <0xf1>
+DW_AT_external : 1
+DW_AT_declaration : 1
+<1><25a>
+Abbrev Number: 22 (DW_TAG_variable)
+DW_AT_name : (indirect string, offset: 0x232): nsyscalls
+DW_AT_decl_file : 5
+DW_AT_decl_line : 903
+DW_AT_type : <0x47>
+DW_AT_external : 1
+DW_AT_declaration : 1
+<1><268>
+Abbrev Number: 23 (DW_TAG_variable)
+DW_AT_name : (indirect string, offset: 0x79): mpers_target_var
+DW_AT_decl_file : 4
+DW_AT_decl_line : 47
+DW_AT_type : <0x233>
+DW_AT_external : 1
+DW_AT_location : 5 byte block: 3 4 0 0 0 (DW_OP_addr: 4)