]> granicus.if.org Git - strace/commit
Introduce print_big_u64_addr
authorEugene Syromyatnikov <evgsyr@gmail.com>
Mon, 26 Mar 2018 04:13:23 +0000 (06:13 +0200)
committerDmitry V. Levin <ldv@altlinux.org>
Wed, 4 Apr 2018 12:24:19 +0000 (12:24 +0000)
commit7eac1da9be7d43fff8190148ea956a07cc6850b5
tree53d7cfc1d5b6cfebb24b309af0c6dac8a45565cc
parentd5e7532581f83af8e69b4f0174965bd681213255
Introduce print_big_u64_addr

This is needed at least for bpf, btrfs, and sg_io, as 32-bit tracer
cannot figure out whether the kernel is 32-bit or 64-bit,
and its behaviour differs when it handles u64 as a pointer.

* linux/arch_defs_.h [!CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL]
(CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL): New definition, default to 0.
* linux/arm/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Define to 1.
* linux/i386/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/mips/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/powerpc/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/riscv/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/s390/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/sparc/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* linux/tile/arch_defs_.h (CAN_ARCH_BE_COMPAT_ON_64BIT_KERNEL):
Likewise.
* defs.h (print_big_u64_addr): New function.

Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
defs.h
linux/arch_defs_.h
linux/arm/arch_defs_.h
linux/i386/arch_defs_.h
linux/mips/arch_defs_.h
linux/powerpc/arch_defs_.h
linux/riscv/arch_defs_.h
linux/s390/arch_defs_.h
linux/sparc/arch_defs_.h
linux/tile/arch_defs_.h