Dmitry V. Levin
0547dc1ad5
Use an unsigned type for syscall numbers as they are not intended for signed arithmetics. Introduce kernel_scno_t as a typedef to unsigned long, that could be changed later to kernel_ulong_t. * kernel_types.h (kernel_scno_t): New type, typedef to unsigned long. * defs.h (struct tcb): Change type of scno field from long to kernel_scno_t. (syscall_name): Change argument type from long to kernel_scno_t. (scno_in_range, scno_is_valid): Change argument type from unsigned long to kernel_scno_t. * linux/aarch64/set_scno.c (arch_set_scno): Change scno argument type from long to kernel_scno_t. * linux/alpha/set_scno.c (arch_set_scno): Likewise. * linux/arc/set_scno.c (arch_set_scno): Likewise. * linux/arm/set_scno.c (arch_set_scno): Likewise. * linux/avr32/set_scno.c (arch_set_scno): Likewise. * linux/bfin/set_scno.c (arch_set_scno): Likewise. * linux/crisv10/set_scno.c (arch_set_scno): Likewise. * linux/hppa/set_scno.c (arch_set_scno): Likewise. * linux/i386/set_scno.c (arch_set_scno): Likewise. * linux/ia64/set_scno.c (arch_set_scno): Likewise. * linux/m68k/set_scno.c (arch_set_scno): Likewise. * linux/metag/set_scno.c (arch_set_scno): Likewise. * linux/microblaze/set_scno.c (arch_set_scno): Likewise. * linux/mips/set_scno.c (arch_set_scno): Likewise. * linux/nios2/set_scno.c (arch_set_scno): Likewise. * linux/or1k/set_scno.c (arch_set_scno): Likewise. * linux/powerpc/set_scno.c (arch_set_scno): Likewise. * linux/riscv/set_scno.c (arch_set_scno): Likewise. * linux/s390/set_scno.c (arch_set_scno): Likewise. * linux/sh/set_scno.c (arch_set_scno): Likewise. * linux/sh64/set_scno.c (arch_set_scno): Likewise. * linux/sparc/set_scno.c (arch_set_scno): Likewise. * linux/tile/set_scno.c (arch_set_scno): Likewise. * linux/x86_64/set_scno.c (arch_set_scno): Likewise. * linux/xtensa/set_scno.c (arch_set_scno): Likewise. * linux/aarch64/get_scno.c (arch_get_scno): Change scno variable type from long to kernel_scno_t. * linux/alpha/get_scno.c (arch_get_scno): Likewise. * linux/arm/get_scno.c (arch_get_scno): Likewise. * linux/sh/get_scno.c (arch_get_scno): Likewise. * linux/x86_64/get_scno.c (arch_get_scno): Likewise. * syscall.c (arch_set_scno): Likewise. (shuffle_scno): Change return type from long to kernel_scno_t. (syscall_name): Change argument type from long to kernel_scno_t.