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

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

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

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

	bpf: implement decoding of BPF_TOKEN_CREATE command.
	* src/bpf_attr.h (BPF_TOKEN_CREATE_struct): New structure introduced
	by Linux commit v6.9-rc1~159^2~423^2~4^2~27.
	(BPF_TOKEN_CREATE_struct_size, expected_BPF_TOKEN_CREATE_struct_size):
	New macros.
	* src/bpf.c (BEGIN_BPF_CMD_DECODER(BPF_TOKEN_CREATE)): New function.
	(SYS_FUNC(bpf)) <bpf_cmd_decoders[]>: Use it.
	* tests/bpf.c (union bpf_attr_data): Add
	BPF_ATTR_DATA_FIELD(BPF_TOKEN_CREATE).
	(BPF_TOKEN_CREATE_checks): New checks array.
	(main) <checks>: Add CHK(BPF_TOKEN_CREATE).
	* NEWS: Mention this change.

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

	xlat: update BPF_* constants.
	* src/xlat/bpf_commands.in (BPF_TOKEN_CREATE): New constant introduced
	by Linux kernel commit v6.9-rc1~159^2~423^2~4^2~27.
	* src/xlat/bpf_file_flags.in (BPF_F_VTYPE_BTF_OBJ_FD): New constant
	introduced by Linux kernel commit v6.9-rc1~159^2~423^2~10^2~6.
	(BPF_F_TOKEN_FD): New constant introduced by Linux kernel commit
	v6.9-rc1~159^2~423^2~4^2~26.
	(BPF_F_SEGV_ON_FAULT, BPF_F_NO_USER_CONV): New constants introduced
	by Linux kernel commit v6.9-rc1~159^2~2^2~3^2~13.
	* src/xlat/bpf_map_types.in (BPF_MAP_TYPE_ARENA): Likewise.
	* src/xlat/bpf_op_jmp.in (BPF_JCOND): New constant introduced
	by Linux kernel commit v6.9-rc1~159^2~2^2~11^2~3.
	* tests/bpf.c: Check it.
	* NEWS: Mention this change.

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

	io_uring: implement decoding of IORING_REGISTER_USE_REGISTERED_RING opcode flag
	This io_uring_register opcode flag was introduced by Linux kernel commit
	v6.3-rc1~209^2.

	* src/xlat/uring_register_opcode_flags.in: New file.
	* src/io_uring.c: Include "xlat/uring_register_opcode_flags.h".
	(print_io_uring_register_opcode): New function.
	(SYS_FUNC(io_uring_register)): Use it to print opcodes.
	* tests/io_uring_register.c (main): Check it.
	* NEWS: Mention this change.

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

	io_uring: implement decoding of IORING_{UN,}REGISTER_NAPI opcodes.
	This io_uring_register opcode was introduced by Linux kernel commit
	v6.9-rc1~215^2~26.

	* src/io_uring.c (print_io_uring_napi, print_ioring_register_napi,
	print_ioring_unregister_napi): New functions.
	(SYS_FUNC(io_uring_register)): Use them to decode
	IORING_REGISTER_NAPI and IORING_UNREGISTER_NAPI opcodes.
	* tests/io_uring_register.c (main): Check it.
	* NEWS: Mention this change.

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

	io_uring: implement decoding of IORING_REGISTER_PBUF_STATUS opcode.
	This io_uring_register opcode was introduced by Linux kernel commit
	v6.8-rc1~29^2~8.

	* src/io_uring.c (print_io_uring_buf_status): New function.
	(SYS_FUNC(io_uring_register)): Use it to decode
	IORING_REGISTER_PBUF_STATUS opcode.
	* tests/io_uring_register.c (main): Check it.
	* NEWS: Mention this change.

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

	io_uring: implement decoding of IORING_REGISTER_FILE_ALLOC_RANGE opcode.
	This io_uring_register opcode was introduced by Linux kernel commit
	v6.0-rc1~181^2~31.

	* src/io_uring.c (print_io_uring_file_index_range): New function.
	(SYS_FUNC(io_uring_register)): Use it to decode
	IORING_REGISTER_FILE_ALLOC_RANGE opcode.
	* tests/io_uring_register.c (main): Check it.
	* NEWS: Mention this change.

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

	tests/io_uring_register.c: constify tail allocations.
	* tests/io_uring_register.c (main): Add const qualifier to all pointers
	to memory allocated using tail_alloc() family functions.

	tests: use TAIL_ALLOC_OBJECT_VAR_ARR where appropriate.
	* tests/pwritev.c (main): Use TAIL_ALLOC_OBJECT_VAR_ARR().

	tests: use TAIL_ALLOC_OBJECT_CONST_ARR where appropriate.
	* tests/aio.c (main): Use TAIL_ALLOC_OBJECT_CONST_ARR().
	* tests/aio_pgetevents.c (main): Likewise.
	* tests/bpf-obj_get_info_by_fd.c (main): Likewise.
	* tests/caps.c (main): Likewise.
	* tests/clone3.c (main): Likewise.
	* tests/futex_requeue.c (main): Likewise.
	* tests/futex_waitv.c (main): Likewise.
	* tests/futimesat.c (main): Likewise.
	* tests/get_mempolicy.c (print_nodes): Likewise.
	* tests/getgroups.c (main): Likewise.
	* tests/io_uring_register.c (main): Likewise.
	* tests/ioctl_block.c (main): Likewise.
	* tests/ioctl_evdev.c (main): Likewise.
	* tests/ioctl_kd.c (check_unimap, check_uniscrnmap): Likewise.
	* tests/ioctl_perf-success.c (main): Likewise.
	* tests/ioctl_perf.c (main): Likewise.
	* tests/ioctl_sock_gifconf.c (gifconf_ioctl): Likewise.
	* tests/keyctl.c (main): Likewise.
	* tests/mmsg_name.c (test_mmsg_name): Likewise.
	* tests/mq_sendrecv.c (main): Likewise.
	* tests/oldselect-efault.c (main): Likewise.
	* tests/pipe.c (main): Likewise.
	* tests/pipe2.c (main): Likewise.
	* tests/prlimit64.c (main): Likewise.
	* tests/process_madvise.c (main): Likewise.
	* tests/ptrace.c (test_peeksiginfo): Likewise.
	* tests/seccomp-filter-v.c (main): Likewise.
	* tests/seccomp-filter.c (main): Likewise.
	* tests/seccomp_get_notif_sizes.c (main): Likewise.
	* tests/setgroups.c (main): Likewise.
	* tests/setrlimit.c (main): Likewise.
	* tests/socketcall.c (main): Likewise.
	* tests/umovestr_cached.c (main): Likewise.
	* tests/umovestr_cached_adjacent.c (main): Likewise.
	* tests/utimensat.c (main): Likewise.
	* tests/xgetrlimit.c (main): Likewise.
	* tests/xutimes.c (main): Likewise.

	tests: use TAIL_ALLOC_OBJECT_CONST_PTR where appropriate.
	* tests/io_uring_register.c (main): Use TAIL_ALLOC_OBJECT_CONST_PTR().
	* tests/ioctl_gpio.c (test_print_gpioline_info_unwatch): Likewise.
	* tests/ioctl_kd.c (check_kbdent, check_diacr, check_unimap,
	check_fontx, check_diacruc, main): Likewise.
	* tests/ioctl_termios.c (main): Likewise.
	* tests/ioctl_v4l2-success.c (test_v4l2_buffer_time32, main): Likewise.
	* tests/keyctl.c (main): Likewise.
	* tests/openat2.c (main): Likewise.
	* tests/prctl-sched-core.c (main): Likewise.
	* tests/xselect.c (main): Likewise.

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

	io_uring: implement decoding of IORING_REGISTER_SYNC_CANCEL opcode.
	This io_uring_register opcode was introduced by Linux kernel commit
	v6.0-rc1~181^2~48 and later extended by commit v6.6-rc1~152^2~39.

	* src/xlat/uring_async_cancel_flags.in: New file.
	* src/io_uring.c: Include "xlat/uring_async_cancel_flags.h".
	(print_io_uring_sync_cancel_reg): New function.
	(SYS_FUNC(io_uring_register)): Use it to decode
	IORING_REGISTER_SYNC_CANCEL opcode.
	* tests/io_uring_register.c (main): Check it.
	* NEWS: Mention this change.

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

	io_uring: enhance IORING_{UN,}REGISTER_PBUF_RING decoding.
	Mirror the behaviour of the Linux kernel that does not fetch struct
	io_uring_buf_reg when the number of arguments is not equal to 1.

	* src/io_uring.c (print_io_uring_buf_reg): Add nargs argument.
	Do not decode the structure unless nargs == 1.
	(SYS_FUNC(io_uring_register)): Pass nargs argument
	to print_io_uring_buf_reg.
	* tests/io_uring_register.c (main): Check it.

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

	tests: check --always-show-pid option.
	* tests/strace--always-show-pid.c: New file.
	* tests/pure_executables.list: Add strace--always-show-pid.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (strace--always-show-pid): New test.

2024-05-05  Yao Zi  <ziyao@disroot.org>

	Add --always-show-pid option.
	By default, PID prefixes are only printed for children forked from the
	process started by strace.  With this option, prefixes are printed for
	the process started by strace as well.

	* src/strace.c (always_show_pid): New variable.
	(init): Add --always-show-pid option.
	(usage): Document it.
	* doc/strace.1.in (OPTIONS): Document it.
	* NEWS: Mention this change.

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

	Update decoding of pidfd_send_signal syscall.
	* src/xlat/pidfd_send_signal_flags.in: New file.
	* src/signal.c: Include "xlat/pidfd_send_signal_flags.h"
	(SYS_FUNC(pidfd_send_signal)): Print flags argument using
	pidfd_send_signal_flags.
	* tests/pidfd_send_signal.c (main): Update expected output.
	* NEWS: Mention this change.

	xlat: update PIDFD_* constants.
	* src/xlat/pidfd_open_flags.in (PIDFD_THREAD): New constant
	introduced by Linux kernel commit v6.9-rc1~219^2~19.
	* tests/pidfd_open.c (main): Check it.
	* NEWS: Mention this change.

	xlat: update PTP_* constants.
	* src/xlat/ptp_extts_flags.in (PTP_EXT_OFFSET): New constant
	introduced by Linux kernel commit v6.9-rc1~159^2~414.
	* tests/ioctl_ptp.c (test_no_device): Update expected output.
	* NEWS: Mention this change.

	xlat: update MPOL_* constants.
	* src/xlat/mpol_modes.in (MPOL_WEIGHTED_INTERLEAVE): New constant
	introduced by Linux kernel commit v6.9-rc1~107^2~342.
	* tests/mbind.c: Update expected output.
	* tests/set_mempolicy.c: Likewise.
	* NEWS: Mention this change.

	xlat: update *_MAGIC constants.
	* src/xlat/fsmagic.in (PID_FS_MAGIC): New constant introduced
	by Linux kernel commit v6.9-rc1~219^2~6.
	* NEWS: Mention this change.

	xlat: update LSM_* constants.
	* src/xlat/lsm_ids.in (LSM_ID_IMA): New constant introduced
	by Linux kernel commit v6.9-rc1~157^2~8.
	(LSM_ID_EVM): New constant introduced by Linux kernel commit
	v6.9-rc1~157^2~6.
	* tests/lsm_list_modules.c (main): Update expected output.
	* tests/gen_tests.in (lsm_list_modules-success): Update.
	* NEWS: Mention this change.

	xlat: update IORING_* constants.
	* src/xlat/uring_ops.in (IORING_OP_FIXED_FD_INSTALL): New constant
	introduced by Linux kernel commit v6.8-rc1~29^2~13.
	(IORING_OP_FTRUNCATE): New constant introduced by Linux kernel commit
	v6.9-rc1~215^2~31.
	* src/xlat/uring_register_opcodes.in (IORING_REGISTER_SYNC_CANCEL):
	New constant introduced by Linux kernel commit v6.0-rc1~181^2~48.
	(IORING_REGISTER_FILE_ALLOC_RANGE): New constant introduced by
	Linux kernel commit v6.0-rc1~181^2~31.
	(IORING_REGISTER_PBUF_STATUS): New constant introduced by Linux kernel
	commit v6.8-rc1~29^2~8.
	(IORING_REGISTER_NAPI, IORING_UNREGISTER_NAPI): New constant
	introduced by Linux kernel commit v6.9-rc1~215^2~26.
	* tests/io_uring_register.c (main): Update expected output.
	* NEWS: Mention this change.

	xlat: update KEY_* constants.
	* src/xlat/evdev_keycode.in (KEY_REFRESH_RATE_TOGGLE): New constant
	introduced by Linux kernel commit v6.9-rc1~117^2~40.
	* NEWS: Mention this change.

	xlat: update RWF_* constants.
	* src/xlat/rwf_flags.in (RWF_NOAPPEND): New constant introduced
	by Linux kernel commit v6.9-rc1~222^2~45.
	* NEWS: Mention this change.

	xlat: update NT_* constants.
	* src/xlat/nt_descriptor_types.in (NT_ARM_ZT): New constant introduced
	by Linux kernel commit v6.3-rc1~29^2~10^6~11.
	(NT_ARM_FPMR): New constant introduced by Linux kernel commit
	v6.9-rc1~27^2~6^9~4.
	* NEWS: Mention this change.

	xlat: update CAN_* constants.
	* src/xlat/sock_can_raw_options.in (CAN_RAW_XL_FRAMES): New constant
	introduced by Linux kernel commit v6.1-rc1~170^2~209^2^2.
	(CAN_RAW_XL_VCID_OPTS): New constant introduced by Linux kernel
	commit v6.9-rc1~159^2~262^2~1.
	* NEWS: Mention this change.

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

	tests: workaround net-yy-inet* for new kernels.
	Starting with Linux kernel commit v6.8-rc1~131^2~223, NETLINK_INET_DIAG
	works also for bound-only sockets.  As there is no easy way to tell
	whether the running kernel contains that commit, the test cannot easily
	predict the kernel behavior in case of sockets in bound-only state.
	Workaround this by skipping the corresponding part of the test.

	* tests/net-yy-inet.test: Filter out listen() calls.
	* tests/net-yy-inet.c (main): Do not print expected output for listen()
	syscall.

	Resolves: https://github.com/strace/strace/issues/299

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

	xlat: update TCP_* constants.
	* src/xlat/tcp_states.in (TCP_BOUND_INACTIVE): New constant
	introduced by Linux kernel commit v6.8-rc1~131^2~223.
	* src/xlat/tcp_state_flags.in (1<<TCP_BOUND_INACTIVE): Likewise.
	* NEWS: Mention this change.

2024-04-18  Christian Ehrhardt  <christian.ehrhardt@canonical.com>

	tests: fix LL->time_t->tv_sec conversion path.
	Due to 64-bit time_t on armhf the initialization of some test cases
	that use the pattern of `...tv-sec = (time_t) = 0x1234LL` now fail.

	Example:
	  tests/xselect.c:216:24: error: overflow in conversion from
	  ‘long long int’ to ‘kernel_long_t’ {aka ‘long int’}
	  changes value from ‘-3819351491602432273’
	  to ‘-559038737’ [-Werror=overflow]
	  216 |         tv_in.tv_sec = (time_t) 0xcafef00ddeadbeefLL;

	Other places that used to cast from LL to time_t to assign to tv_sec
	have been changed in 2023 by 7178658e "tests: avoid libc definition
	for time_t in direct syscalls"
	  -       ts->tv_sec = (time_t) 0xcafef00ddeadbeefLL;
	  +       ts->tv_sec = (typeof(ts->tv_sec)) 0xcafef00ddeadbeefLL;

	That avoids the issue where time64 on 32-bit armhf leads to a mismatch.
	kernel_old_timespec.h determines as SIZEOF_KERNEL_LONG_T == 4 and
	thereby selecting `int` as type for tv_sec, but then time_t changed
	to 64-bit.
	Yet on the other hand tv_sec didn't change as it is a kernel type,
	so the assignment triggers an error.
	  old: 64-bit -> explicit cast 32-bit -> assign 32-bit tv_sec
	  new: 64-bit -> explicit cast 64-bit (time_t) -> assign 32-bit tv_sec

	The same pattern was yet unfixed in a few tests and hereby
	resolved the same way as in 7178658e.

	Resolves: https://github.com/strace/strace/issues/296
	Complements: v6.5~3 "tests: avoid libc definition for time_t in direct syscalls"

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

	ci: rewrite codecov integration using codecov-action.
	According to https://github.com/codecov/codecov-bash/#readme,
	https://codecov.io/bash is deprecated and may cease to function.

	* .github/workflows/ci.yml (coverage): Upload coverage using
	codecov/codecov-action@v4.
	* ci/install-dependencies.sh [CHECK == coverage]: Remove.
	* ci/run-build-and-tests.sh [CHECK == coverage]: Do not run
	codecov.bash.

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

	ci: export CODECOV_TOKEN variable for the codecov job.
	Apparently, codecov upload no longer works without it.

	* .github/workflows/ci.yml (coverage): Export CODECOV_TOKEN variable.

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

	Update ioctl entries from linux v6.9.
	* src/linux/32/ioctls_inc_align16.h: Update from linux v6.9-rc4 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.

	maint: update for linux v6.9-rc4.
	* maint/ioctls_sym.sh: Update a workaround for the
	platform_data/cros_ec_chardev.h header.

	Remove KVM_XEN_* ioctl from ioctls lists for non-x86 architectures.
	* maint/ioctls_sym.sh (x86_list): Add KVM_XEN_[A-Z_]+.
	* src/linux/aarch64/ioctls_arch0.h: Regenerate from linux v6.8 using
	ioctls_gen.sh.
	* 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.

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

	tests: check --user=UID:GID error diagnostics.
	* tests/options-syntax.test: Check error diagnostics when
	--user=/-u is specified with an invalid UID:GID pair.

2024-04-15  Zygmunt Krynicki  <me@zygoon.pl>
	    Dmitry V. Levin  <ldv@strace.io>

	strace: add support for -u UID:GID that bypasses lookup.
	When building strace statically linked using the "--username" switch,
	along with a user name, will lead to strange errors. The reason is that
	the calls to getpwnam() and initgroups() will fail because glibc will
	still try to dlopen() the libnss modules which then fails in unexpected
	ways.

	Extend the supported values to allow a classic UID:GID pair to be given
	as numeric values, so that statically linked strace no longer relies on
	dynamic name lookup.

	Originally-by: Michael Vogt <mvo@ubuntu.com>

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

	tests: prepare for --user=UID:GID syntax.
	* tests/options-syntax.test: Change the name of non-existent user
	from ':nosuchuser:' to '!no such user!'.

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

	tests/init.sh: check for errors creating the test directory.
	This resolves shellcheck SC2164.

	mpers_test.sh: fix shellcheck warnings about suspicious assignments.
	This silences shellcheck SC2097 and SC2098.

	maint: fix shellcheck warning about unintended word splitting.
	This resolves shellcheck SC2046.

	tests: avoid shellcheck warnings about suspiciously unquoted literal strings
	This silences shellcheck SC2140.

	tests: avoid shellcheck warnings about expansions in case patterns.
	This silences shellcheck SC2254.

	treewide: avoid shellcheck warnings about expanding arrays.
	This silences shellcheck SC1018.

	bundled: update linux UAPI headers to v6.9-rc1.
	* bundled/linux/include/uapi/linux/btrfs.h: Update to
	headers_install'ed Linux kernel v6.9-rc1.
	* bundled/linux/include/uapi/linux/fs.h: Likewise.
	* bundled/linux/include/uapi/linux/gpio.h: Likewise.
	* bundled/linux/include/uapi/linux/if_link.h: Likewise.
	* bundled/linux/include/uapi/linux/input-event-codes.h: Likewise.
	* bundled/linux/include/uapi/linux/io_uring.h: Likewise.
	* bundled/linux/include/uapi/linux/lsm.h: Likewise.
	* bundled/linux/include/uapi/linux/mctp.h: Likewise.
	* bundled/linux/include/uapi/linux/netfilter/nf_tables.h: Likewise.
	* bundled/linux/include/uapi/linux/nexthop.h: Likewise.
	* bundled/linux/include/uapi/linux/ptp_clock.h: Likewise.
	* bundled/linux/include/uapi/linux/version.h: Likewise.
	* bundled/linux/include/uapi/linux/videodev2.h: Likewise.

	tests: update UFFDIO_* ioctl test.
	* tests/ioctl_uffdio.c (main): Update the list of ioctls potentially
	returned by UFFDIO_REGISTER.

2024-03-21  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.8-1.
	* strace.spec.in: Likewise.

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

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

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

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

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

	Fix preprocessor indentation.
	Indent the C preprocessor directives to reflect their nesting
	using the following script:

	$ cppi -l $(git grep -El '^[[:space:]]*#[[:space:]]*(if|ifdef|ifndef|elif|else|endif|define|pragma)[[:space:]]' src tests |grep -Ev '\.(sh|test)$') |while read f; do
		cppi < "$f" > "$f".cppi; mv "$f".cppi "$f"
	done

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

	tests: fix generated injection tests.
	All generated injection tests that need scno_tampering.sh should have
	their argument list start with --inject=.

	* tests/gen_tests.in (cachestat-success, listmount-success,
	lsm_get_self_attr-success, lsm_list_modules-success,
	statmount-success): Reorder arguments.

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

	tests: skip dev-pty-yy test in old environments.
	As the feature being tested was introduced by Linux kernel commit
	v4.14-rc1~149^2~6, skip the test on older kernel versions.

	* tests/gen_tests.in (dev-pty-yy): Use
	require_min_kernel_version_or_skip.

	Complements: v6.7-39-gab11ac30415a "Show the slave device for the fd opening /dev/ptmx when -yy is given"

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

	tests: check decoding of lsm_list_modules syscall.
	* tests/lsm_list_modules.c: New file.
	* tests/lsm_list_modules-success.c: Likewise.
	* tests/pure_executables.list: Add lsm_list_modules and
	lsm_list_modules-success.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (lsm_list_modules, lsm_list_modules-success):
	New tests.

	tests: check decoding of lsm_set_self_attr syscall.
	* tests/lsm_set_self_attr.c: New file.
	* tests/pure_executables.list: Add lsm_set_self_attr.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (lsm_set_self_attr): New test.

	tests: check decoding of lsm_get_self_attr syscall.
	* tests/lsm_get_self_attr.c: New file.
	* tests/lsm_get_self_attr-success.c: Likewise.
	* tests/pure_executables.list: Add lsm_get_self_attr and
	lsm_get_self_attr-success.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (lsm_get_self_attr, lsm_get_self_attr-success):
	New tests.

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

	Implement decoding of lsm_list_modules syscall.
	This new syscall was introduced by Linux kernel commit v6.8-rc1~176.

	* src/linux/generic/syscallent-common.h [BASE_NR + 461]: Wire up
	lsm_list_modules.
	* src/lsm.c (SYS_FUNC(lsm_list_modules)): New function.
	* NEWS: Mention this change.

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

	Implement decoding of lsm_set_self_attr syscall.
	This new syscall was introduced by Linux kernel commit v6.8-rc1~176.

	* src/linux/generic/syscallent-common.h [BASE_NR + 460]: Wire up
	lsm_set_self_attr.
	* src/lsm.c (SYS_FUNC(lsm_set_self_attr)): New function.
	* NEWS: Mention this change.

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

	Implement decoding of lsm_get_self_attr syscall.
	This new syscall was introduced by Linux kernel commit v6.8-rc1~176.

	* src/linux/generic/syscallent-common.h [BASE_NR + 459]: Wire up
	lsm_get_self_attr.
	* src/Makefile.am (libstrace_a_SOURCES): Add lsm.c
	* src/defs.h (tfetch_obj_ignore_syserror): New macro.
	* src/lsm.c: New file.
	* src/xlat/lsm_attrs.in: Likewise.
	* src/xlat/lsm_flags.in: Likewise.
	* src/xlat/lsm_ids.in: Likewise.
	* NEWS: Mention this change.

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

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

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

	bundled: update linux UAPI headers to v6.8.
	Bundle linux/stddef.h and update dependent header files.

	* bundled/linux/include/uapi/linux/stddef.h: New file.
	* bundled/linux/include/uapi/linux/in.h: Update to
	headers_install'ed Linux kernel v6.8.
	* bundled/linux/include/uapi/linux/io_uring.h: Likewise.
	* bundled/Makefile.am (EXTRA_DIST): Add
	linux/include/uapi/linux/stddef.h.

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

	printpidfd: add pidfs support.
	Linux kernel commit v6.8-rc1-17-gcb12fd8e0dab moves pidfd from the
	anonymous inode infrastructure to a new pidfs pseudo filesystem.

	* src/util.c (printpidfd): Handle new format of kernel provided
	information associated with pidfd descriptors.
	* tests/pidfd_getfd-y.c (PIDFD_PATH): Remove.
	(PRINT_PIDFD_PATH): Define.
	* tests/pidfd_getfd-yy.c (PRINT_PIDFD): Rename to PRINT_PIDFD_PID.
	* tests/pidfd_getfd.c: Include "xmalloc.h".
	(PIDFD_PATH): Remove.
	(PRINT_PIDFD): Rename to PRINT_PIDFD_PID.
	(PRINT_PIDFD_PATH): Provide fallback definition.
	(main) [PRINT_PIDFD_PATH]: Use get_fd_path() instead of hardcoding
	<anon_inode:[pidfd]>.
	* tests/pidfd_open.c (main): Use get_fd_path() instead of hardcoding
	<anon_inode:[pidfd]>.
	* tests/scm_pidfd.c (print_pidfd): Likewise.
	* tests/so_peerpidfd.c (print_pidfd): Likewise.

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

	Rename --stack-traces to --stack-trace for consistency.
	Do not use plural in option names, but retain old option name
	for backwards compatibility.

	* NEWS: Mention this.
	* doc/strace.1.in: Rename --stack-traces to --stack-trace.
	* src/strace.c: Likewise. Retain old option for backwards compatibility.
	* src/strauss.c: Likewise.
	* tests/options-syntax.test: Likewise.
	* tests/strace-k.test: Likewise.
	* tests/strace-k-with-depth-limit.test: Likewise.
	* tests/strace-kk.test: Likewise.
	* tests/strace-kk-p.test: Likewise.

2024-03-13  Masatake YAMATO  <yamato@redhat.com>

	Show the slave device for the fd opening /dev/ptmx when -yy is given.
	An example output:

	     read(32</dev/ptmx<char 5:2 @/dev/pts/7>>, "\0\"\\0", 4) = 4

	* src/defs.h (struct finfo::tty_index): New member.
	(get_finfo_for_dev): Add two parameters.
	* src/ioctl.c (SYS_FUNC(ioctl)): Pass pid and fd to get_finfo_for_dev().
	* src/utils.c (is_ptmx, set_tty_index): New functions.
	(get_finfo_for_dev): Read the tty-index field in /proc/$pid/fdinfo/$fd
	and store the value to struct finfo::tty_index.
	(printenv): Pass pid and fd to get_finfo_for_dev(). Print the slave
	device for the fd opening /dev/ptmx as the counter endpoint.
	* tests/dev-pty-yy.c: New file.
	* tests/gen_tests.in (dev-pty-yy): New test.
	* tests/pure_executables.list: Add dev-pty-yy.
	* tests/.gitignore: Likewise.

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

	util: rearrange some code.
	* src/util.c (scan_fdinfo_fn, scan_fdinfo): Move before
	get_finfo_for_dev() to facilitate the followup change.

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

	tests: extend the test of TCP_AO_ADD_KEY decoding.
	* tests/tcp_ao.c: Check more corner cases of the TCP_AO_ADD_KEY decoder.

2024-03-10  наб  <nabijaczleweli@nabijaczleweli.xyz>

	Implement decoding of setsockopt(TCP_AO_ADD_KEY)
	Samples as run via tcp-ao-wrapper:
	  setsockopt(3, SOL_TCP, TCP_AO_ADD_KEY, {addr={sa_family=AF_INET6, sin6_port=htons(0), sin6_flowinfo=htonl(0), inet_pton(AF_INET6, "::", &sin6_addr), sin6_scope_id=0}, prefix=0, alg_name="hmac(sha1)", ifindex=0, set_current=0, set_rnext=0, sndid=200, rcvid=100, maclen=12, keyflags=0, key="\x42\xe9\xd2\xd3\xd1\xec\x9f\x55\x56\x9c\xd7\x89\x1a\x90\x53\xba\x59\x6d\x5f\x0a", keylen=20}, 288) = 0
	  setsockopt(3, SOL_TCP, TCP_AO_ADD_KEY, {addr={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("127.0.0.1")}, prefix=32, alg_name="cmac(aes)", ifindex=0, set_current=0, set_rnext=0, sndid=200, rcvid=100, maclen=12, keyflags=0, key="\x7a\x66\x25\xc9\x80\xdb\x68\x95\xf5\xaf\x84\x1b\xd6\x50\x29\xe1", keylen=16}, 288) = -1 ENOPROTOOPT (Protocol not available)

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

	tests: check decoding of listmount syscall.
	* tests/listmount.c: New file.
	* tests/listmount-success.c: Likewise.
	* tests/pure_executables.list: Add listmount and listmount-success.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (listmount, listmount-success): New tests.

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

	Implement decoding of listmount syscall.
	This new syscall was introduced by Linux kernel commit v6.8-rc1~213.

	* src/linux/generic/syscallent-common.h [BASE_NR + 458]: Wire up
	listmount.
	* src/Makefile.am (libstrace_a_SOURCES): Add listmount.c.
	* src/listmount.c: New file.
	* src/xlat/listmount_mnt_id.in: Likewise.
	* NEWS: Mention this change.

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

	tests: check decoding of statmount syscall.
	* tests/statmount.c: New file.
	* tests/statmount-success.c: Likewise.
	* tests/pure_executables.list: Add statmount and statmount-success.
	* tests/.gitignore: Likewise.
	* tests/gen_tests.in (statmount, statmount-success): New tests.

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

	Implement decoding of statmount syscall.
	This new syscall was introduced by Linux kernel commit v6.8-rc1~213.

	* src/defs.h (fsmagic, mount_attr_attr): New declarations.
	* src/linux/generic/syscallent-common.h [BASE_NR + 457]: Wire up
	statmount.
	* src/Makefile.am (libstrace_a_SOURCES): Add statmount.c.
	* src/statmount.c: New file.
	* src/xlat/statmount_mask.in: Likewise.
	* src/xlat/statmount_mnt_propagation.in: Likewise.
	* src/xlat/statmount_sb_flags.in: Likewise.
	* NEWS: Mention this change.

2024-03-09  Masatake YAMATO  <yamato@redhat.com>

	Make -p options accept multiple delimiters between PIDs.
	The original code accepts only one delimiter between PIDs.
	This change relaxes the condition.

	* src/strace.c (process_opt_p_list): Skip the consecutive
	delimiters.
	* tests/syntax.sh (check_zero): New helper function.
	* tests/options-syntax.test: Add code testing this change.

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

	xlat: update MOUNT_ATTR_* constants.
	Apparently, FSMOUNT_VALID_FLAGS defined in Linux kernel's fs/namespace.c
	includes MOUNT_ATTR_NOSYMFOLLOW as well.

	* src/xlat/fsmount_attr_flags.in (MOUNT_ATTR_NOSYMFOLLOW): New constant
	introduced by Linux kernel commit v5.14-rc1~139^2~1.
	* tests/fsmount.c (main): Update expected output.

	Complements: v5.14~59 "xlat: update MOUNT_ATTR_* constants"

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

	Enhance decoding of mount attributes related to access-time settings.
	Apparently, both fsmount and mount_setattr syscalls treat a subset of mount
	attributes not just as regular flags but rather as an enumeration expressed
	in the bits defined by the mask MOUNT_ATTR__ATIME.

	* src/xlat/fsmount_attr_flags.in (MOUNT_ATTR__ATIME): New constant
	introduced by Linux kernel commit v5.2-rc1~141^2~2.
	* src/xlat/mount_attr_attr.in: Likewise.
	* tests/fsmount.c (main): Check this.
	* tests/mount_setattr.c (main): Likewise.
	* NEWS: Mention this change.

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

	Update ioctl entries from linux v6.8.
	* src/linux/32/ioctls_inc_align16.h: Update from linux v6.8-rc6 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.8-rc6.
	* maint/ioctls_sym.sh: Update a workaround for binder.h.

2024-02-23  Ivan Avdeev  <me@provod.works>

	v4l2: add TIME32 variants for VIDIOC_*BUF ioctls.
	On 32-bit kernels and on 64-bit kernels with `CONFIG_COMPAT_32BIT_TIME`
	enabled many syscalls have 2 functional variants: with new 64-bit time
	fields and with legacy 32-bit time fields.

	This commit adds support for the following 32-bit time ioctls:
	- VIDIOC_QUERYBUF_TIME32
	- VIDIOC_QBUF_TIME32
	- VIDIOC_DQBUF_TIME32

	These correspond to using `struct v4l2_buffer_time32`, which differs from
	the regular `struct v4l2_buffer` by having 32-bit `struct old_timeval32`
	`timestamp` field.

	Unit tests for these new ioctls are also added. They are essentially
	just functionally identical copies of the regular ioctl tests.

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

	tests: tighten strace -k expected regexps.
	* tests/strace-k.expected: Do not accept arbitrary function calls
	on top of the call stack.
	* tests/strace-k-p.expected: Likewise.
	* tests/strace-k-demangle.expected: Likewise.

	Fixes: v4.25~21 "tests: check stack unwinding for signals"

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

	tests: fix typo in strace -k expected regexps.
	* tests/strace-k.expected: Replace __kernel_vsyscaln with
	__kernel_vsyscall.
	* tests/strace-k-p.expected: Likewise.

	Fixes: v4.25~21 "tests: check stack unwinding for signals"

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

	Enhance --stack-trace-frame-limit error diagnostics.
	* src/strace.c (init): Issue a warning when --stack-trace-frame-limit
	is being used without -k/--stack-traces.
	* tests/options-syntax.test: Check it.

	tests: check --stack-trace-frame-limit error diagnostics.
	* tests/options-syntax.test: Check error diagnostics when
	--stack-trace-frame-limit is specified with an invalid argument.

2024-02-22  Masatake YAMATO  <yamato@redhat.com>

	tests: check strace -k --stack-trace-frame-limit.
	* tests/strace-k.test (KOPT_EXTRA): New parameter for this case
	template. Pass its value to `run_strace` function.
	(awk_script_common): Append "too many stack frames" to the output
	of the test case.
	* tests/Makefile.am (STACKTRACE_TESTS): Add
	strace-k-with-depth-limit.test.
	(check_SCRIPTS): Add strace-k-with-depth-limit.test.
	(check_DATA): Add strace-k-with-depth-limit.expected.
	* tests/strace-k-with-depth-limit.expected: New file.
	* tests/strace-k-with-depth-limit.test: New test.

2024-02-22  Eugene Syromyatnikov  <evgsyr@gmail.com>

	strace.1: touch up the --stack-trace-frame-limit description wording.
	* doc/strace.1.in (.SS Output format) <--stack-trace-frame-limit>:
	Use singular when referring to the -k option.

	strace.1: fix formatting.
	* doc/strace.1.in (SYNOPSIS): Fix the syntax for the --syscall-limit
	option ("--syscall-limit=limit" and not "--syscall-limit limit").
	(.SS Output format) <-k>: Fix formatting for "--stack-traces[=symbol]".
	(.SS Output format) <-kk>: Fix formatting for "--stack-traces=source".
	(.SS Output format) <--stack-trace-frame-limit>: Fix formatting
	for "--stack-trace-frame-limit=limit", fix formatting for the closing
	parenthesis after the -k option mention.

2024-02-22  Ivan Trofimov  <i.trofimow@yandex.ru>

	Introduce a cli option to control backtrace frames limit.
	* src/defs.h (DEFAULT_STACK_TRACE_FRAME_LIMIT): New constant.
	(unwind_init): Add an int argument.
	* src/strace.c (init): Add --stack-trace-frame-limit=N option.
	(usage): Document it.
	* src/unwind.h (struct unwind_unwinder_t::init): Add an int argument.
	* src/unwind.c (unwind_init): Pass the limit argument to the unwinder
	initializer.
	* src/unwind-libdw.c (stack_trace_limit): New variable.
	(init): Initialize it.
	(tcb_walk): Use it at frame_user_data initialization.
	* src/unwind-libunwind.c (stack_trace_limit): New variable.
	(init): Initialize it.
	(walk): Account for it when printing stack frames.
	* doc/strace.1.in: Document this.
	* NEWS: Mention this.

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

	unwind-libdw: decrement the depth before comparing with its limit.
	When using libdwn as unwinder, --stacktrace-frames-limit=N didn't work
	quite as expected: strace used to print N+1 frames.

	* src/unwind-libunwind.c (frame_callback): Decrement stack_depth
	before comparing it with its limit.

	Fixes: v4.23~349 "unwind: add libdw as an unwinder"

2024-02-15  Eugene Syromyatnikov  <evgsyr@gmail.com>

	defs: fix sign_extend_unsigned_to_ll for char-sized types.
	The original implementation assumed char being signed, which
	is not guaranteed by the C language standard and is not the case
	on some architectures (powerpc, s390x, aarch64, and some others).
	This mistake has been exposed by the introduction of UBI_IOCATT decoder,
	that for the first time introduced a test which printed a char-sized
	signed field without relying on the PRINT_FIELD_D macro (with two
	previous cases being field d_version in struct fs_disk_quota
	and field interval in struct tc_estimator).

	* src/defs.h (sign_extend_unsigned_to_ll): Cast v to signed char
	instead of char.
	* tests/tests.h (sign_extend_unsigned_to_ll): Likewise.

	Fixes: v4.14~39 "Enhance zero_extend_signed_to_ull and sign_extend_unsigned_to_ll macros"
	Complements: v4.14~37 "tests: check decoding of quotactl syscall
	Complements: v4.20~86 "tests: check decoding of tcmsg netlink attributes"
	Complements: v6.7-15-g263e78472 "ubi: update decoding of UBI_IOCATT ioctl command"

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

	ubi: update decoding of UBI_IOCATT ioctl command.
	* src/ubi.c (decode_UBI_IOCATT): Decode disable_fm and need_resv_pool
	members of struct ubi_attach_req introduced by Linux kernel commits
	v6.1-rc1~13^2 and v6.7-rc1~57^2~3, respectively.
	* tests/ioctl_ubi.c (main): Check it.
	* NEWS: Mention this change.

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

	landlock: update decoding of landlock_add_rule syscall.
	* src/landlock.c (print_landlock_net_port_attr): New function.
	(SYS_FUNC(landlock_add_rule)): Use it to decode LANDLOCK_RULE_NET_PORT
	introduced by Linux kernel commit v6.7-rc1~82^2~5.
	* tests/landlock_add_rule.c (main): Check it.
	* NEWS: Mention this change.

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

	landlock: update decoding of landlock_create_ruleset syscall.
	* src/xlat/landlock_ruleset_access_net.in: New file.
	* src/landlock.c: Include "xlat/landlock_ruleset_access_net.h".
	(print_landlock_ruleset_attr): Decode handled_access_net member
	of struct landlock_ruleset_attr introduced by Linux kernel commit
	v6.7-rc1~82^2~5.
	* tests/landlock_create_ruleset.c (main): Check it.
	* NEWS: Mention this change.

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

	netlink_smc_diag: update decoding of SMC_DIAG_DMBINFO netlink attribute.
	* src/netlink_smc_diag.c (decode_smc_diag_dmbinfo): Decode peer_gid_ext
	and my_gid_ext members of struct smcd_diag_dmbinfo introduced by Linux
	kernel commit v6.8-rc1~131^2~91^2~2.
	* tests/nlattr_smc_diag_msg.c (main): Check it.
	* NEWS: Mention this change.

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

	xlat: update V4L2_* constants.
	* src/xlat/v4l2_control_id_bases.in (V4L2_CID_USER_NPCM_BASE): New
	constant introduced by Linux kernel commit v6.7-rc1~51^2~234.
	(V4L2_CID_USER_THP7312_BASE): New constant introduced by Linux kernel
	commit v6.8-rc1~99^2~167.
	* src/xlat/v4l2_pix_fmts.in (V4L2_PIX_FMT_HEXTILE): New constant
	introduced by Linux kernel commit v6.7-rc1~51^2~235.
	* NEWS: Mention this change.

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

	xlat: update UFFD_* constants.
	* src/xlat/uffd_api_features.in (UFFD_FEATURE_WP_ASYNC): New constant
	introduced by Linux kernel commit v6.7-rc1~90^2~207.
	(UFFD_FEATURE_MOVE): New constant introduced by Linux kernel commit
	v6.8-rc1~180^2~163.
	* src/xlat/uffd_register_ioctl_flags.in (1<<_UFFDIO_MOVE): Likewise.
	* NEWS: Mention this change.

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

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

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

	xlat: update SOL_* constants.
	* src/xlat/socketlayers.in (SOL_MPTCP): New constant introduced
	by Linux kernel commit v5.16-rc1~159^2~413^2~3.
	(SOL_MCTP): New constant introduced by Linux kernel commit
	v5.16-rc1~159^2~76.
	(SOL_SMC): New constant introduced by Linux kernel commit
	v5.18-rc1~136^2~378^2~1.
	(SOL_VSOCK): New constant introduced by Linux kernel commit
	v6.7-rc1~122^2~145^2~10.
	* NEWS: Mention this change.

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

	xlat: update PERF_* constants.
	* src/xlat/perf_branch_sample_type.in (PERF_SAMPLE_BRANCH_COUNTERS):
	New constant introduced by Linux kernel commit v6.8-rc1~184^2~19.
	* tests/perf_event_open.c (BRANCH_TYPE_ALL, main): Update expected
	output.
	* NEWS: Mention this change.

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

	xlat: update KVM_* constants.
	* src/xlat/kvm_cap.in (KVM_CAP_USER_MEMORY2): New constant introduced
	by Linux kernel commit v6.8-rc1~78^2~24^2~26.
	(KVM_CAP_MEMORY_FAULT_INFO): New constant introduced by Linux kernel
	commit v6.8-rc1~78^2~24^2~25.
	(KVM_CAP_MEMORY_ATTRIBUTES): New constant introduced by Linux kernel
	commit v6.8-rc1~78^2~24^2~22.
	(KVM_CAP_GUEST_MEMFD): New constant introduced by Linux kernel commit
	v6.8-rc1~78^2~24^2~19.
	(KVM_CAP_VM_TYPES): New constant introduced by Linux kernel commit
	v6.8-rc1~78^2~24^2~13.
	* src/xlat/kvm_exit_reason.in (KVM_EXIT_MEMORY_FAULT): New constant
	introduced by Linux kernel commit v6.8-rc1~78^2~24^2~25.
	* src/xlat/kvm_mem_flags.in (KVM_MEM_GUEST_MEMFD): New constant
	introduced by Linux kernel commit v6.8-rc1~78^2~24^2~19.
	* NEWS: Mention this change.

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

	xlat: update KEXEC_* constants.
	* src/xlat/kexec_load_flags.in (KEXEC_FILE_DEBUG):
	New constant introduced by Linux kernel commit v6.8-rc1~179^2~50.
	* tests/kexec_file_load.c (main): Update expected output.
