2024-09-15  Dmitry V. Levin  <ldv@strace.io>

	Prepare for 6.11 release.
	* NEWS: Update for 6.11 release.

	Update copyright headers.
	Headers updated automatically using maint/update_copyright_years.sh
	script.

2024-09-15  tstabrawa  <59430211+tstabrawa@users.noreply.github.com>
	    Dmitry V. Levin  <ldv@strace.io>

	ioctl: print arg buffer for unknown ioctls in hexadecimal format.
	Limit this feature to non-abbreviated mode for now.

	* ioctl.c (ioctl_decode_unknown_type): New function.
	(ioctl_decode): Use it.
	* tests/ioctl-v.c: New file.
	* tests/gen_tests.in (ioctl-v): New entry.
	* tests/pure_executables.list: Add ioctl-v.
	* tests/.gitignore: Likewise.
	* NEWS: Mention this change.

2024-09-12  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests/linkat: replace unconfined_t with user_home_t.
	The latter has more chances to be successful, it seems.

	* tests/linkat.c (main): Replace "unconfined_t" with "user_home_t".

2024-09-12  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: avoid linkat--secontext_mismatch failures on setfilecon errors.
	linkat--secontext_mismatch can fail if setfilecon cannot update SELinux
	context (for example, that happens when the test is run under
	an unprivileged user and tries to change the type to unconfined_t).
	Avoid it by actually checking the return code and skipping the test
	if there are errors reported by reset_secontext_file
	or update_secontext_field calls.

	* tests/secontext.h: Include <errno.h>.
	(reset_secontext_file, update_secontext_field): Change the return type
	from void to int.
	[!(TEST_SECONTEXT && HAVE_SELINUX_RUNTIME)] (reset_secontext_file,
	update_secontext_field): Return -ENOSYS.
	* tests/secontext.c: (reset_secontext_file): Change the return type
	to int;  save the setfilecon return value to ret and reset it to -errno
	if the latter is non-zero;  return ret.
	(update_secontext_field): Change the return type to int;  return -1
	if ctx is NULL;  save the setfilecon return value to ret and reset
	it to -errno if the latter is non-zero;  return ret.
	* tests/linkat.c: Include "xlat.h".
	(secontext_types_data, secontext_types): New constants.
	(mangle_secontext_field): Store the new field value in the new variable;
	store the update_secontext_field return value to the ret variable, error
	and skip if it is non-zero.
	(main): Error and skip if reset_secontext_file returns non-zero.

	Reported-by: Edjunior Machado <emachado@redhat.com>

2024-09-12  Sahil Siddiq  <icegambit91@gmail.com>

	tests: Improve tests for watchdog ioctl commands.
	Add new tests for WDIOC_GETSUPPORT and WDIOC_SETOPTIONS decoders.
	Also enhance tests for currently available watchdog ioctl decoders.
	This enables the verification of their behaviour when:
	- the ioctl is successful (returns a non-negative integer);
	- strace is run with the -v option.

	* tests/ioctl_watchdog-success.c: New file.
	* tests/ioctl_watchdog-success-v.c: Likewise.
	* tests/ioctl_watchdog.c: (do_ioctl, do_ioctl_ptr): New functions.
	(main): Add argc and argv arguments.
	(WDIOC_GETSUPPORT, WDIOC_SETOPTIONS): Add decoder tests.
	(WDIOC_GET*): Improve existing decoder tests.
	* tests/gen_tests.in (ioctl_watchdog-success, ioctl_watchdog-success-v):
	New entries.
	* tests/Makefile.am (check_PROGRAMS): Add ioctl_watchdog-success and
	ioctl_watchdog-success-v.
	* tests/.gitignore: Likewise.

	Reviewed-by: Eugene Syromyatnikov <evgsyr@gmail.com>

2024-09-12  Sahil Siddiq  <icegambit91@gmail.com>

	watchdog_ioctl: Add decoding of WDIOC_GETSUPPORT and WDIOC_SETOPTIONS ioctls
	* src/xlat/watchdog_ioctl_cmds.in (WDIOC_GETSUPPORT): New constant.
	* src/xlat/watchdog_ioctl_flags.in: New file.
	* src/xlat/watchdog_ioctl_setoptions.in: Likewise.
	* src/watchdog_ioctl.c: Include "xlat/watchdog_ioctl_flags.h" and
	"xlat/watchdog_ioctl_setoptions.h".
	(watchdog_ioctl): Decode WDIOC_GETSUPPORT and WDIOC_SETOPTIONS.
	* NEWS: Mention this change.

	Reviewed-by: Eugene Syromyatnikov <evgsyr@gmail.com>

2024-09-09  Gleb Fotengauer-Malinovskiy  <glebfm@altlinux.org>

	Update ioctl entries from linux v6.11.
	* src/linux/32/ioctls_inc_align16.h: Update from linux v6.11-rc7 using
	ioctls_gen.sh.
	* src/linux/32/ioctls_inc_align32.h: Likewise.
	* src/linux/32/ioctls_inc_align64.h: Likewise.
	* src/linux/64/ioctls_inc.h: Likewise.
	* src/linux/x32/ioctls_inc0.h: Likewise.
	* src/linux/aarch64/ioctls_arch0.h: Likewise.
	* src/linux/i386/ioctls_arch0.h: Likewise.
	* src/linux/mips/ioctls_arch0.h: Likewise.
	* src/linux/powerpc/ioctls_arch0.h: Likewise.
	* src/linux/s390/ioctls_arch0.h: Likewise.
	* src/linux/s390x/ioctls_arch0.h: Likewise.
	* src/linux/x86_64/ioctls_arch0.h: Likewise.
	* NEWS: Mention this.

	maint: update for linux v6.11-rc7.
	* maint/ioctls_sym.sh: Add a workaround for the
	drm/xe_drm.h header.

2024-08-13  Eugene Syromyatnikov  <evgsyr@gmail.com>

	sg_io_v[34]: avoid copying of uninitialised memory.
	Static analysis complains about copying uninitialised memory:

	    Error: UNINIT (CWE-457):
	    src/sg_io_v3.c: 90 in decode_request()
	    84     	if (sg_io.dxfer_direction == SG_DXFER_TO_DEV ||
	    85     	    sg_io.dxfer_direction == SG_DXFER_TO_FROM_DEV) {
	    86     		tprint_struct_next();
	    87     		PRINT_FIELD_SG_IO_BUFFER(sg_io, dxferp, sg_io.dxfer_len, sg_io.iovec_count, tcp);
	    88     	}
	    89
	    >>>     Using uninitialized value "sg_io". Field "sg_io.interface_id" is uninitialized when calling "xmemdup".
	    90     	struct_sg_io_hdr *entering_sg_io = xobjdup(&sg_io);
	    91     	entering_sg_io->interface_id = (unsigned char) 'S';
	    92     	set_tcb_priv_data(tcp, entering_sg_io, free);
	    93
	    94     	return 0;
	    95     }

	    Error: UNINIT (CWE-457):
	    src/sg_io_v4.c: 87 in decode_request()
	    81     	PRINT_FIELD_U(sg_io, timeout);
	    82     	tprint_struct_next();
	    83     	PRINT_FIELD_FLAGS(sg_io, flags, bsg_flags, "BSG_FLAG_???");
	    84     	tprint_struct_next();
	    85     	PRINT_FIELD_X(sg_io, usr_ptr);
	    86
	    >>>     Using uninitialized value "sg_io". Field "sg_io.guard" is uninitialized when calling "xmemdup".
	    87     	struct sg_io_v4 *entering_sg_io = xobjdup(&sg_io);
	    88     	entering_sg_io->guard = (unsigned char) 'Q';
	    89     	set_tcb_priv_data(tcp, entering_sg_io, free);
	    90
	    91     	return 0;
	    92     }

	Avoid this by initialising the field in the src before copying it
	and not in dst after.

	* src/sg_io_v3.c (decode_request): Initialise interface_id field in sg_io
	and not entering_sg_io.
	* src/sg_io_v4.c (decode_request): Initialise guard field in sg_io
	and not entering_sg_io.

2024-08-06  Dmitry V. Levin  <ldv@strace.io>

	Implement decoding of uretprobe syscall.
	This new syscall was introduced by Linux kernel commits
	v6.11-rc1~136^2~14 and v6.11-rc2~22^2~1.

	* src/linux/x86_64/syscallent.h [335]: Wire up uretprobe.
	* src/syscall_dummy.h (sys_uretprobe): Alias to printargs.
	* NEWS: Mention this change.

2024-07-31  Dmitry V. Levin  <ldv@strace.io>

	xlat: update V4L2_* constants.
	* src/xlat/v4l2_control_ids.in (V4L2_CID_MPEG_VIDEO_AVERAGE_QP): New
	constant introduced by Linux kernel commit v6.11-rc1~142^2~140.
	* NEWS: Mention this change.

	Update decoding of statx syscall.
	* src/xlat/statx_attrs.in (STATX_ATTR_WRITE_ATOMIC): New constant
	introduced by Linux kernel commit v6.11-rc1~80^2~60.
	* src/xlat/statx_masks.in (STATX_WRITE_ATOMIC): Likewise.
	* src/statx.h (struct_statx): Add stx_atomic_write_unit_min,
	stx_atomic_write_unit_max, and stx_atomic_write_segments_max fields.
	Update reserved space.
	* src/statx.c (SYS_FUNC(statx)): Print new members of struct statx
	when STATX_ATTR_WRITE_ATOMIC attribute is set.
	* tests/xstatx.c (print_stat, main): Check it.
	* NEWS: Mention this change.

	xlat: update IPPROTO_* constants.
	* src/xlat/inet_protocols.in (IPPROTO_SMC): New constant introduced
	by Linux kernel commit v6.11-rc1~163^2~192^2.
	* tests/nlattr_inet_diag_req_v2.c (test_inet_diag_proto): Check it.
	* NEWS: Mention this change.

	xlat: update RWF_* constants.
	* src/xlat/rwf_flags.in (RWF_ATOMIC): New constant introduced
	by Linux kernel commit v6.11-rc1~80^2~61.
	* NEWS: Mention this change.

	xlat: update ETHTOOL_MSG_* constants.
	* src/xlat/genl_ethtool_msg_recv.in (ETHTOOL_MSG_MODULE_FW_FLASH_NTF):
	New constant introduced by Linux kernel commit v6.11-rc1~163^2~123^2~6.
	* src/xlat/genl_ethtool_msg_send.in (ETHTOOL_MSG_MODULE_FW_FLASH_ACT):
	Likewise.
	* tests/netlink_nlctrl.c (test_nla_ops_family): Check it.
	* NEWS: Mention this change.

2024-07-30  Dmitry V. Levin  <ldv@strace.io>

	statmount: print fields of struct statmount according to its mask field.
	* src/statmount.c (print_statmount): Consult with struct statmount.mask
	to decide which fields of struct statmount have to be printed.
	* tests/statmount.c (main): Check it.

	Update decoding of statmount syscall.
	* src/xlat/statmount_mask.in (STATMOUNT_MNT_NS_ID): New constant
	introduced by Linux kernel commit v6.11-rc1~236^2~6^2~4.
	(STATMOUNT_MNT_OPTS): New constant introduced by Linux kernel commit
	v6.11-rc1~236^2~4^2~1.
	* src/statmount.c (print_statmount): Print new mnt_opts and mnt_ns_id
	members of struct statmount.
	* tests/statmount.c (main): Check it.
	* NEWS: Mention this change.

	Update decoding of listmount syscall.
	* src/xlat/listmount_flags.in: New file containing LISTMOUNT_REVERSE
	constant introduced by Linux kernel commit v6.11-rc1~236^2~7.
	* src/listmount.c: Include "xlat/listmount_flags.h".
	(SYS_FUNC(listmount)): Print flag argument as flags.
	* tests/listmount.c (main): Check it.
	* NEWS: Mention this change.

	Update decoding of struct mnt_id_req.
	* bundled/linux/include/uapi/linux/mount.h: Update to
	headers_install'ed Linux kernel v6.11-rc1.
	* src/listmount.c (print_mnt_id_req): Print new mnt_ns_id member
	of struct mnt_id_req introduced by Linux kernel commit
	v6.11-rc1~236^2~6^2~3.
	* src/statmount.c (print_mnt_id_req): Likewise.
	* tests/listmount.c (main): Check it.
	* tests/statmount.c (main): Likewise.

2024-07-29  Dmitry V. Levin  <ldv@strace.io>

	xlat: update IORING_* constants.
	* bundled/linux/include/uapi/linux/io_uring.h: Update to
	headers_install'ed Linux kernel v6.11-rc1.
	* src/xlat/uring_ops.in (IORING_OP_BIND): New constant introduced
	by Linux kernel commit v6.11-rc1~232^2~17.
	(IORING_OP_LISTEN): New constant introduced by Linux kernel commit
	v6.11-rc1~232^2~16.
	* tests/io_uring_register.c (main): Update expected output.
	* NEWS: Mention this change.

2024-07-29  Dmitry V. Levin  <ldv@strace.io>

	bundled: update linux UAPI headers to v6.11-rc1.
	The update of linux/io_uring.h is delayed because it has to be updated
	along with the decoder of io_uring_register syscall.

	The update of linux/mount.h is delayed because it has to be updated
	along with the decoders of listmount and statmount syscalls.

	* bundled/linux/include/uapi/linux/btrfs_tree.h: Update to
	headers_install'ed Linux kernel v6.11-rc1.
	* bundled/linux/include/uapi/linux/ethtool.h: Likewise.
	* bundled/linux/include/uapi/linux/ethtool_netlink.h: Likewise.
	* bundled/linux/include/uapi/linux/fs.h: Likewise.
	* bundled/linux/include/uapi/linux/if_xdp.h: Likewise.
	* bundled/linux/include/uapi/linux/in.h: Likewise.
	* bundled/linux/include/uapi/linux/landlock.h: Likewise.
	* bundled/linux/include/uapi/linux/netfilter/nf_tables.h: Likewise.
	* bundled/linux/include/uapi/linux/nl80211.h: Likewise.
	* bundled/linux/include/uapi/linux/nsfs.h: Likewise.
	* bundled/linux/include/uapi/linux/perf_event.h: Likewise.
	* bundled/linux/include/uapi/linux/stat.h: Likewise.
	* bundled/linux/include/uapi/linux/tcp_metrics.h: Likewise.
	* bundled/linux/include/uapi/linux/v4l2-controls.h: Likewise.
	* bundled/linux/include/uapi/linux/version.h: Likewise.
	* bundled/linux/include/uapi/linux/videodev2.h: Likewise.

2024-07-28  Masatake YAMATO  <yamato@redhat.com>

	defs.h: fix a typo in a name of parameter.
	* src/defs.h (translate_pid): s/dest_id/from_id/.

2024-07-22  Dmitry V. Levin  <ldv@strace.io>

	Post-release administrivia.
	* NEWS: Add a header line for the next release.
	* debian/changelog.in: Add a changelog entry for 6.10-1.
	* strace.spec.in: Likewise.

2024-07-21  Dmitry V. Levin  <ldv@strace.io>

	Prepare for 6.10 release.
	* NEWS: Update for 6.10 release.

2024-07-19  Dmitry V. Levin  <ldv@strace.io>

	Update copyright headers.
	Headers updated automatically using maint/update_copyright_years.sh
	script.

2024-07-19  Jan Macku  <jamacku@redhat.com>

	ci: enable Packit rpm build test.
	Documentation: https://packit.dev/docs

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: PR_PPC_[GS]ET_DEXCR.
	Introduced by Linux commit v6.10-rc1~129^2~41.

	* src/xlat/pr_ppc_dexcr_aspects.in: New xlat.
	* src/xlat/pr_ppc_dexcr_ctrl_flags.in: Likewise.
	* src/prctl.c: Include "xlat/pr_ppc_dexcr_aspects.h"
	and "xlat/pr_ppc_dexcr_ctrl_flags.h".
	(SYS_FUNC(prctl)) <case PR_PPC_GET_DEXCR, case PR_PPC_SET_DEXCR>: New
	option decoders.
	* tests/.gitignore: Add prctl-ppc-dexcr, prctl-ppc-dexcr-Xabbrev,
	prctl-ppc-dexcr-Xraw, prctl-ppc-dexcr-Xverbose,
	prctl-ppc-dexcr-success, prctl-ppc-dexcr-success-Xabbrev,
	prctl-ppc-dexcr-success-Xraw,
	and prctl-ppc-dexcr-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add prctl-ppc-dexcr-success,
	prctl-ppc-dexcr-success-Xabbrev, prctl-ppc-dexcr-success-Xraw,
	and prctl-ppc-dexcr-success-Xverbose.
	* tests/pure_executables.list: Add prctl-ppc-dexcr,
	prctl-ppc-dexcr-Xabbrev, prctl-ppc-dexcr-Xraw,
	and prctl-ppc-dexcr-Xverbose.
	* tests/gen_tests.in (prctl-ppc-dexcr, prctl-ppc-dexcr-Xabbrev,
	prctl-ppc-dexcr-Xraw, prctl-ppc-dexcr-Xverbose,
	prctl-ppc-dexcr-success, prctl-ppc-dexcr-success-Xabbrev,
	prctl-ppc-dexcr-success-Xraw, prctl-ppc-dexcr-success-Xverbose):
	New tests.
	* tests/prctl-ppc-dexcr.c: New file.
	* tests/prctl-ppc-dexcr-Xabbrev.c: Likewise.
	* tests/prctl-ppc-dexcr-Xraw.c: Likewise.
	* tests/prctl-ppc-dexcr-Xverbose.c: Likewise.
	* tests/prctl-ppc-dexcr-success-Xabbrev.c: Likewise.
	* tests/prctl-ppc-dexcr-success-Xraw.c: Likewise.
	* tests/prctl-ppc-dexcr-success-Xverbose.c: Likewise.
	* tests/prctl-ppc-dexcr-success.c: Likewise.

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: PR_RISCV_SET_ICACHE_FLUSH_CTX.
	Implemented by Linux commit v6.10-rc1~52^2~7^2~2.

	* src/xlat/pr_riscv_icache_flush_ctxes.in: New xlat.
	* src/xlat/pr_riscv_icache_flush_scopes.in: Likewise.
	* src/prctl.c (SYS_FUNC(prctl)) <case PR_RISCV_SET_ICACHE_FLUSH_CTX>:
	New option decoder.
	* tests/.gitignore: Add prctl-riscv-icache-flush-ctx,
	prctl-riscv-icache-flush-ctx-Xabbrev, prctl-riscv-icache-flush-ctx-Xraw,
	and prctl-riscv-icache-flush-ctx-Xverbose.
	* tests/pure_executables.list: Likewise.
	* tests/gen_tests.in (prctl-riscv-icache-flush-ctx,
	prctl-riscv-icache-flush-ctx-Xabbrev, prctl-riscv-icache-flush-ctx-Xraw,
	prctl-riscv-icache-flush-ctx-Xverbose): New tests.
	* tests/tests.h (struct strval_klong): New type definition.
	* tests/prctl-riscv-icache-flush-ctx.c: New file.
	* tests/prctl-riscv-icache-flush-ctx-Xabbrev.c: Likewise.
	* tests/prctl-riscv-icache-flush-ctx-Xraw.c: Likewise.
	* tests/prctl-riscv-icache-flush-ctx-Xverbose.c: Likewise.

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: Implement PR_RISCV_V_[GS]ET_CONTROL option decoding.
	Introduced by Linux commit v6.5-rc1~120^2~17^2~6.

	* src/xlat/pr_riscv_v_inherit.in: New xlat.
	* src/xlat/pr_riscv_v_states.in: Likewise.
	* src/prctl.c: Include "xlat/pr_riscv_v_inherit.h"
	and "xlat/pr_riscv_v_states.h".
	(sprint_riscv_v_ctrl_val): New function.
	(SYS_FUNC(prctl)) <case PR_RISCV_V_SET_CONTROL,
	case PR_RISCV_V_GET_CONTROL>: Implement option decoders.
	* tests/.gitignore: Add prctl-riscv-v-ctrl, prctl-riscv-v-ctrl-Xabbrev,
	prctl-riscv-v-ctrl-Xraw, prctl-riscv-v-ctrl-Xverbose,
	prctl-riscv-v-ctrl-success, prctl-riscv-v-ctrl-success-Xabbrev,
	prctl-riscv-v-ctrl-success-Xraw,
	and prctl-riscv-v-ctrl-success-Xverbose.
	* tests/Makefile.am (check_PROGRAMS): Add prctl-riscv-v-ctrl-success,
	prctl-riscv-v-ctrl-success-Xabbrev, prctl-riscv-v-ctrl-success-Xraw,
	and prctl-riscv-v-ctrl-success-Xverbose.
	* tests/pure_executables.list: Add prctl-riscv-v-ctrl,
	prctl-riscv-v-ctrl-Xabbrev, prctl-riscv-v-ctrl-Xraw,
	and prctl-riscv-v-ctrl-Xverbose.
	* tests/gen_tests.in (prctl-riscv-v-ctrl, prctl-riscv-v-ctrl-Xabbrev,
	prctl-riscv-v-ctrl-Xraw, prctl-riscv-v-ctrl-Xverbose,
	prctl-riscv-v-ctrl-success, prctl-riscv-v-ctrl-success-Xabbrev,
	prctl-riscv-v-ctrl-success-Xraw, prctl-riscv-v-ctrl-success-Xverbose):
	New tests.
	* tests/prctl-riscv-v-ctrl.c: New file.
	* tests/prctl-riscv-v-ctrl-Xabbrev.c: Likewise.
	* tests/prctl-riscv-v-ctrl-Xraw.c: Likewise.
	* tests/prctl-riscv-v-ctrl-Xverbose.c: Likewise.
	* tests/prctl-riscv-v-ctrl-success-Xabbrev.c: Likewise.
	* tests/prctl-riscv-v-ctrl-success-Xraw.c: Likewise.
	* tests/prctl-riscv-v-ctrl-success-Xverbose.c: Likewise.
	* tests/prctl-riscv-v-ctrl-success.c: Likewise.
	* NEWS: Mention it.

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	prctl: organise the prctl option switch.
	It seems to be used to be kept in lexicographical order,
	but over the time the new options were added to various places,
	to the point it is not clear where to add it them now.   Let's put
	groups of common option handlers at the top (and the one
	that corresponds the default handling at the bottom), and sort the rest
	in the option number order, so the new options can be added at the end
	without a doubt.

	* src/prctl.c (SYS_FUNC(prctl)) <switch>: Reorder.

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	"Implement" PR_[GS]ET_MEMORY_MERGE prctl options.
	As the decoding of these options does not discernibly differ
	from the default case, this patch only adds the option names
	to the option decoding switch and adds the checks to the relevant test.

	* src/prctl.c (SYS_FUNC(prctl)) <case PR_SET_MEMORY_MERGE,
	case PR_GET_MEMORY_MERGE>: New switch cases.
	* tests/prctl-no-args.c (main) <options_checking>: Add
	PR_SET_MEMORY_MERGE and PR_GET_MEMORY_MERGE.

2024-07-17  Eugene Syromyatnikov  <evgsyr@gmail.com>

	tests: expand prctl-no-args test a bit.
	Amend the test with checking of prctl operations that don't have
	arguments with any decodable semantics, but perform argument checking
	for the sake of possible future expandability (thus prompting printing
	of those arguments by strace), as well as unknown operations (that have
	the same treatment).

	* prctl-no-args-Xabbrev.c: New file.
	* prctl-no-args-Xraw.c: Likewise.
	* prctl-no-args-Xverbose.c: Likewise.
	* prctl-no-args-success-Xabbrev.c: Likewise.
	* prctl-no-args-success-Xraw.c: Likewise.
	* prctl-no-args-success-Xverbose.c: Likewise.
	* prctl-no-args-success.c: Likewise.
	* .gitignore: Add prctl-no-args-Xabbrev, prctl-no-args-Xraw,
	prctl-no-args-Xverbose, prctl-no-args-success,
	prctl-no-args-success-Xabbrev, prctl-no-args-success-Xraw,
	and prctl-no-args-success-Xverbose.
	* Makefile.am (check_PROGRAMS): Add prctl-no-args-success,
	prctl-no-args-success-Xabbrev, prctl-no-args-success-Xraw,
	and prctl-no-args-success-Xverbose.
	* gen_tests.in (prctl-no-args-Xabbrev, prctl-no-args-Xraw,
	prctl-no-args-Xverbose, prctl-no-args-success,
	prctl-no-args-success-Xabbrev, prctl-no-args-success-Xraw,
	prctl-no-args-success-Xverbose): New tests.
	* pure_executables.list: Add prctl-no-args-Xabbrev, prctl-no-args-Xraw,
	and prctl-no-args-Xverbose.
	* prctl-no-args.c: Include <stdlib.h>.
	(INJ_STR): New macro.
	(main): Add argc and argv arguments.
	(main) <options> Change the type to static const struct strval32.
	(main) <options_checking, options_unknown>: New constants.
	(main) <rc>: Move the variable declaration outside the loop body.
	(main): Add the prctl inject boilerplate, checks for options that
	do not print arguments, and checks for options without decodable
	arguments that print them.

2024-07-17  Sergei Trofimovich  <slyich@gmail.com>

	print_utils.h: initialize `hex_chars` as an array, not via string.
	`gcc-15` added a new warning in https://gcc.gnu.org/PR115185:

	    print_utils.h:16:35: error: initializer-string for array of 'char' is too long [-Werror=unterminated-string-initialization]
	       16 | static const char hex_chars[16] = "0123456789abcdef";
	          |                                   ^~~~~~~~~~~~~~~~~~

	`strace` does not need to store '\0'. We could either initialize the
	arrays with individual bytes or allocate extra byte for null.

	This change initializes the array bytewise.

2024-07-17  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement family-specific CTRL_ATTR_OP_ID fallback.
	* src/netlink_nlctrl.c (family_names): Add fallback strings.
	(decode_nla_ctrl_attr_op_id): Choose dflt depending on the context.
	* tests/netlink_nlctrl.c (test_nla_ops_family): Check it.

	Suggested-by: Masatake YAMATO <yamato@redhat.com>

2024-07-16  Masatake YAMATO  <yamato@redhat.com>

	netlink_nlctrl: use nlmsg_type as a key for looking up a decoder.
	The original implementation uses a string of family as a key for
	looking up a decoder.  With caching the result of
	genl_families_xlat(tcp) in src/netlink_generic.c, we can use an
	integer (nlmsg_type) as a key.

	* src/netlink_generic.c (genl_decoders): New array moved from
	a function static array defined in lookup_genl_decoder().
	(initialize_genl_decoders): New function.
	(lookup_genl_decoder): Use uint16_t value as a key instead of
	a C string.
	(decode_netlink_generic): Call initialize_genl_decoders().
	Use nlmsg_type as a key for looking up the decoder.

2024-07-16  Masatake YAMATO  <yamato@redhat.com>

	xlat: add xrlookup, a reverse version of xlookup.
	This way one can obtain a key for a value from a xlat.

	* src/defs.h (xrlookup): New declaration.
	* src/xlat.c (xrlookup): New function.

2024-07-16  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement "thermal" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/thermal.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/thermal.h.
	* src/xlat/genl_thermal_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/thermal.h>
	and "xlat/genl_thermal_cmd.h".
	(family_names): Add THERMAL_GENL_FAMILY_NAME.
	* tests/netlink_nlctrl.c: Include <linux/thermal.h>.
	(test_nla_ops_family): Test THERMAL_GENL_FAMILY_NAME.

	netlink_nlctrl: implement "nl80211" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/nl80211.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/nl80211.h.
	* src/xlat/genl_nl80211_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/nl80211.h>
	and "xlat/genl_nl80211_cmd.h".
	(family_names): Add NL80211_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/nl80211.h>.
	(test_nla_ops_family): Test NL80211_GENL_NAME.

	netlink_nlctrl: implement "netdev" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/netdev.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/netdev.h.
	* src/xlat/genl_netdev_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/netdev.h>
	and "xlat/genl_netdev_cmd.h".
	(family_names): Add NETDEV_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/netdev.h>.
	(test_nla_ops_family): Test NETDEV_GENL_NAME.

2024-07-15  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement "tcp_metrics" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/tcp_metrics.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/tcp_metrics.h.
	* src/xlat/genl_tcp_metrics_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/tcp_metrics.h>
	and "xlat/genl_tcp_metrics_cmd.h".
	(family_names): Add TCP_METRICS_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/tcp_metrics.h>.
	(test_nla_ops_family): Test TCP_METRICS_GENL_NAME.

	netlink_nlctrl: implement "mptcp_pm" family CTRL_ATTR_OP_ID decoding.
	* src/xlat/genl_mptcp_pm_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/mptcp_pm.h>
	and "xlat/genl_mptcp_pm_cmd.h".
	(family_names): Add MPTCP_PM_NAME.
	* tests/netlink_nlctrl.c: Include <linux/mptcp_pm.h>.
	(test_nla_ops_family): Test MPTCP_PM_NAME.

	netlink_nlctrl: implement "TASKSTATS" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/cgroupstats.h: New file.
	* bundled/linux/include/uapi/linux/taskstats.h: Likewise.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/cgroupstats.h and
	linux/include/uapi/linux/taskstats.h.
	* src/xlat/genl_taskstats_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/cgroupstats.h>
	and "xlat/genl_taskstats_cmd.h".
	(family_names): Add TASKSTATS_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/cgroupstats.h>.
	(test_nla_ops_family): Test TASKSTATS_GENL_NAME.

	netlink_nlctrl: implement "SEG6" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/seg6_genl.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/seg6_genl.h.
	* src/xlat/genl_seg6_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/seg6_genl.h>
	and "xlat/genl_seg6_cmd.h".
	(family_names): Add SEG6_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/seg6_genl.h>.
	(test_nla_ops_family): Test SEG6_GENL_NAME.

	netlink_nlctrl: implement "IOAM6" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/ioam6_genl.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/ioam6_genl.h.
	* src/xlat/genl_ioam6_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/ioam6_genl.h>,
	and "xlat/genl_ioam6_cmd.h".
	(family_names): Add IOAM6_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/ioam6_genl.h>.
	(test_nla_ops_family): Test IOAM6_GENL_NAME.

2024-07-14  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement "ethtool" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/ethtool.h: New file.
	* bundled/linux/include/uapi/linux/ethtool_netlink.h: Likewise.
	* bundled/linux/include/uapi/linux/if_ether.h: Likewise.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/ethtool.h,
	linux/include/uapi/linux/ethtool_netlink.h, and
	linux/include/uapi/linux/if_ether.h.
	* src/xlat/genl_ethtool_msg_send.in: New file.
	* src/xlat/genl_ethtool_msg_recv.in: Likewise.
	* src/netlink_nlctrl.c: Include <linux/ethtool_netlink.h>,
	"xlat/genl_ethtool_msg_send.h", and "xlat/genl_ethtool_msg_recv.h".
	(family_names): Add ETHTOOL_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/ethtool_netlink.h>.
	(test_nla_ops_family): Test ETHTOOL_GENL_NAME.

	netlink_nlctrl: implement "devlink" family CTRL_ATTR_OP_ID decoding.
	* bundled/linux/include/uapi/linux/devlink.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/devlink.h.
	* src/xlat/genl_devlink_cmd.in: New file.
	* src/netlink_nlctrl.c: Include <linux/devlink.h>
	and "xlat/genl_devlink_cmd.h".
	(family_names): Add DEVLINK_GENL_NAME.
	* tests/netlink_nlctrl.c: Include <linux/devlink.h>.
	(test_nla_ops_family): New function.
	(main): Use it.

2024-07-13  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: hook up context-dependent CTRL_ATTR_OP_ID decoding.
	Unlike traditional netlink protocols, nlctrl uses CTRL_ATTR_FAMILY_NAME
	attribute to specify the type of subsequent CTRL_ATTR_OP_ID attributes.

	* src/netlink_nlctrl.c: (family_names): New array.
	(decode_nla_ctrl_attr_family_name): New function.
	(decode_nla_ctrl_attr_op_id): Choose xlat depending on the context.
	(decode_nlctrl): Use it.

2024-07-12  Dmitry V. Levin  <ldv@strace.io>

	nlattr: introduce decode_nlattr_notype.
	* src/nlattr.h (decode_nlattr_notype): New function, a thin wrapper
	around decode_nlattr.
	* src/nlattr.c (decode_nlattr_with_data): Extend with size == -1U with
	the meaning of size == 0 and the type is being passed via opaque_data.
	* src/netlink_nlctrl.c (decode_nla_ctrl_attr_ops,
	decode_nla_ctrl_attr_mcast_groups, decode_nla_ctrl_attr_policy_item,
	decode_nla_ctrl_attr_policy, decode_nla_ctrl_attr_op_policy): Use
	decode_nlattr_notype instead of decode_nlattr.

2024-07-11  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement CTRL_ATTR_POLICY decoding.
	* src/xlat/nl_attr_type.in: New file.
	* src/xlat/nl_policy_type_attr.in: Likewise.
	* src/netlink_nlctrl.c: Include "xlat/nl_attr_type.h"
	and "xlat/nl_policy_type_attr.h".
	(decode_nla_policy_type_attr_type, decode_nla_ctrl_attr_policy_attr,
	decode_nla_ctrl_attr_policy_item, decode_nla_ctrl_attr_policy):
	New functions.
	(ctrl_attr_decoders): Use decode_nla_ctrl_attr_policy.
	* tests/netlink_nlctrl.c (test_nla_policy): New function.
	(main): Use it.
	* NEWS: Mention NETLINK_GENERIC nlctrl protocol decoding.

2024-07-10  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement CTRL_ATTR_OP_POLICY decoding.
	* src/xlat/genl_ctrl_attr_policy.in: New file.
	* src/netlink_nlctrl.c: Include "xlat/genl_ctrl_attr_policy.h".
	(decode_nla_ctrl_attr_op_policy_item,
	decode_nla_ctrl_attr_op_policy): New functions.
	(decode_nlctrl): Use decode_nla_ctrl_attr_op_policy.
	* tests/netlink_nlctrl.c (test_nla_op_policy): New function.
	(main): Use it.

2024-07-09  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement CTRL_ATTR_MCAST_GROUPS decoding.
	* src/xlat/genl_ctrl_attr_mcast_grp.in: New file.
	* src/netlink_nlctrl.c: Include "xlat/genl_ctrl_attr_mcast_grp.h".
	(decode_nla_ctrl_attr_mcast_group_item,
	decode_nla_ctrl_attr_mcast_groups): New functions.
	(decode_nlctrl): Use decode_nla_ctrl_attr_mcast_groups.
	* tests/netlink_nlctrl.c (test_nla_mcast): New function.
	(main): Use it.

2024-07-08  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement CTRL_ATTR_OPS decoding.
	* src/xlat/genl_ctrl_attr_op.in: New file.
	* src/xlat/genl_ctrl_attr_op_flags.in: Likewise.
	* src/netlink_nlctrl.c: Include "xlat/genl_ctrl_attr_op.h"
	and "xlat/genl_ctrl_attr_op_flags.h".
	(decode_nla_ctrl_attr_op_id, decode_nla_ctrl_attr_op_flags,
	decode_nla_ctrl_attr_op_item, decode_nla_ctrl_attr_ops): New functions.
	(decode_nlctrl): Use decode_nla_ctrl_attr_ops.
	* tests/netlink_nlctrl.c (test_nla_ops): New function.
	(main): Use it.

2024-07-07  Dmitry V. Levin  <ldv@strace.io>

	nlattr: use DECL_NLA macro in definitions of decode_nla_* functions.

2024-07-06  Dmitry V. Levin  <ldv@strace.io>

	nlattr: remove "extern" storage class from DECL_NLA macro.
	This would allow to use DECL_NLA in function definitions.

	* src/nlattr.h (DECL_NLA): Remove "extern" storage class, add const
	qualifier to arguments.

2024-07-05  Dmitry V. Levin  <ldv@strace.io>

	nlattr: add const qualifier to decode_nla_{xval,flags} arguments.
	* src/nlattr.c (decode_nla_xval, decode_nla_flags): Add const
	qualifier to the "len" argument.

2024-07-04  Dmitry V. Levin  <ldv@strace.io>

	netlink_nlctrl: implement basic CTRL_ATTR_* decoding.
	* src/xlat/genl_ctrl_attr.in: New file.
	* src/netlink_nlctrl.c: Include "xlat/genl_ctrl_attr.h".
	(decode_nlctrl): Add a nla_decoder_t array and pass it to decode_nlattr.
	* tests/netlink_nlctrl.c (test_nla): Rename to test_nla_unknown.
	(test_nla_x16, test_nla_u32, test_nla_str): New functions.
	(main): Use them.

2024-07-03  Dmitry V. Levin  <ldv@strace.io>

	netlink_generic: hook up a nlctrl decoder.
	* src/netlink_nlctrl.c: New file.
	* src/Makefile.am (libstrace_a_SOURCES): Add netlink_nlctrl.c.
	* src/xlat/genl_ctrl_cmd.in: New file.
	* src/netlink_generic.h (decode_nlctrl): New prototype.
	* src/netlink_generic.c (netlink_generic_decoder_t): New type.
	(lookup_genl_decoder): New function.
	(decode_netlink_generic): Use it.
	* tests/netlink_nlctrl.c: Include "xmalloc.h", "test_netlink.h",
	and "test_nlattr.h".
	(test_nlmsg_type, test_sendmsg_nlmsg_type): Remove.
	(test_hdr, test_nla, test_nlmsg_done): New functions.
	(main): Use them.

	netlink: hook up a NETLINK_GENERIC decoder.
	* src/netlink_generic.h: New file.
	* src/netlink_generic.c: Likewise.
	* src/Makefile.am (libstrace_a_SOURCES): Add netlink_generic.c.
	* src/defs.h (decode_netlink_generic): New prototype.
	* src/netlink.c (netlink_decoders): Add NETLINK_GENERIC.
	* tests/netlink_nlctrl.c (test_nlmsg_type, test_sendmsg_nlmsg_type):
	Update expected output.
	* tests/netlink_generic.c: New file.
	* tests/gen_tests.in (netlink_generic): New test.
	* tests/pure_executables.list: Add netlink_generic.
	* tests/.gitignore: Likewise.

2024-07-03  Dmitry V. Levin  <ldv@strace.io>

	tests: rename netlink_generic to netlink_nlctrl.
	netlink_generic is going to be used later for generic genl tests.

	* tests/netlink_generic.c: Rename to netlink_nlctrl.c.
	* tests/pure_executables.list (netlink_generic): Rename to netlink_nlctrl.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in: Likewise.

2024-07-03  Dmitry V. Levin  <ldv@strace.io>

	bundled: add linux/genetlink.h.
	* bundled/linux/include/uapi/linux/genetlink.h: New file.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/genetlink.h.

	netlink: fix decoding of NETLINK_GENERIC nlmsg_flags.
	* src/xlat/netlink_genl_flags.in: New file.
	* src/netlink.c: Include "xlat/netlink_genl_flags.h".
	(decode_nlmsg_flags_generic): New function.
	(nlmsg_flags): Use it.
	* tests/netlink_generic.c (test_nlmsg_type, test_sendmsg_nlmsg_type):
	Update expected output.

2024-07-03  Gleb Fotengauer-Malinovskiy  <glebfm@altlinux.org>

	Update ioctl entries from linux v6.10.
	* src/linux/32/ioctls_inc_align16.h: Update from linux v6.10-rc7 using
	ioctls_gen.sh.
	* src/linux/32/ioctls_inc_align32.h: Likewise.
	* src/linux/32/ioctls_inc_align64.h: Likewise.
	* src/linux/64/ioctls_inc.h: Likewise.
	* src/linux/x32/ioctls_inc0.h: Likewise.
	* NEWS: Mention this.

2024-07-03  Brandon Maier  <brandon.maier@collins.com>
	    Dmitry V. Levin  <ldv@strace.io>

	strace-log-merge: enhance wording of error diagnostics.
	When running `strace-log-merge` on strace logs created without
	timestamps, it used to print a message "strace output not found"
	which sounds like it failed to find the log files.

	Given that `iterate_logfiles process_suffix` has checked the log files
	for existence already, the second error message can be more specific
	about the error condition.

	* src/strace-log-merge: Enhance wording of error diagnostics.
	* tests/strace-log-merge-error.test: Update expected output.

2024-07-03  Brandon Maier  <brandon.maier@collins.com>

	strace-log-merge: support '-h' option.
	Given that -h is a commonly recognized name for a help option, accept it
	as synonym of --help.

2024-07-02  Dmitry V. Levin  <ldv@strace.io>

	tests: update ioctl_v4l2 tests.
	* tests/ioctl_v4l2.c (main): Update the last known ioctl number to take
	into account VIDIOC_REMOVE_BUFS introduced by Linux kernel commit
	v6.10-rc1~135^2~302.

2024-07-01  Dmitry V. Levin  <ldv@strace.io>

	tests: fix prlimit64-success test.
	* tests/gen_tests.in (prlimit64-success): Call check_scno_tampering.
	Usual -einject= heuristic rules that are used in case of poke-sendfile
	test are not applicable here because they don't support QUIRK markers.

	tests: fix poke-sendfile test.
	* tests/gen_tests.in (poke-sendfile): Specify --inject= parameter first
	to make gen_tests.sh insert a scno_tampering.sh invocation.

2024-06-30  Sahil Siddiq  <icegambit91@gmail.com>
	    Dmitry V. Levin  <ldv@strace.io>

	tests: check --decode-fds=eventfd.
	* tests/eventfd-yy.c: New file.
	* tests/eventfd--decode-fd-eventfd.c: Likewise.
	* tests/.gitignore: Add eventfd-yy and eventfd--decode-fd-eventfd.
	* tests/pure_executables.list: Likewise.
	* tests/gen_tests.in (eventfd-yy, eventfd--decode-fd-eventfd): New tests.

2024-06-30  Sahil Siddiq  <icegambit91@gmail.com>
	    Dmitry V. Levin  <ldv@strace.io>

	Add eventfd option to --decode-fds.
	Having an eventfd option for --decode-fds will help examine details
	of an eventfd object associated with an eventfd file descriptor.

	* src/filter_qualify.c (decode_fd_str_to_uint): Add "eventfd" option.
	* src/number_set.h: Add DECODE_FD_EVENTFD.
	* src/util.c: Parse eventfd related details.
	* src/strace.c (usage): Document "eventfd" option.
	* doc/strace.1.in: Likewise.
	* NEWS: Mention this change.

2024-06-30  Sahil Siddiq  <icegambit91@gmail.com>
	    Dmitry V. Levin  <ldv@strace.io>

	Allow scanning of fdinfo fields in one pass.
	Implement constructs to scan /proc/<pid>/fdinfo/<fd> in one pass
	and track which fields are available for display.

	* src/util.c (struct scan_fdinfo): New struct.
	(scan_fdinfo_lines): Use it.
	(scan_fdinfo): Wrapper around scan_fdinfo_lines.

2024-06-26  Dmitry V. Levin  <ldv@strace.io>

	riscv64: work around a kernel bug in syscall number tampering.
	Linux kernel commit v6.5-rc7~13^2~5 introduced a regression:
	when tracer changes syscall number to -1, the kernel fails to initialize
	a0 with -ENOSYS and subsequently fails to return the error code of the
	failed syscall to userspace.  Workaround this by initializing a0
	ourselves.

	* src/linux/riscv64/arch_defs_.h
	(ARCH_NEEDS_SET_ERROR_FOR_SCNO_TAMPERING): Define to 1.
	* syscall.c (tamper_with_syscall_entering)
	[ARCH_NEEDS_SET_ERROR_FOR_SCNO_TAMPERING]: Remove outdated comment.
	* NEWS: Mention this.

2024-06-26  Dmitry V. Levin  <ldv@strace.io>

	Implement decoding of mseal syscall.
	This new syscall was introduced by Linux kernel commit v6.10-rc1~16^2~3.

	* src/linux/generic/syscallent-common.h [BASE_NR + 462]: Wire up mseal.
	* src/mem.c (SYS_FUNC(mseal)): New function.
	* tests/mseal.c: New file.
	* tests/pure_executables.list: Add mseal.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (mseal): New test.
	* NEWS: Mention this change.

2024-06-25  Dmitry V. Levin  <ldv@strace.io>

	statx: update decoding of struct statx.
	* src/statx.h (struct_statx): Add stx_subvol field, update reserved2
	field.
	* src/statx.c (SYS_FUNC(statx)): Print stx_subvol field when
	STATX_SUBVOL bit of stx_mask is set.
	* tests/xstatx.c (print_stat) [IS_STATX]: Update expected output.
	* NEWS: Mention this change.

	bpf: update decoding of BPF_RAW_TRACEPOINT_OPEN command.
	* src/bpf_attr.h (BPF_RAW_TRACEPOINT_OPEN_struct): Add cookie field
	introduced by Linux kernel commit v6.10-rc1~153^2~432^2~13^2~2.
	(expected_BPF_RAW_TRACEPOINT_OPEN_struct_size): Update.
	* src/bpf.c (BEGIN_BPF_CMD_DECODER(BPF_RAW_TRACEPOINT_OPEN)): Decode
	cookie field.
	* tests/bpf.c (BPF_RAW_TRACEPOINT_OPEN_checks): Check it.
	* NEWS: Mention this change.

2024-06-24  Dmitry V. Levin  <ldv@strace.io>

	xlat: update V4L2_* constants.
	* src/xlat/v4l2_format_description_flags.in
	(V4L2_FMT_FLAG_META_LINE_BASED): New constant introduced by Linux kernel
	commit v6.10-rc1~135^2~85.
	* src/xlat/v4l2_pix_fmts.in (V4L2_PIX_FMT_Y12P): New constant
	introduced by Linux kernel commit v6.10-rc1~135^2~76.
	(V4L2_PIX_FMT_Y14P): New constant introduced by Linux kernel
	commit v6.10-rc1~135^2~75.
	* tests/ioctl_v4l2-success.c (main): Update expected output.
	* NEWS: Mention this change.

	xlat: update TEE_* constants.
	* src/xlat/tee_ioctl_impl_ids.in (TEE_IMPL_ID_TSTEE): New constant
	introduced by Linux kernel commit v6.10-rc1~238^2~6^2~2.
	* NEWS: Mention this change.

2024-06-23  Dmitry V. Levin  <ldv@strace.io>

	xlat: update TCP_* constants.
	* src/xlat/sock_tcp_options.in (TCP_IS_MPTCP): New constant introduced
	by Linux kernel commit v6.10-rc1~153^2~21.
	* NEWS: Mention this change.

	xlat: update STATX_* constants.
	* src/xlat/statx_masks.in (STATX_SUBVOL): New constant introduced
	by Linux kernel commit v6.10-rc1~224^2~29.
	* tests/xstatx.c (main): Update expected output.
	* NEWS: Mention this change.

2024-06-22  Dmitry V. Levin  <ldv@strace.io>

	xlat: update PR_* constants.
	* src/xlat/prctl_options.in (PR_RISCV_SET_ICACHE_FLUSH_CTX): New
	constant introduced by Linux kernel commit v6.10-rc1~52^2~7^2~2.
	(PR_PPC_GET_DEXCR, PR_PPC_SET_DEXCR): New constants introduced
	by Linux kernel commit v6.10-rc1~129^2~41.
	* NEWS: Mention this change.

2024-06-21  Dmitry V. Levin  <ldv@strace.io>

	xlat: update *_MAGIC constants.
	* src/xlat/fsmagic.in (BCACHEFS_SUPER_MAGIC): New constant introduced
	by Linux kernel commit v6.10-rc1~99^2~18.
	* NEWS: Mention this change.

2024-06-20  Dmitry V. Levin  <ldv@strace.io>

	xlat: update LANDLOCK_ACCESS_FS_* constants.
	* src/xlat/landlock_ruleset_access_fs.in (LANDLOCK_ACCESS_FS_IOCTL_DEV):
	New constant introduced by Linux kernel commit v6.10-rc1~116^2~11.
	* tests/landlock_add_rule.c (main): Update expected output.
	* tests/landlock_create_ruleset.c: Likewise.
	* NEWS: Mention this change.

	xlat: update KEXEC_* constants.
	* src/xlat/kexec_load_flags.in (KEXEC_CRASH_HOTPLUG_SUPPORT):
	New constant introduced by Linux kernel commit v6.10-rc1~129^2~1^2~5.
	* tests/kexec_load.c (main): Update expected output.
	* NEWS: Mention this change.

2024-06-19  Dmitry V. Levin  <ldv@strace.io>

	xlat: update IORING_* constants.
	* src/xlat/uring_setup_features.in (IORING_FEAT_RECVSEND_BUNDLE): New
	constant introduced by Linux kernel commit v6.10-rc1~220^2~15.
	* NEWS: Mention this change.

	xlat: update KEY_* constants.
	* src/xlat/evdev_keycode.in (KEY_ACCESSIBILITY): New constant
	introduced by Linux kernel commit v6.10-rc3~5^2~6.
[--snip--]
