12813126eSlogin #pragma once 22813126eSlogin 32813126eSlogin #include <stdint.h> 42813126eSlogin #include <stdbool.h> 52813126eSlogin 62813126eSlogin typedef unsigned char u_char; 72813126eSlogin typedef unsigned short u_short; 82813126eSlogin typedef unsigned int u_int; 92813126eSlogin typedef unsigned long u_long; 102813126eSlogin 112813126eSlogin typedef uint32_t uid_t; 122813126eSlogin typedef uint32_t gid_t; 132813126eSlogin typedef long long ssize_t; 142813126eSlogin 15*0bfe94f4Slogin typedef int64_t pid_t; 162813126eSlogin typedef __SIZE_TYPE__ size_t; 172813126eSlogin 182813126eSlogin typedef char *caddr_t; 192813126eSlogin 202813126eSlogin typedef int id_t; 212813126eSlogin 222813126eSlogin typedef uint64_t ino_t; 232813126eSlogin typedef int64_t off_t; 242813126eSlogin 252813126eSlogin typedef uint32_t blkcnt_t; 262813126eSlogin typedef uint32_t blksize_t; 272813126eSlogin typedef uint32_t dev_t; 282813126eSlogin typedef uint16_t mode_t; 292813126eSlogin typedef uint32_t nlink_t; 302813126eSlogin 312813126eSlogin typedef int64_t time_t; 322813126eSlogin typedef uint32_t useconds_t; 332813126eSlogin typedef int32_t suseconds_t; 342813126eSlogin typedef uint32_t clock_t; 352813126eSlogin 362813126eSlogin typedef uint64_t fsblkcnt_t; 372813126eSlogin typedef uint64_t fsfilcnt_t; 382813126eSlogin 392813126eSlogin typedef uint64_t sector_t; 402813126eSlogin 412813126eSlogin #define __socklen_t_defined 422813126eSlogin #define __socklen_t uint32_t 432813126eSlogin typedef __socklen_t socklen_t; 442813126eSlogin 452813126eSlogin #define pgoff_t unsigned long 462813126eSlogin 472813126eSlogin struct utimbuf 482813126eSlogin { 492813126eSlogin time_t actime; 502813126eSlogin time_t modtime; 512813126eSlogin }; 522813126eSlogin 532813126eSlogin typedef int pthread_t; 542813126eSlogin typedef int pthread_key_t; 552813126eSlogin typedef uint32_t pthread_once_t; 562813126eSlogin 572813126eSlogin typedef struct __pthread_mutex_t 582813126eSlogin { 592813126eSlogin uint32_t lock; 602813126eSlogin pthread_t owner; 612813126eSlogin int level; 622813126eSlogin int type; 632813126eSlogin } pthread_mutex_t; 642813126eSlogin 652813126eSlogin typedef void *pthread_attr_t; 662813126eSlogin typedef struct __pthread_mutexattr_t 672813126eSlogin { 682813126eSlogin int type; 692813126eSlogin } pthread_mutexattr_t; 702813126eSlogin 712813126eSlogin typedef struct __pthread_cond_t 722813126eSlogin { 732813126eSlogin pthread_mutex_t *mutex; 742813126eSlogin uint32_t value; 752813126eSlogin int clockid; // clockid_t 762813126eSlogin } pthread_cond_t; 772813126eSlogin 782813126eSlogin typedef uint64_t pthread_rwlock_t; 792813126eSlogin typedef void *pthread_rwlockattr_t; 802813126eSlogin typedef struct __pthread_spinlock_t 812813126eSlogin { 822813126eSlogin int m_lock; 832813126eSlogin } pthread_spinlock_t; 842813126eSlogin typedef struct __pthread_condattr_t 852813126eSlogin { 862813126eSlogin int clockid; // clockid_t 872813126eSlogin } pthread_condattr_t; 882813126eSlogin 892813126eSlogin typedef uint64_t gfp_t; 902813126eSlogin 912813126eSlogin // 定义8字节对齐变量属性 922813126eSlogin #ifndef __aligned_u64 932813126eSlogin #define __aligned_u64 uint64_t __attribute__((aligned(8))) 942813126eSlogin #endif 952813126eSlogin 962813126eSlogin #define aligned_u64 __aligned_u64