1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __ASM_GENERIC_COMPAT_H 3#define __ASM_GENERIC_COMPAT_H 4 5/* These types are common across all compat ABIs */ 6typedef u32 compat_size_t; 7typedef s32 compat_ssize_t; 8typedef s32 compat_clock_t; 9typedef s32 compat_pid_t; 10typedef u32 compat_ino_t; 11typedef s32 compat_off_t; 12typedef s64 compat_loff_t; 13typedef s32 compat_daddr_t; 14typedef s32 compat_timer_t; 15typedef s32 compat_key_t; 16typedef s16 compat_short_t; 17typedef s32 compat_int_t; 18typedef s32 compat_long_t; 19typedef u16 compat_ushort_t; 20typedef u32 compat_uint_t; 21typedef u32 compat_ulong_t; 22typedef u32 compat_uptr_t; 23typedef u32 compat_caddr_t; 24typedef u32 compat_aio_context_t; 25typedef u32 compat_old_sigset_t; 26 27#ifndef __compat_uid32_t 28typedef u32 __compat_uid32_t; 29typedef u32 __compat_gid32_t; 30#endif 31 32#ifndef compat_mode_t 33typedef u32 compat_mode_t; 34#endif 35 36#ifdef CONFIG_COMPAT_FOR_U64_ALIGNMENT 37typedef s64 __attribute__((aligned(4))) compat_s64; 38typedef u64 __attribute__((aligned(4))) compat_u64; 39#else 40typedef s64 compat_s64; 41typedef u64 compat_u64; 42#endif 43 44#ifndef _COMPAT_NSIG 45typedef u32 compat_sigset_word; 46#define _COMPAT_NSIG _NSIG 47#define _COMPAT_NSIG_BPW 32 48#endif 49 50#endif 51