UAPI Disintegration 2012-10-09
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIVAwUAUHPmWhOxKuMESys7AQLOPQ//asL1dnbW+99GyGVjtvfQKUMbTF23I4u5 2VkYAZl3cNSFMQTEY8BYEPOaQM/NhRXrEgExnsyNukbzVtV9lFq91VvesRYOhPEc 94p6Q/TLj+y/rh/5N5Yz+5HyyPfTnzmaY5kL0uY9guHgZKtCMOf/15i6sPaXzZqZ 7Qn1BRROZ71a8wlvP/3OyuiKDFyYtcE++nUQKNA8Msn87Xuu3tR6Zw7apJdTWuWi 5oc/R0AzKXX5UiYShF38lVBpyrQlW2jshZPhKjboyE3oCClo+q0z+36gQ9Wpowkl ITgxKrJiEGM22RC0gr/hsZGhIxuO2cPvGlX+fwbMkQzTRXn2q6c3gZsx1w0Jfm4Z vbKMdNojP1bIflrMC47dGvKspwoFBut2dFRpeVShcRMjnYqx8YaBWM3HL0eKC5O0 1nXVs7/4vwiIcqWjXzPNak+O/Z8egCvzY2nBwTD7aU6pufGZvTEsDnzi8jos6apQ /FxZGHGOVcpkbWdMOKyJXc7mkdm2zKfMsDbIYY9wxRDBSVM4Eq030lOqp+/jvqkc d5NT97n87BMOIOFW4noBqJW54DnvXhD3Oi9e+TmpYNIk78F0ewg3ac28Xy4aGil5 xH/id7Nm7BWbXlnhHXFyw5WaeVmXhBo4UpRyxeLD1wmusrNAsvjrhpqOCqpbU1IT IelBSr0Qx5A= =XolC -----END PGP SIGNATURE----- Merge tag 'disintegrate-mips-20121009' of git://git.infradead.org/users/dhowells/linux-headers into mips-for-linux-next UAPI Disintegration 2012-10-09 Patchwork: https://patchwork.linux-mips.org/patch/4414/
This commit is contained in:
Коммит
35bafbee4b
|
@ -1,5 +0,0 @@
|
||||||
include include/asm-generic/Kbuild.asm
|
|
||||||
|
|
||||||
header-y += cachectl.h
|
|
||||||
header-y += sgidefs.h
|
|
||||||
header-y += sysmips.h
|
|
|
@ -8,128 +8,10 @@
|
||||||
#ifndef _ASM_ERRNO_H
|
#ifndef _ASM_ERRNO_H
|
||||||
#define _ASM_ERRNO_H
|
#define _ASM_ERRNO_H
|
||||||
|
|
||||||
/*
|
#include <uapi/asm/errno.h>
|
||||||
* These error numbers are intended to be MIPS ABI compatible
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <asm-generic/errno-base.h>
|
|
||||||
|
|
||||||
#define ENOMSG 35 /* No message of desired type */
|
|
||||||
#define EIDRM 36 /* Identifier removed */
|
|
||||||
#define ECHRNG 37 /* Channel number out of range */
|
|
||||||
#define EL2NSYNC 38 /* Level 2 not synchronized */
|
|
||||||
#define EL3HLT 39 /* Level 3 halted */
|
|
||||||
#define EL3RST 40 /* Level 3 reset */
|
|
||||||
#define ELNRNG 41 /* Link number out of range */
|
|
||||||
#define EUNATCH 42 /* Protocol driver not attached */
|
|
||||||
#define ENOCSI 43 /* No CSI structure available */
|
|
||||||
#define EL2HLT 44 /* Level 2 halted */
|
|
||||||
#define EDEADLK 45 /* Resource deadlock would occur */
|
|
||||||
#define ENOLCK 46 /* No record locks available */
|
|
||||||
#define EBADE 50 /* Invalid exchange */
|
|
||||||
#define EBADR 51 /* Invalid request descriptor */
|
|
||||||
#define EXFULL 52 /* Exchange full */
|
|
||||||
#define ENOANO 53 /* No anode */
|
|
||||||
#define EBADRQC 54 /* Invalid request code */
|
|
||||||
#define EBADSLT 55 /* Invalid slot */
|
|
||||||
#define EDEADLOCK 56 /* File locking deadlock error */
|
|
||||||
#define EBFONT 59 /* Bad font file format */
|
|
||||||
#define ENOSTR 60 /* Device not a stream */
|
|
||||||
#define ENODATA 61 /* No data available */
|
|
||||||
#define ETIME 62 /* Timer expired */
|
|
||||||
#define ENOSR 63 /* Out of streams resources */
|
|
||||||
#define ENONET 64 /* Machine is not on the network */
|
|
||||||
#define ENOPKG 65 /* Package not installed */
|
|
||||||
#define EREMOTE 66 /* Object is remote */
|
|
||||||
#define ENOLINK 67 /* Link has been severed */
|
|
||||||
#define EADV 68 /* Advertise error */
|
|
||||||
#define ESRMNT 69 /* Srmount error */
|
|
||||||
#define ECOMM 70 /* Communication error on send */
|
|
||||||
#define EPROTO 71 /* Protocol error */
|
|
||||||
#define EDOTDOT 73 /* RFS specific error */
|
|
||||||
#define EMULTIHOP 74 /* Multihop attempted */
|
|
||||||
#define EBADMSG 77 /* Not a data message */
|
|
||||||
#define ENAMETOOLONG 78 /* File name too long */
|
|
||||||
#define EOVERFLOW 79 /* Value too large for defined data type */
|
|
||||||
#define ENOTUNIQ 80 /* Name not unique on network */
|
|
||||||
#define EBADFD 81 /* File descriptor in bad state */
|
|
||||||
#define EREMCHG 82 /* Remote address changed */
|
|
||||||
#define ELIBACC 83 /* Can not access a needed shared library */
|
|
||||||
#define ELIBBAD 84 /* Accessing a corrupted shared library */
|
|
||||||
#define ELIBSCN 85 /* .lib section in a.out corrupted */
|
|
||||||
#define ELIBMAX 86 /* Attempting to link in too many shared libraries */
|
|
||||||
#define ELIBEXEC 87 /* Cannot exec a shared library directly */
|
|
||||||
#define EILSEQ 88 /* Illegal byte sequence */
|
|
||||||
#define ENOSYS 89 /* Function not implemented */
|
|
||||||
#define ELOOP 90 /* Too many symbolic links encountered */
|
|
||||||
#define ERESTART 91 /* Interrupted system call should be restarted */
|
|
||||||
#define ESTRPIPE 92 /* Streams pipe error */
|
|
||||||
#define ENOTEMPTY 93 /* Directory not empty */
|
|
||||||
#define EUSERS 94 /* Too many users */
|
|
||||||
#define ENOTSOCK 95 /* Socket operation on non-socket */
|
|
||||||
#define EDESTADDRREQ 96 /* Destination address required */
|
|
||||||
#define EMSGSIZE 97 /* Message too long */
|
|
||||||
#define EPROTOTYPE 98 /* Protocol wrong type for socket */
|
|
||||||
#define ENOPROTOOPT 99 /* Protocol not available */
|
|
||||||
#define EPROTONOSUPPORT 120 /* Protocol not supported */
|
|
||||||
#define ESOCKTNOSUPPORT 121 /* Socket type not supported */
|
|
||||||
#define EOPNOTSUPP 122 /* Operation not supported on transport endpoint */
|
|
||||||
#define EPFNOSUPPORT 123 /* Protocol family not supported */
|
|
||||||
#define EAFNOSUPPORT 124 /* Address family not supported by protocol */
|
|
||||||
#define EADDRINUSE 125 /* Address already in use */
|
|
||||||
#define EADDRNOTAVAIL 126 /* Cannot assign requested address */
|
|
||||||
#define ENETDOWN 127 /* Network is down */
|
|
||||||
#define ENETUNREACH 128 /* Network is unreachable */
|
|
||||||
#define ENETRESET 129 /* Network dropped connection because of reset */
|
|
||||||
#define ECONNABORTED 130 /* Software caused connection abort */
|
|
||||||
#define ECONNRESET 131 /* Connection reset by peer */
|
|
||||||
#define ENOBUFS 132 /* No buffer space available */
|
|
||||||
#define EISCONN 133 /* Transport endpoint is already connected */
|
|
||||||
#define ENOTCONN 134 /* Transport endpoint is not connected */
|
|
||||||
#define EUCLEAN 135 /* Structure needs cleaning */
|
|
||||||
#define ENOTNAM 137 /* Not a XENIX named type file */
|
|
||||||
#define ENAVAIL 138 /* No XENIX semaphores available */
|
|
||||||
#define EISNAM 139 /* Is a named type file */
|
|
||||||
#define EREMOTEIO 140 /* Remote I/O error */
|
|
||||||
#define EINIT 141 /* Reserved */
|
|
||||||
#define EREMDEV 142 /* Error 142 */
|
|
||||||
#define ESHUTDOWN 143 /* Cannot send after transport endpoint shutdown */
|
|
||||||
#define ETOOMANYREFS 144 /* Too many references: cannot splice */
|
|
||||||
#define ETIMEDOUT 145 /* Connection timed out */
|
|
||||||
#define ECONNREFUSED 146 /* Connection refused */
|
|
||||||
#define EHOSTDOWN 147 /* Host is down */
|
|
||||||
#define EHOSTUNREACH 148 /* No route to host */
|
|
||||||
#define EWOULDBLOCK EAGAIN /* Operation would block */
|
|
||||||
#define EALREADY 149 /* Operation already in progress */
|
|
||||||
#define EINPROGRESS 150 /* Operation now in progress */
|
|
||||||
#define ESTALE 151 /* Stale NFS file handle */
|
|
||||||
#define ECANCELED 158 /* AIO operation canceled */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* These error are Linux extensions.
|
|
||||||
*/
|
|
||||||
#define ENOMEDIUM 159 /* No medium found */
|
|
||||||
#define EMEDIUMTYPE 160 /* Wrong medium type */
|
|
||||||
#define ENOKEY 161 /* Required key not available */
|
|
||||||
#define EKEYEXPIRED 162 /* Key has expired */
|
|
||||||
#define EKEYREVOKED 163 /* Key has been revoked */
|
|
||||||
#define EKEYREJECTED 164 /* Key was rejected by service */
|
|
||||||
|
|
||||||
/* for robust mutexes */
|
|
||||||
#define EOWNERDEAD 165 /* Owner died */
|
|
||||||
#define ENOTRECOVERABLE 166 /* State not recoverable */
|
|
||||||
|
|
||||||
#define ERFKILL 167 /* Operation not possible due to RF-kill */
|
|
||||||
|
|
||||||
#define EHWPOISON 168 /* Memory page has hardware error */
|
|
||||||
|
|
||||||
#define EDQUOT 1133 /* Quota exceeded */
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
/* The biggest error number defined here or in <linux/errno.h>. */
|
/* The biggest error number defined here or in <linux/errno.h>. */
|
||||||
#define EMAXERRNO 1133
|
#define EMAXERRNO 1133
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* _ASM_ERRNO_H */
|
#endif /* _ASM_ERRNO_H */
|
||||||
|
|
|
@ -9,115 +9,12 @@
|
||||||
#ifndef _ASM_PTRACE_H
|
#ifndef _ASM_PTRACE_H
|
||||||
#define _ASM_PTRACE_H
|
#define _ASM_PTRACE_H
|
||||||
|
|
||||||
/* 0 - 31 are integer registers, 32 - 63 are fp registers. */
|
|
||||||
#define FPR_BASE 32
|
|
||||||
#define PC 64
|
|
||||||
#define CAUSE 65
|
|
||||||
#define BADVADDR 66
|
|
||||||
#define MMHI 67
|
|
||||||
#define MMLO 68
|
|
||||||
#define FPC_CSR 69
|
|
||||||
#define FPC_EIR 70
|
|
||||||
#define DSP_BASE 71 /* 3 more hi / lo register pairs */
|
|
||||||
#define DSP_CONTROL 77
|
|
||||||
#define ACX 78
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This struct defines the way the registers are stored on the stack during a
|
|
||||||
* system call/exception. As usual the registers k0/k1 aren't being saved.
|
|
||||||
*/
|
|
||||||
struct pt_regs {
|
|
||||||
#ifdef CONFIG_32BIT
|
|
||||||
/* Pad bytes for argument save space on the stack. */
|
|
||||||
unsigned long pad0[6];
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Saved main processor registers. */
|
|
||||||
unsigned long regs[32];
|
|
||||||
|
|
||||||
/* Saved special registers. */
|
|
||||||
unsigned long cp0_status;
|
|
||||||
unsigned long hi;
|
|
||||||
unsigned long lo;
|
|
||||||
#ifdef CONFIG_CPU_HAS_SMARTMIPS
|
|
||||||
unsigned long acx;
|
|
||||||
#endif
|
|
||||||
unsigned long cp0_badvaddr;
|
|
||||||
unsigned long cp0_cause;
|
|
||||||
unsigned long cp0_epc;
|
|
||||||
#ifdef CONFIG_MIPS_MT_SMTC
|
|
||||||
unsigned long cp0_tcstatus;
|
|
||||||
#endif /* CONFIG_MIPS_MT_SMTC */
|
|
||||||
#ifdef CONFIG_CPU_CAVIUM_OCTEON
|
|
||||||
unsigned long long mpl[3]; /* MTM{0,1,2} */
|
|
||||||
unsigned long long mtp[3]; /* MTP{0,1,2} */
|
|
||||||
#endif
|
|
||||||
} __attribute__ ((aligned (8)));
|
|
||||||
|
|
||||||
/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
|
|
||||||
#define PTRACE_GETREGS 12
|
|
||||||
#define PTRACE_SETREGS 13
|
|
||||||
#define PTRACE_GETFPREGS 14
|
|
||||||
#define PTRACE_SETFPREGS 15
|
|
||||||
/* #define PTRACE_GETFPXREGS 18 */
|
|
||||||
/* #define PTRACE_SETFPXREGS 19 */
|
|
||||||
|
|
||||||
#define PTRACE_OLDSETOPTIONS 21
|
|
||||||
|
|
||||||
#define PTRACE_GET_THREAD_AREA 25
|
|
||||||
#define PTRACE_SET_THREAD_AREA 26
|
|
||||||
|
|
||||||
/* Calls to trace a 64bit program from a 32bit program. */
|
|
||||||
#define PTRACE_PEEKTEXT_3264 0xc0
|
|
||||||
#define PTRACE_PEEKDATA_3264 0xc1
|
|
||||||
#define PTRACE_POKETEXT_3264 0xc2
|
|
||||||
#define PTRACE_POKEDATA_3264 0xc3
|
|
||||||
#define PTRACE_GET_THREAD_AREA_3264 0xc4
|
|
||||||
|
|
||||||
/* Read and write watchpoint registers. */
|
|
||||||
enum pt_watch_style {
|
|
||||||
pt_watch_style_mips32,
|
|
||||||
pt_watch_style_mips64
|
|
||||||
};
|
|
||||||
struct mips32_watch_regs {
|
|
||||||
unsigned int watchlo[8];
|
|
||||||
/* Lower 16 bits of watchhi. */
|
|
||||||
unsigned short watchhi[8];
|
|
||||||
/* Valid mask and I R W bits.
|
|
||||||
* bit 0 -- 1 if W bit is usable.
|
|
||||||
* bit 1 -- 1 if R bit is usable.
|
|
||||||
* bit 2 -- 1 if I bit is usable.
|
|
||||||
* bits 3 - 11 -- Valid watchhi mask bits.
|
|
||||||
*/
|
|
||||||
unsigned short watch_masks[8];
|
|
||||||
/* The number of valid watch register pairs. */
|
|
||||||
unsigned int num_valid;
|
|
||||||
} __attribute__((aligned(8)));
|
|
||||||
|
|
||||||
struct mips64_watch_regs {
|
|
||||||
unsigned long long watchlo[8];
|
|
||||||
unsigned short watchhi[8];
|
|
||||||
unsigned short watch_masks[8];
|
|
||||||
unsigned int num_valid;
|
|
||||||
} __attribute__((aligned(8)));
|
|
||||||
|
|
||||||
struct pt_watch_regs {
|
|
||||||
enum pt_watch_style style;
|
|
||||||
union {
|
|
||||||
struct mips32_watch_regs mips32;
|
|
||||||
struct mips64_watch_regs mips64;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
#define PTRACE_GET_WATCH_REGS 0xd0
|
|
||||||
#define PTRACE_SET_WATCH_REGS 0xd1
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
#include <linux/compiler.h>
|
#include <linux/compiler.h>
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
#include <asm/isadep.h>
|
#include <asm/isadep.h>
|
||||||
|
#include <uapi/asm/ptrace.h>
|
||||||
|
|
||||||
struct task_struct;
|
struct task_struct;
|
||||||
|
|
||||||
|
@ -164,6 +61,4 @@ static inline void die_if_kernel(const char *str, struct pt_regs *regs)
|
||||||
die(str, regs);
|
die(str, regs);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* _ASM_PTRACE_H */
|
#endif /* _ASM_PTRACE_H */
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
#ifndef _MIPS_SETUP_H
|
#ifndef _MIPS_SETUP_H
|
||||||
#define _MIPS_SETUP_H
|
#define _MIPS_SETUP_H
|
||||||
|
|
||||||
#define COMMAND_LINE_SIZE 4096
|
#include <uapi/asm/setup.h>
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
extern void setup_early_printk(void);
|
extern void setup_early_printk(void);
|
||||||
|
|
||||||
extern void set_handler(unsigned long offset, void *addr, unsigned long len);
|
extern void set_handler(unsigned long offset, void *addr, unsigned long len);
|
||||||
|
@ -17,6 +16,4 @@ extern unsigned long ebase;
|
||||||
extern void per_cpu_trap_init(bool);
|
extern void per_cpu_trap_init(bool);
|
||||||
extern void cpu_cache_init(void);
|
extern void cpu_cache_init(void);
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* __SETUP_H */
|
#endif /* __SETUP_H */
|
||||||
|
|
|
@ -9,71 +9,10 @@
|
||||||
#ifndef _ASM_SIGCONTEXT_H
|
#ifndef _ASM_SIGCONTEXT_H
|
||||||
#define _ASM_SIGCONTEXT_H
|
#define _ASM_SIGCONTEXT_H
|
||||||
|
|
||||||
#include <linux/types.h>
|
#include <uapi/asm/sigcontext.h>
|
||||||
#include <asm/sgidefs.h>
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _MIPS_SIM_ABI32
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Keep this struct definition in sync with the sigcontext fragment
|
|
||||||
* in arch/mips/tools/offset.c
|
|
||||||
*/
|
|
||||||
struct sigcontext {
|
|
||||||
unsigned int sc_regmask; /* Unused */
|
|
||||||
unsigned int sc_status; /* Unused */
|
|
||||||
unsigned long long sc_pc;
|
|
||||||
unsigned long long sc_regs[32];
|
|
||||||
unsigned long long sc_fpregs[32];
|
|
||||||
unsigned int sc_acx; /* Was sc_ownedfp */
|
|
||||||
unsigned int sc_fpc_csr;
|
|
||||||
unsigned int sc_fpc_eir; /* Unused */
|
|
||||||
unsigned int sc_used_math;
|
|
||||||
unsigned int sc_dsp; /* dsp status, was sc_ssflags */
|
|
||||||
unsigned long long sc_mdhi;
|
|
||||||
unsigned long long sc_mdlo;
|
|
||||||
unsigned long sc_hi1; /* Was sc_cause */
|
|
||||||
unsigned long sc_lo1; /* Was sc_badvaddr */
|
|
||||||
unsigned long sc_hi2; /* Was sc_sigset[4] */
|
|
||||||
unsigned long sc_lo2;
|
|
||||||
unsigned long sc_hi3;
|
|
||||||
unsigned long sc_lo3;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
|
|
||||||
|
|
||||||
#if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
|
#if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
|
||||||
|
|
||||||
#include <linux/posix_types.h>
|
|
||||||
/*
|
|
||||||
* Keep this struct definition in sync with the sigcontext fragment
|
|
||||||
* in arch/mips/tools/offset.c
|
|
||||||
*
|
|
||||||
* Warning: this structure illdefined with sc_badvaddr being just an unsigned
|
|
||||||
* int so it was changed to unsigned long in 2.6.0-test1. This may break
|
|
||||||
* binary compatibility - no prisoners.
|
|
||||||
* DSP ASE in 2.6.12-rc4. Turn sc_mdhi and sc_mdlo into an array of four
|
|
||||||
* entries, add sc_dsp and sc_reserved for padding. No prisoners.
|
|
||||||
*/
|
|
||||||
struct sigcontext {
|
|
||||||
__u64 sc_regs[32];
|
|
||||||
__u64 sc_fpregs[32];
|
|
||||||
__u64 sc_mdhi;
|
|
||||||
__u64 sc_hi1;
|
|
||||||
__u64 sc_hi2;
|
|
||||||
__u64 sc_hi3;
|
|
||||||
__u64 sc_mdlo;
|
|
||||||
__u64 sc_lo1;
|
|
||||||
__u64 sc_lo2;
|
|
||||||
__u64 sc_lo3;
|
|
||||||
__u64 sc_pc;
|
|
||||||
__u32 sc_fpc_csr;
|
|
||||||
__u32 sc_used_math;
|
|
||||||
__u32 sc_dsp;
|
|
||||||
__u32 sc_reserved;
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
struct sigcontext32 {
|
struct sigcontext32 {
|
||||||
__u32 sc_regmask; /* Unused */
|
__u32 sc_regmask; /* Unused */
|
||||||
__u32 sc_status; /* Unused */
|
__u32 sc_status; /* Unused */
|
||||||
|
@ -94,8 +33,5 @@ struct sigcontext32 {
|
||||||
__u32 sc_hi3;
|
__u32 sc_hi3;
|
||||||
__u32 sc_lo3;
|
__u32 sc_lo3;
|
||||||
};
|
};
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
|
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
|
||||||
|
|
||||||
#endif /* _ASM_SIGCONTEXT_H */
|
#endif /* _ASM_SIGCONTEXT_H */
|
||||||
|
|
|
@ -9,108 +9,8 @@
|
||||||
#ifndef _ASM_SIGINFO_H
|
#ifndef _ASM_SIGINFO_H
|
||||||
#define _ASM_SIGINFO_H
|
#define _ASM_SIGINFO_H
|
||||||
|
|
||||||
|
#include <uapi/asm/siginfo.h>
|
||||||
|
|
||||||
#define __ARCH_SIGEV_PREAMBLE_SIZE (sizeof(long) + 2*sizeof(int))
|
|
||||||
#undef __ARCH_SI_TRAPNO /* exception code needs to fill this ... */
|
|
||||||
|
|
||||||
#define HAVE_ARCH_SIGINFO_T
|
|
||||||
|
|
||||||
/*
|
|
||||||
* We duplicate the generic versions - <asm-generic/siginfo.h> is just borked
|
|
||||||
* by design ...
|
|
||||||
*/
|
|
||||||
#define HAVE_ARCH_COPY_SIGINFO
|
|
||||||
struct siginfo;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Careful to keep union _sifields from shifting ...
|
|
||||||
*/
|
|
||||||
#ifdef CONFIG_32BIT
|
|
||||||
#define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int))
|
|
||||||
#endif
|
|
||||||
#ifdef CONFIG_64BIT
|
|
||||||
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <asm-generic/siginfo.h>
|
|
||||||
|
|
||||||
typedef struct siginfo {
|
|
||||||
int si_signo;
|
|
||||||
int si_code;
|
|
||||||
int si_errno;
|
|
||||||
int __pad0[SI_MAX_SIZE / sizeof(int) - SI_PAD_SIZE - 3];
|
|
||||||
|
|
||||||
union {
|
|
||||||
int _pad[SI_PAD_SIZE];
|
|
||||||
|
|
||||||
/* kill() */
|
|
||||||
struct {
|
|
||||||
pid_t _pid; /* sender's pid */
|
|
||||||
__ARCH_SI_UID_T _uid; /* sender's uid */
|
|
||||||
} _kill;
|
|
||||||
|
|
||||||
/* POSIX.1b timers */
|
|
||||||
struct {
|
|
||||||
timer_t _tid; /* timer id */
|
|
||||||
int _overrun; /* overrun count */
|
|
||||||
char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)];
|
|
||||||
sigval_t _sigval; /* same as below */
|
|
||||||
int _sys_private; /* not to be passed to user */
|
|
||||||
} _timer;
|
|
||||||
|
|
||||||
/* POSIX.1b signals */
|
|
||||||
struct {
|
|
||||||
pid_t _pid; /* sender's pid */
|
|
||||||
__ARCH_SI_UID_T _uid; /* sender's uid */
|
|
||||||
sigval_t _sigval;
|
|
||||||
} _rt;
|
|
||||||
|
|
||||||
/* SIGCHLD */
|
|
||||||
struct {
|
|
||||||
pid_t _pid; /* which child */
|
|
||||||
__ARCH_SI_UID_T _uid; /* sender's uid */
|
|
||||||
int _status; /* exit code */
|
|
||||||
clock_t _utime;
|
|
||||||
clock_t _stime;
|
|
||||||
} _sigchld;
|
|
||||||
|
|
||||||
/* IRIX SIGCHLD */
|
|
||||||
struct {
|
|
||||||
pid_t _pid; /* which child */
|
|
||||||
clock_t _utime;
|
|
||||||
int _status; /* exit code */
|
|
||||||
clock_t _stime;
|
|
||||||
} _irix_sigchld;
|
|
||||||
|
|
||||||
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
|
|
||||||
struct {
|
|
||||||
void __user *_addr; /* faulting insn/memory ref. */
|
|
||||||
#ifdef __ARCH_SI_TRAPNO
|
|
||||||
int _trapno; /* TRAP # which caused the signal */
|
|
||||||
#endif
|
|
||||||
short _addr_lsb;
|
|
||||||
} _sigfault;
|
|
||||||
|
|
||||||
/* SIGPOLL, SIGXFSZ (To do ...) */
|
|
||||||
struct {
|
|
||||||
__ARCH_SI_BAND_T _band; /* POLL_IN, POLL_OUT, POLL_MSG */
|
|
||||||
int _fd;
|
|
||||||
} _sigpoll;
|
|
||||||
} _sifields;
|
|
||||||
} siginfo_t;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* si_code values
|
|
||||||
* Again these have been chosen to be IRIX compatible.
|
|
||||||
*/
|
|
||||||
#undef SI_ASYNCIO
|
|
||||||
#undef SI_TIMER
|
|
||||||
#undef SI_MESGQ
|
|
||||||
#define SI_ASYNCIO -2 /* sent by AIO completion */
|
|
||||||
#define SI_TIMER __SI_CODE(__SI_TIMER, -3) /* sent by timer expiration */
|
|
||||||
#define SI_MESGQ __SI_CODE(__SI_MESGQ, -4) /* sent by real time mesq state change */
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Duplicated here because of <asm-generic/siginfo.h> braindamage ...
|
* Duplicated here because of <asm-generic/siginfo.h> braindamage ...
|
||||||
|
@ -126,6 +26,4 @@ static inline void copy_siginfo(struct siginfo *to, struct siginfo *from)
|
||||||
memcpy(to, from, 3*sizeof(int) + sizeof(from->_sifields._sigchld));
|
memcpy(to, from, 3*sizeof(int) + sizeof(from->_sifields._sigchld));
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* _ASM_SIGINFO_H */
|
#endif /* _ASM_SIGINFO_H */
|
||||||
|
|
|
@ -9,93 +9,8 @@
|
||||||
#ifndef _ASM_SIGNAL_H
|
#ifndef _ASM_SIGNAL_H
|
||||||
#define _ASM_SIGNAL_H
|
#define _ASM_SIGNAL_H
|
||||||
|
|
||||||
#include <linux/types.h>
|
#include <uapi/asm/signal.h>
|
||||||
|
|
||||||
#define _NSIG 128
|
|
||||||
#define _NSIG_BPW (sizeof(unsigned long) * 8)
|
|
||||||
#define _NSIG_WORDS (_NSIG / _NSIG_BPW)
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
unsigned long sig[_NSIG_WORDS];
|
|
||||||
} sigset_t;
|
|
||||||
|
|
||||||
typedef unsigned long old_sigset_t; /* at least 32 bits */
|
|
||||||
|
|
||||||
#define SIGHUP 1 /* Hangup (POSIX). */
|
|
||||||
#define SIGINT 2 /* Interrupt (ANSI). */
|
|
||||||
#define SIGQUIT 3 /* Quit (POSIX). */
|
|
||||||
#define SIGILL 4 /* Illegal instruction (ANSI). */
|
|
||||||
#define SIGTRAP 5 /* Trace trap (POSIX). */
|
|
||||||
#define SIGIOT 6 /* IOT trap (4.2 BSD). */
|
|
||||||
#define SIGABRT SIGIOT /* Abort (ANSI). */
|
|
||||||
#define SIGEMT 7
|
|
||||||
#define SIGFPE 8 /* Floating-point exception (ANSI). */
|
|
||||||
#define SIGKILL 9 /* Kill, unblockable (POSIX). */
|
|
||||||
#define SIGBUS 10 /* BUS error (4.2 BSD). */
|
|
||||||
#define SIGSEGV 11 /* Segmentation violation (ANSI). */
|
|
||||||
#define SIGSYS 12
|
|
||||||
#define SIGPIPE 13 /* Broken pipe (POSIX). */
|
|
||||||
#define SIGALRM 14 /* Alarm clock (POSIX). */
|
|
||||||
#define SIGTERM 15 /* Termination (ANSI). */
|
|
||||||
#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */
|
|
||||||
#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */
|
|
||||||
#define SIGCHLD 18 /* Child status has changed (POSIX). */
|
|
||||||
#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
|
|
||||||
#define SIGPWR 19 /* Power failure restart (System V). */
|
|
||||||
#define SIGWINCH 20 /* Window size change (4.3 BSD, Sun). */
|
|
||||||
#define SIGURG 21 /* Urgent condition on socket (4.2 BSD). */
|
|
||||||
#define SIGIO 22 /* I/O now possible (4.2 BSD). */
|
|
||||||
#define SIGPOLL SIGIO /* Pollable event occurred (System V). */
|
|
||||||
#define SIGSTOP 23 /* Stop, unblockable (POSIX). */
|
|
||||||
#define SIGTSTP 24 /* Keyboard stop (POSIX). */
|
|
||||||
#define SIGCONT 25 /* Continue (POSIX). */
|
|
||||||
#define SIGTTIN 26 /* Background read from tty (POSIX). */
|
|
||||||
#define SIGTTOU 27 /* Background write to tty (POSIX). */
|
|
||||||
#define SIGVTALRM 28 /* Virtual alarm clock (4.2 BSD). */
|
|
||||||
#define SIGPROF 29 /* Profiling alarm clock (4.2 BSD). */
|
|
||||||
#define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */
|
|
||||||
#define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */
|
|
||||||
|
|
||||||
/* These should not be considered constants from userland. */
|
|
||||||
#define SIGRTMIN 32
|
|
||||||
#define SIGRTMAX _NSIG
|
|
||||||
|
|
||||||
/*
|
|
||||||
* SA_FLAGS values:
|
|
||||||
*
|
|
||||||
* SA_ONSTACK indicates that a registered stack_t will be used.
|
|
||||||
* SA_RESTART flag to get restarting signals (which were the default long ago)
|
|
||||||
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
|
|
||||||
* SA_RESETHAND clears the handler when the signal is delivered.
|
|
||||||
* SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
|
|
||||||
* SA_NODEFER prevents the current signal from being masked in the handler.
|
|
||||||
*
|
|
||||||
* SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
|
|
||||||
* Unix names RESETHAND and NODEFER respectively.
|
|
||||||
*/
|
|
||||||
#define SA_ONSTACK 0x08000000
|
|
||||||
#define SA_RESETHAND 0x80000000
|
|
||||||
#define SA_RESTART 0x10000000
|
|
||||||
#define SA_SIGINFO 0x00000008
|
|
||||||
#define SA_NODEFER 0x40000000
|
|
||||||
#define SA_NOCLDWAIT 0x00010000
|
|
||||||
#define SA_NOCLDSTOP 0x00000001
|
|
||||||
|
|
||||||
#define SA_NOMASK SA_NODEFER
|
|
||||||
#define SA_ONESHOT SA_RESETHAND
|
|
||||||
|
|
||||||
#define SA_RESTORER 0x04000000 /* Only for o32 */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* sigaltstack controls
|
|
||||||
*/
|
|
||||||
#define SS_ONSTACK 1
|
|
||||||
#define SS_DISABLE 2
|
|
||||||
|
|
||||||
#define MINSIGSTKSZ 2048
|
|
||||||
#define SIGSTKSZ 8192
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
#ifdef CONFIG_TRAD_SIGNALS
|
#ifdef CONFIG_TRAD_SIGNALS
|
||||||
#define sig_uses_siginfo(ka) ((ka)->sa.sa_flags & SA_SIGINFO)
|
#define sig_uses_siginfo(ka) ((ka)->sa.sa_flags & SA_SIGINFO)
|
||||||
|
@ -103,37 +18,9 @@ typedef unsigned long old_sigset_t; /* at least 32 bits */
|
||||||
#define sig_uses_siginfo(ka) (1)
|
#define sig_uses_siginfo(ka) (1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#define SIG_BLOCK 1 /* for blocking signals */
|
|
||||||
#define SIG_UNBLOCK 2 /* for unblocking signals */
|
|
||||||
#define SIG_SETMASK 3 /* for setting the signal mask */
|
|
||||||
|
|
||||||
#include <asm-generic/signal-defs.h>
|
|
||||||
|
|
||||||
struct sigaction {
|
|
||||||
unsigned int sa_flags;
|
|
||||||
__sighandler_t sa_handler;
|
|
||||||
sigset_t sa_mask;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct k_sigaction {
|
|
||||||
struct sigaction sa;
|
|
||||||
};
|
|
||||||
|
|
||||||
/* IRIX compatible stack_t */
|
|
||||||
typedef struct sigaltstack {
|
|
||||||
void __user *ss_sp;
|
|
||||||
size_t ss_size;
|
|
||||||
int ss_flags;
|
|
||||||
} stack_t;
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
#include <asm/sigcontext.h>
|
#include <asm/sigcontext.h>
|
||||||
#include <asm/siginfo.h>
|
#include <asm/siginfo.h>
|
||||||
|
|
||||||
#define ptrace_signal_deliver(regs, cookie) do { } while (0)
|
#define ptrace_signal_deliver(regs, cookie) do { } while (0)
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* _ASM_SIGNAL_H */
|
#endif /* _ASM_SIGNAL_H */
|
||||||
|
|
|
@ -9,87 +9,8 @@
|
||||||
#ifndef _ASM_SOCKET_H
|
#ifndef _ASM_SOCKET_H
|
||||||
#define _ASM_SOCKET_H
|
#define _ASM_SOCKET_H
|
||||||
|
|
||||||
#include <asm/sockios.h>
|
#include <uapi/asm/socket.h>
|
||||||
|
|
||||||
/*
|
|
||||||
* For setsockopt(2)
|
|
||||||
*
|
|
||||||
* This defines are ABI conformant as far as Linux supports these ...
|
|
||||||
*/
|
|
||||||
#define SOL_SOCKET 0xffff
|
|
||||||
|
|
||||||
#define SO_DEBUG 0x0001 /* Record debugging information. */
|
|
||||||
#define SO_REUSEADDR 0x0004 /* Allow reuse of local addresses. */
|
|
||||||
#define SO_KEEPALIVE 0x0008 /* Keep connections alive and send
|
|
||||||
SIGPIPE when they die. */
|
|
||||||
#define SO_DONTROUTE 0x0010 /* Don't do local routing. */
|
|
||||||
#define SO_BROADCAST 0x0020 /* Allow transmission of
|
|
||||||
broadcast messages. */
|
|
||||||
#define SO_LINGER 0x0080 /* Block on close of a reliable
|
|
||||||
socket to transmit pending data. */
|
|
||||||
#define SO_OOBINLINE 0x0100 /* Receive out-of-band data in-band. */
|
|
||||||
#if 0
|
|
||||||
To add: #define SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define SO_TYPE 0x1008 /* Compatible name for SO_STYLE. */
|
|
||||||
#define SO_STYLE SO_TYPE /* Synonym */
|
|
||||||
#define SO_ERROR 0x1007 /* get error status and clear */
|
|
||||||
#define SO_SNDBUF 0x1001 /* Send buffer size. */
|
|
||||||
#define SO_RCVBUF 0x1002 /* Receive buffer. */
|
|
||||||
#define SO_SNDLOWAT 0x1003 /* send low-water mark */
|
|
||||||
#define SO_RCVLOWAT 0x1004 /* receive low-water mark */
|
|
||||||
#define SO_SNDTIMEO 0x1005 /* send timeout */
|
|
||||||
#define SO_RCVTIMEO 0x1006 /* receive timeout */
|
|
||||||
#define SO_ACCEPTCONN 0x1009
|
|
||||||
#define SO_PROTOCOL 0x1028 /* protocol type */
|
|
||||||
#define SO_DOMAIN 0x1029 /* domain/socket family */
|
|
||||||
|
|
||||||
/* linux-specific, might as well be the same as on i386 */
|
|
||||||
#define SO_NO_CHECK 11
|
|
||||||
#define SO_PRIORITY 12
|
|
||||||
#define SO_BSDCOMPAT 14
|
|
||||||
|
|
||||||
#define SO_PASSCRED 17
|
|
||||||
#define SO_PEERCRED 18
|
|
||||||
|
|
||||||
/* Security levels - as per NRL IPv6 - don't actually do anything */
|
|
||||||
#define SO_SECURITY_AUTHENTICATION 22
|
|
||||||
#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
|
|
||||||
#define SO_SECURITY_ENCRYPTION_NETWORK 24
|
|
||||||
|
|
||||||
#define SO_BINDTODEVICE 25
|
|
||||||
|
|
||||||
/* Socket filtering */
|
|
||||||
#define SO_ATTACH_FILTER 26
|
|
||||||
#define SO_DETACH_FILTER 27
|
|
||||||
|
|
||||||
#define SO_PEERNAME 28
|
|
||||||
#define SO_TIMESTAMP 29
|
|
||||||
#define SCM_TIMESTAMP SO_TIMESTAMP
|
|
||||||
|
|
||||||
#define SO_PEERSEC 30
|
|
||||||
#define SO_SNDBUFFORCE 31
|
|
||||||
#define SO_RCVBUFFORCE 33
|
|
||||||
#define SO_PASSSEC 34
|
|
||||||
#define SO_TIMESTAMPNS 35
|
|
||||||
#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
|
|
||||||
|
|
||||||
#define SO_MARK 36
|
|
||||||
|
|
||||||
#define SO_TIMESTAMPING 37
|
|
||||||
#define SCM_TIMESTAMPING SO_TIMESTAMPING
|
|
||||||
|
|
||||||
#define SO_RXQ_OVFL 40
|
|
||||||
|
|
||||||
#define SO_WIFI_STATUS 41
|
|
||||||
#define SCM_WIFI_STATUS SO_WIFI_STATUS
|
|
||||||
#define SO_PEEK_OFF 42
|
|
||||||
|
|
||||||
/* Instruct lower device to use last 4-bytes of skb data as FCS */
|
|
||||||
#define SO_NOFCS 43
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
/** sock_type - Socket types
|
/** sock_type - Socket types
|
||||||
*
|
*
|
||||||
|
@ -126,6 +47,4 @@ enum sock_type {
|
||||||
|
|
||||||
#define ARCH_HAS_SOCKET_TYPES 1
|
#define ARCH_HAS_SOCKET_TYPES 1
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* _ASM_SOCKET_H */
|
#endif /* _ASM_SOCKET_H */
|
||||||
|
|
|
@ -9,58 +9,8 @@
|
||||||
#ifndef _ASM_TERMIOS_H
|
#ifndef _ASM_TERMIOS_H
|
||||||
#define _ASM_TERMIOS_H
|
#define _ASM_TERMIOS_H
|
||||||
|
|
||||||
#include <linux/errno.h>
|
|
||||||
#include <asm/termbits.h>
|
|
||||||
#include <asm/ioctls.h>
|
|
||||||
|
|
||||||
struct sgttyb {
|
|
||||||
char sg_ispeed;
|
|
||||||
char sg_ospeed;
|
|
||||||
char sg_erase;
|
|
||||||
char sg_kill;
|
|
||||||
int sg_flags; /* SGI special - int, not short */
|
|
||||||
};
|
|
||||||
|
|
||||||
struct tchars {
|
|
||||||
char t_intrc;
|
|
||||||
char t_quitc;
|
|
||||||
char t_startc;
|
|
||||||
char t_stopc;
|
|
||||||
char t_eofc;
|
|
||||||
char t_brkc;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct ltchars {
|
|
||||||
char t_suspc; /* stop process signal */
|
|
||||||
char t_dsuspc; /* delayed stop process signal */
|
|
||||||
char t_rprntc; /* reprint line */
|
|
||||||
char t_flushc; /* flush output (toggles) */
|
|
||||||
char t_werasc; /* word erase */
|
|
||||||
char t_lnextc; /* literal next character */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* TIOCGSIZE, TIOCSSIZE not defined yet. Only needed for SunOS source
|
|
||||||
compatibility anyway ... */
|
|
||||||
|
|
||||||
struct winsize {
|
|
||||||
unsigned short ws_row;
|
|
||||||
unsigned short ws_col;
|
|
||||||
unsigned short ws_xpixel;
|
|
||||||
unsigned short ws_ypixel;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define NCC 8
|
|
||||||
struct termio {
|
|
||||||
unsigned short c_iflag; /* input mode flags */
|
|
||||||
unsigned short c_oflag; /* output mode flags */
|
|
||||||
unsigned short c_cflag; /* control mode flags */
|
|
||||||
unsigned short c_lflag; /* local mode flags */
|
|
||||||
char c_line; /* line discipline */
|
|
||||||
unsigned char c_cc[NCCS]; /* control characters */
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
#include <asm/uaccess.h>
|
#include <asm/uaccess.h>
|
||||||
|
#include <uapi/asm/termios.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* intr=^C quit=^\ erase=del kill=^U
|
* intr=^C quit=^\ erase=del kill=^U
|
||||||
|
@ -70,25 +20,6 @@ struct termio {
|
||||||
* eof=^D eol=\0
|
* eof=^D eol=\0
|
||||||
*/
|
*/
|
||||||
#define INIT_C_CC "\003\034\177\025\1\0\0\0\021\023\032\0\022\017\027\026\004\0"
|
#define INIT_C_CC "\003\034\177\025\1\0\0\0\021\023\032\0\022\017\027\026\004\0"
|
||||||
#endif
|
|
||||||
|
|
||||||
/* modem lines */
|
|
||||||
#define TIOCM_LE 0x001 /* line enable */
|
|
||||||
#define TIOCM_DTR 0x002 /* data terminal ready */
|
|
||||||
#define TIOCM_RTS 0x004 /* request to send */
|
|
||||||
#define TIOCM_ST 0x010 /* secondary transmit */
|
|
||||||
#define TIOCM_SR 0x020 /* secondary receive */
|
|
||||||
#define TIOCM_CTS 0x040 /* clear to send */
|
|
||||||
#define TIOCM_CAR 0x100 /* carrier detect */
|
|
||||||
#define TIOCM_CD TIOCM_CAR
|
|
||||||
#define TIOCM_RNG 0x200 /* ring */
|
|
||||||
#define TIOCM_RI TIOCM_RNG
|
|
||||||
#define TIOCM_DSR 0x400 /* data set ready */
|
|
||||||
#define TIOCM_OUT1 0x2000
|
|
||||||
#define TIOCM_OUT2 0x4000
|
|
||||||
#define TIOCM_LOOP 0x8000
|
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
|
|
||||||
#include <linux/string.h>
|
#include <linux/string.h>
|
||||||
|
|
||||||
|
@ -171,6 +102,4 @@ static inline int kernel_termios_to_user_termios_1(struct termios __user *u,
|
||||||
return copy_to_user(u, k, sizeof(struct termios)) ? -EFAULT : 0;
|
return copy_to_user(u, k, sizeof(struct termios)) ? -EFAULT : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* defined(__KERNEL__) */
|
|
||||||
|
|
||||||
#endif /* _ASM_TERMIOS_H */
|
#endif /* _ASM_TERMIOS_H */
|
||||||
|
|
|
@ -11,24 +11,12 @@
|
||||||
#ifndef _ASM_TYPES_H
|
#ifndef _ASM_TYPES_H
|
||||||
#define _ASM_TYPES_H
|
#define _ASM_TYPES_H
|
||||||
|
|
||||||
/*
|
|
||||||
* We don't use int-l64.h for the kernel anymore but still use it for
|
|
||||||
* userspace to avoid code changes.
|
|
||||||
*/
|
|
||||||
#ifdef __KERNEL__
|
|
||||||
# include <asm-generic/int-ll64.h>
|
# include <asm-generic/int-ll64.h>
|
||||||
#else
|
#include <uapi/asm/types.h>
|
||||||
# if _MIPS_SZLONG == 64
|
|
||||||
# include <asm-generic/int-l64.h>
|
|
||||||
# else
|
|
||||||
# include <asm-generic/int-ll64.h>
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* These aren't exported outside the kernel to avoid name space clashes
|
* These aren't exported outside the kernel to avoid name space clashes
|
||||||
*/
|
*/
|
||||||
#ifdef __KERNEL__
|
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -42,6 +30,4 @@ typedef unsigned long phys_t;
|
||||||
|
|
||||||
#endif /* __ASSEMBLY__ */
|
#endif /* __ASSEMBLY__ */
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
|
||||||
|
|
||||||
#endif /* _ASM_TYPES_H */
|
#endif /* _ASM_TYPES_H */
|
||||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -1,3 +1,37 @@
|
||||||
# UAPI Header export list
|
# UAPI Header export list
|
||||||
include include/uapi/asm-generic/Kbuild.asm
|
include include/uapi/asm-generic/Kbuild.asm
|
||||||
|
|
||||||
|
header-y += auxvec.h
|
||||||
|
header-y += bitsperlong.h
|
||||||
|
header-y += byteorder.h
|
||||||
|
header-y += cachectl.h
|
||||||
|
header-y += errno.h
|
||||||
|
header-y += fcntl.h
|
||||||
|
header-y += ioctl.h
|
||||||
|
header-y += ioctls.h
|
||||||
|
header-y += ipcbuf.h
|
||||||
|
header-y += kvm_para.h
|
||||||
|
header-y += mman.h
|
||||||
|
header-y += msgbuf.h
|
||||||
|
header-y += param.h
|
||||||
|
header-y += poll.h
|
||||||
|
header-y += posix_types.h
|
||||||
|
header-y += ptrace.h
|
||||||
|
header-y += resource.h
|
||||||
|
header-y += sembuf.h
|
||||||
|
header-y += setup.h
|
||||||
|
header-y += sgidefs.h
|
||||||
|
header-y += shmbuf.h
|
||||||
|
header-y += sigcontext.h
|
||||||
|
header-y += siginfo.h
|
||||||
|
header-y += signal.h
|
||||||
|
header-y += socket.h
|
||||||
|
header-y += sockios.h
|
||||||
|
header-y += stat.h
|
||||||
|
header-y += statfs.h
|
||||||
|
header-y += swab.h
|
||||||
|
header-y += sysmips.h
|
||||||
|
header-y += termbits.h
|
||||||
|
header-y += termios.h
|
||||||
|
header-y += types.h
|
||||||
|
header-y += unistd.h
|
||||||
|
|
|
@ -0,0 +1,129 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1995, 1999, 2001, 2002 by Ralf Baechle
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_ERRNO_H
|
||||||
|
#define _UAPI_ASM_ERRNO_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
* These error numbers are intended to be MIPS ABI compatible
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <asm-generic/errno-base.h>
|
||||||
|
|
||||||
|
#define ENOMSG 35 /* No message of desired type */
|
||||||
|
#define EIDRM 36 /* Identifier removed */
|
||||||
|
#define ECHRNG 37 /* Channel number out of range */
|
||||||
|
#define EL2NSYNC 38 /* Level 2 not synchronized */
|
||||||
|
#define EL3HLT 39 /* Level 3 halted */
|
||||||
|
#define EL3RST 40 /* Level 3 reset */
|
||||||
|
#define ELNRNG 41 /* Link number out of range */
|
||||||
|
#define EUNATCH 42 /* Protocol driver not attached */
|
||||||
|
#define ENOCSI 43 /* No CSI structure available */
|
||||||
|
#define EL2HLT 44 /* Level 2 halted */
|
||||||
|
#define EDEADLK 45 /* Resource deadlock would occur */
|
||||||
|
#define ENOLCK 46 /* No record locks available */
|
||||||
|
#define EBADE 50 /* Invalid exchange */
|
||||||
|
#define EBADR 51 /* Invalid request descriptor */
|
||||||
|
#define EXFULL 52 /* Exchange full */
|
||||||
|
#define ENOANO 53 /* No anode */
|
||||||
|
#define EBADRQC 54 /* Invalid request code */
|
||||||
|
#define EBADSLT 55 /* Invalid slot */
|
||||||
|
#define EDEADLOCK 56 /* File locking deadlock error */
|
||||||
|
#define EBFONT 59 /* Bad font file format */
|
||||||
|
#define ENOSTR 60 /* Device not a stream */
|
||||||
|
#define ENODATA 61 /* No data available */
|
||||||
|
#define ETIME 62 /* Timer expired */
|
||||||
|
#define ENOSR 63 /* Out of streams resources */
|
||||||
|
#define ENONET 64 /* Machine is not on the network */
|
||||||
|
#define ENOPKG 65 /* Package not installed */
|
||||||
|
#define EREMOTE 66 /* Object is remote */
|
||||||
|
#define ENOLINK 67 /* Link has been severed */
|
||||||
|
#define EADV 68 /* Advertise error */
|
||||||
|
#define ESRMNT 69 /* Srmount error */
|
||||||
|
#define ECOMM 70 /* Communication error on send */
|
||||||
|
#define EPROTO 71 /* Protocol error */
|
||||||
|
#define EDOTDOT 73 /* RFS specific error */
|
||||||
|
#define EMULTIHOP 74 /* Multihop attempted */
|
||||||
|
#define EBADMSG 77 /* Not a data message */
|
||||||
|
#define ENAMETOOLONG 78 /* File name too long */
|
||||||
|
#define EOVERFLOW 79 /* Value too large for defined data type */
|
||||||
|
#define ENOTUNIQ 80 /* Name not unique on network */
|
||||||
|
#define EBADFD 81 /* File descriptor in bad state */
|
||||||
|
#define EREMCHG 82 /* Remote address changed */
|
||||||
|
#define ELIBACC 83 /* Can not access a needed shared library */
|
||||||
|
#define ELIBBAD 84 /* Accessing a corrupted shared library */
|
||||||
|
#define ELIBSCN 85 /* .lib section in a.out corrupted */
|
||||||
|
#define ELIBMAX 86 /* Attempting to link in too many shared libraries */
|
||||||
|
#define ELIBEXEC 87 /* Cannot exec a shared library directly */
|
||||||
|
#define EILSEQ 88 /* Illegal byte sequence */
|
||||||
|
#define ENOSYS 89 /* Function not implemented */
|
||||||
|
#define ELOOP 90 /* Too many symbolic links encountered */
|
||||||
|
#define ERESTART 91 /* Interrupted system call should be restarted */
|
||||||
|
#define ESTRPIPE 92 /* Streams pipe error */
|
||||||
|
#define ENOTEMPTY 93 /* Directory not empty */
|
||||||
|
#define EUSERS 94 /* Too many users */
|
||||||
|
#define ENOTSOCK 95 /* Socket operation on non-socket */
|
||||||
|
#define EDESTADDRREQ 96 /* Destination address required */
|
||||||
|
#define EMSGSIZE 97 /* Message too long */
|
||||||
|
#define EPROTOTYPE 98 /* Protocol wrong type for socket */
|
||||||
|
#define ENOPROTOOPT 99 /* Protocol not available */
|
||||||
|
#define EPROTONOSUPPORT 120 /* Protocol not supported */
|
||||||
|
#define ESOCKTNOSUPPORT 121 /* Socket type not supported */
|
||||||
|
#define EOPNOTSUPP 122 /* Operation not supported on transport endpoint */
|
||||||
|
#define EPFNOSUPPORT 123 /* Protocol family not supported */
|
||||||
|
#define EAFNOSUPPORT 124 /* Address family not supported by protocol */
|
||||||
|
#define EADDRINUSE 125 /* Address already in use */
|
||||||
|
#define EADDRNOTAVAIL 126 /* Cannot assign requested address */
|
||||||
|
#define ENETDOWN 127 /* Network is down */
|
||||||
|
#define ENETUNREACH 128 /* Network is unreachable */
|
||||||
|
#define ENETRESET 129 /* Network dropped connection because of reset */
|
||||||
|
#define ECONNABORTED 130 /* Software caused connection abort */
|
||||||
|
#define ECONNRESET 131 /* Connection reset by peer */
|
||||||
|
#define ENOBUFS 132 /* No buffer space available */
|
||||||
|
#define EISCONN 133 /* Transport endpoint is already connected */
|
||||||
|
#define ENOTCONN 134 /* Transport endpoint is not connected */
|
||||||
|
#define EUCLEAN 135 /* Structure needs cleaning */
|
||||||
|
#define ENOTNAM 137 /* Not a XENIX named type file */
|
||||||
|
#define ENAVAIL 138 /* No XENIX semaphores available */
|
||||||
|
#define EISNAM 139 /* Is a named type file */
|
||||||
|
#define EREMOTEIO 140 /* Remote I/O error */
|
||||||
|
#define EINIT 141 /* Reserved */
|
||||||
|
#define EREMDEV 142 /* Error 142 */
|
||||||
|
#define ESHUTDOWN 143 /* Cannot send after transport endpoint shutdown */
|
||||||
|
#define ETOOMANYREFS 144 /* Too many references: cannot splice */
|
||||||
|
#define ETIMEDOUT 145 /* Connection timed out */
|
||||||
|
#define ECONNREFUSED 146 /* Connection refused */
|
||||||
|
#define EHOSTDOWN 147 /* Host is down */
|
||||||
|
#define EHOSTUNREACH 148 /* No route to host */
|
||||||
|
#define EWOULDBLOCK EAGAIN /* Operation would block */
|
||||||
|
#define EALREADY 149 /* Operation already in progress */
|
||||||
|
#define EINPROGRESS 150 /* Operation now in progress */
|
||||||
|
#define ESTALE 151 /* Stale NFS file handle */
|
||||||
|
#define ECANCELED 158 /* AIO operation canceled */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* These error are Linux extensions.
|
||||||
|
*/
|
||||||
|
#define ENOMEDIUM 159 /* No medium found */
|
||||||
|
#define EMEDIUMTYPE 160 /* Wrong medium type */
|
||||||
|
#define ENOKEY 161 /* Required key not available */
|
||||||
|
#define EKEYEXPIRED 162 /* Key has expired */
|
||||||
|
#define EKEYREVOKED 163 /* Key has been revoked */
|
||||||
|
#define EKEYREJECTED 164 /* Key was rejected by service */
|
||||||
|
|
||||||
|
/* for robust mutexes */
|
||||||
|
#define EOWNERDEAD 165 /* Owner died */
|
||||||
|
#define ENOTRECOVERABLE 166 /* State not recoverable */
|
||||||
|
|
||||||
|
#define ERFKILL 167 /* Operation not possible due to RF-kill */
|
||||||
|
|
||||||
|
#define EHWPOISON 168 /* Memory page has hardware error */
|
||||||
|
|
||||||
|
#define EDQUOT 1133 /* Quota exceeded */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_ERRNO_H */
|
|
@ -0,0 +1,116 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1994, 95, 96, 97, 98, 99, 2000 by Ralf Baechle
|
||||||
|
* Copyright (C) 1999, 2000 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_PTRACE_H
|
||||||
|
#define _UAPI_ASM_PTRACE_H
|
||||||
|
|
||||||
|
/* 0 - 31 are integer registers, 32 - 63 are fp registers. */
|
||||||
|
#define FPR_BASE 32
|
||||||
|
#define PC 64
|
||||||
|
#define CAUSE 65
|
||||||
|
#define BADVADDR 66
|
||||||
|
#define MMHI 67
|
||||||
|
#define MMLO 68
|
||||||
|
#define FPC_CSR 69
|
||||||
|
#define FPC_EIR 70
|
||||||
|
#define DSP_BASE 71 /* 3 more hi / lo register pairs */
|
||||||
|
#define DSP_CONTROL 77
|
||||||
|
#define ACX 78
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This struct defines the way the registers are stored on the stack during a
|
||||||
|
* system call/exception. As usual the registers k0/k1 aren't being saved.
|
||||||
|
*/
|
||||||
|
struct pt_regs {
|
||||||
|
#ifdef CONFIG_32BIT
|
||||||
|
/* Pad bytes for argument save space on the stack. */
|
||||||
|
unsigned long pad0[6];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Saved main processor registers. */
|
||||||
|
unsigned long regs[32];
|
||||||
|
|
||||||
|
/* Saved special registers. */
|
||||||
|
unsigned long cp0_status;
|
||||||
|
unsigned long hi;
|
||||||
|
unsigned long lo;
|
||||||
|
#ifdef CONFIG_CPU_HAS_SMARTMIPS
|
||||||
|
unsigned long acx;
|
||||||
|
#endif
|
||||||
|
unsigned long cp0_badvaddr;
|
||||||
|
unsigned long cp0_cause;
|
||||||
|
unsigned long cp0_epc;
|
||||||
|
#ifdef CONFIG_MIPS_MT_SMTC
|
||||||
|
unsigned long cp0_tcstatus;
|
||||||
|
#endif /* CONFIG_MIPS_MT_SMTC */
|
||||||
|
#ifdef CONFIG_CPU_CAVIUM_OCTEON
|
||||||
|
unsigned long long mpl[3]; /* MTM{0,1,2} */
|
||||||
|
unsigned long long mtp[3]; /* MTP{0,1,2} */
|
||||||
|
#endif
|
||||||
|
} __attribute__ ((aligned (8)));
|
||||||
|
|
||||||
|
/* Arbitrarily choose the same ptrace numbers as used by the Sparc code. */
|
||||||
|
#define PTRACE_GETREGS 12
|
||||||
|
#define PTRACE_SETREGS 13
|
||||||
|
#define PTRACE_GETFPREGS 14
|
||||||
|
#define PTRACE_SETFPREGS 15
|
||||||
|
/* #define PTRACE_GETFPXREGS 18 */
|
||||||
|
/* #define PTRACE_SETFPXREGS 19 */
|
||||||
|
|
||||||
|
#define PTRACE_OLDSETOPTIONS 21
|
||||||
|
|
||||||
|
#define PTRACE_GET_THREAD_AREA 25
|
||||||
|
#define PTRACE_SET_THREAD_AREA 26
|
||||||
|
|
||||||
|
/* Calls to trace a 64bit program from a 32bit program. */
|
||||||
|
#define PTRACE_PEEKTEXT_3264 0xc0
|
||||||
|
#define PTRACE_PEEKDATA_3264 0xc1
|
||||||
|
#define PTRACE_POKETEXT_3264 0xc2
|
||||||
|
#define PTRACE_POKEDATA_3264 0xc3
|
||||||
|
#define PTRACE_GET_THREAD_AREA_3264 0xc4
|
||||||
|
|
||||||
|
/* Read and write watchpoint registers. */
|
||||||
|
enum pt_watch_style {
|
||||||
|
pt_watch_style_mips32,
|
||||||
|
pt_watch_style_mips64
|
||||||
|
};
|
||||||
|
struct mips32_watch_regs {
|
||||||
|
unsigned int watchlo[8];
|
||||||
|
/* Lower 16 bits of watchhi. */
|
||||||
|
unsigned short watchhi[8];
|
||||||
|
/* Valid mask and I R W bits.
|
||||||
|
* bit 0 -- 1 if W bit is usable.
|
||||||
|
* bit 1 -- 1 if R bit is usable.
|
||||||
|
* bit 2 -- 1 if I bit is usable.
|
||||||
|
* bits 3 - 11 -- Valid watchhi mask bits.
|
||||||
|
*/
|
||||||
|
unsigned short watch_masks[8];
|
||||||
|
/* The number of valid watch register pairs. */
|
||||||
|
unsigned int num_valid;
|
||||||
|
} __attribute__((aligned(8)));
|
||||||
|
|
||||||
|
struct mips64_watch_regs {
|
||||||
|
unsigned long long watchlo[8];
|
||||||
|
unsigned short watchhi[8];
|
||||||
|
unsigned short watch_masks[8];
|
||||||
|
unsigned int num_valid;
|
||||||
|
} __attribute__((aligned(8)));
|
||||||
|
|
||||||
|
struct pt_watch_regs {
|
||||||
|
enum pt_watch_style style;
|
||||||
|
union {
|
||||||
|
struct mips32_watch_regs mips32;
|
||||||
|
struct mips64_watch_regs mips64;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#define PTRACE_GET_WATCH_REGS 0xd0
|
||||||
|
#define PTRACE_SET_WATCH_REGS 0xd1
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_PTRACE_H */
|
|
@ -0,0 +1,7 @@
|
||||||
|
#ifndef _UAPI_MIPS_SETUP_H
|
||||||
|
#define _UAPI_MIPS_SETUP_H
|
||||||
|
|
||||||
|
#define COMMAND_LINE_SIZE 4096
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_MIPS_SETUP_H */
|
|
@ -0,0 +1,78 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1996, 1997, 1999 by Ralf Baechle
|
||||||
|
* Copyright (C) 1999 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_SIGCONTEXT_H
|
||||||
|
#define _UAPI_ASM_SIGCONTEXT_H
|
||||||
|
|
||||||
|
#include <linux/types.h>
|
||||||
|
#include <asm/sgidefs.h>
|
||||||
|
|
||||||
|
#if _MIPS_SIM == _MIPS_SIM_ABI32
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Keep this struct definition in sync with the sigcontext fragment
|
||||||
|
* in arch/mips/tools/offset.c
|
||||||
|
*/
|
||||||
|
struct sigcontext {
|
||||||
|
unsigned int sc_regmask; /* Unused */
|
||||||
|
unsigned int sc_status; /* Unused */
|
||||||
|
unsigned long long sc_pc;
|
||||||
|
unsigned long long sc_regs[32];
|
||||||
|
unsigned long long sc_fpregs[32];
|
||||||
|
unsigned int sc_acx; /* Was sc_ownedfp */
|
||||||
|
unsigned int sc_fpc_csr;
|
||||||
|
unsigned int sc_fpc_eir; /* Unused */
|
||||||
|
unsigned int sc_used_math;
|
||||||
|
unsigned int sc_dsp; /* dsp status, was sc_ssflags */
|
||||||
|
unsigned long long sc_mdhi;
|
||||||
|
unsigned long long sc_mdlo;
|
||||||
|
unsigned long sc_hi1; /* Was sc_cause */
|
||||||
|
unsigned long sc_lo1; /* Was sc_badvaddr */
|
||||||
|
unsigned long sc_hi2; /* Was sc_sigset[4] */
|
||||||
|
unsigned long sc_lo2;
|
||||||
|
unsigned long sc_hi3;
|
||||||
|
unsigned long sc_lo3;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
|
||||||
|
|
||||||
|
#if _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32
|
||||||
|
|
||||||
|
#include <linux/posix_types.h>
|
||||||
|
/*
|
||||||
|
* Keep this struct definition in sync with the sigcontext fragment
|
||||||
|
* in arch/mips/tools/offset.c
|
||||||
|
*
|
||||||
|
* Warning: this structure illdefined with sc_badvaddr being just an unsigned
|
||||||
|
* int so it was changed to unsigned long in 2.6.0-test1. This may break
|
||||||
|
* binary compatibility - no prisoners.
|
||||||
|
* DSP ASE in 2.6.12-rc4. Turn sc_mdhi and sc_mdlo into an array of four
|
||||||
|
* entries, add sc_dsp and sc_reserved for padding. No prisoners.
|
||||||
|
*/
|
||||||
|
struct sigcontext {
|
||||||
|
__u64 sc_regs[32];
|
||||||
|
__u64 sc_fpregs[32];
|
||||||
|
__u64 sc_mdhi;
|
||||||
|
__u64 sc_hi1;
|
||||||
|
__u64 sc_hi2;
|
||||||
|
__u64 sc_hi3;
|
||||||
|
__u64 sc_mdlo;
|
||||||
|
__u64 sc_lo1;
|
||||||
|
__u64 sc_lo2;
|
||||||
|
__u64 sc_lo3;
|
||||||
|
__u64 sc_pc;
|
||||||
|
__u32 sc_fpc_csr;
|
||||||
|
__u32 sc_used_math;
|
||||||
|
__u32 sc_dsp;
|
||||||
|
__u32 sc_reserved;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 || _MIPS_SIM == _MIPS_SIM_NABI32 */
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_SIGCONTEXT_H */
|
|
@ -0,0 +1,114 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1998, 1999, 2001, 2003 Ralf Baechle
|
||||||
|
* Copyright (C) 2000, 2001 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_SIGINFO_H
|
||||||
|
#define _UAPI_ASM_SIGINFO_H
|
||||||
|
|
||||||
|
|
||||||
|
#define __ARCH_SIGEV_PREAMBLE_SIZE (sizeof(long) + 2*sizeof(int))
|
||||||
|
#undef __ARCH_SI_TRAPNO /* exception code needs to fill this ... */
|
||||||
|
|
||||||
|
#define HAVE_ARCH_SIGINFO_T
|
||||||
|
|
||||||
|
/*
|
||||||
|
* We duplicate the generic versions - <asm-generic/siginfo.h> is just borked
|
||||||
|
* by design ...
|
||||||
|
*/
|
||||||
|
#define HAVE_ARCH_COPY_SIGINFO
|
||||||
|
struct siginfo;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Careful to keep union _sifields from shifting ...
|
||||||
|
*/
|
||||||
|
#ifdef CONFIG_32BIT
|
||||||
|
#define __ARCH_SI_PREAMBLE_SIZE (3 * sizeof(int))
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_64BIT
|
||||||
|
#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <asm-generic/siginfo.h>
|
||||||
|
|
||||||
|
typedef struct siginfo {
|
||||||
|
int si_signo;
|
||||||
|
int si_code;
|
||||||
|
int si_errno;
|
||||||
|
int __pad0[SI_MAX_SIZE / sizeof(int) - SI_PAD_SIZE - 3];
|
||||||
|
|
||||||
|
union {
|
||||||
|
int _pad[SI_PAD_SIZE];
|
||||||
|
|
||||||
|
/* kill() */
|
||||||
|
struct {
|
||||||
|
pid_t _pid; /* sender's pid */
|
||||||
|
__ARCH_SI_UID_T _uid; /* sender's uid */
|
||||||
|
} _kill;
|
||||||
|
|
||||||
|
/* POSIX.1b timers */
|
||||||
|
struct {
|
||||||
|
timer_t _tid; /* timer id */
|
||||||
|
int _overrun; /* overrun count */
|
||||||
|
char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)];
|
||||||
|
sigval_t _sigval; /* same as below */
|
||||||
|
int _sys_private; /* not to be passed to user */
|
||||||
|
} _timer;
|
||||||
|
|
||||||
|
/* POSIX.1b signals */
|
||||||
|
struct {
|
||||||
|
pid_t _pid; /* sender's pid */
|
||||||
|
__ARCH_SI_UID_T _uid; /* sender's uid */
|
||||||
|
sigval_t _sigval;
|
||||||
|
} _rt;
|
||||||
|
|
||||||
|
/* SIGCHLD */
|
||||||
|
struct {
|
||||||
|
pid_t _pid; /* which child */
|
||||||
|
__ARCH_SI_UID_T _uid; /* sender's uid */
|
||||||
|
int _status; /* exit code */
|
||||||
|
clock_t _utime;
|
||||||
|
clock_t _stime;
|
||||||
|
} _sigchld;
|
||||||
|
|
||||||
|
/* IRIX SIGCHLD */
|
||||||
|
struct {
|
||||||
|
pid_t _pid; /* which child */
|
||||||
|
clock_t _utime;
|
||||||
|
int _status; /* exit code */
|
||||||
|
clock_t _stime;
|
||||||
|
} _irix_sigchld;
|
||||||
|
|
||||||
|
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
|
||||||
|
struct {
|
||||||
|
void __user *_addr; /* faulting insn/memory ref. */
|
||||||
|
#ifdef __ARCH_SI_TRAPNO
|
||||||
|
int _trapno; /* TRAP # which caused the signal */
|
||||||
|
#endif
|
||||||
|
short _addr_lsb;
|
||||||
|
} _sigfault;
|
||||||
|
|
||||||
|
/* SIGPOLL, SIGXFSZ (To do ...) */
|
||||||
|
struct {
|
||||||
|
__ARCH_SI_BAND_T _band; /* POLL_IN, POLL_OUT, POLL_MSG */
|
||||||
|
int _fd;
|
||||||
|
} _sigpoll;
|
||||||
|
} _sifields;
|
||||||
|
} siginfo_t;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* si_code values
|
||||||
|
* Again these have been chosen to be IRIX compatible.
|
||||||
|
*/
|
||||||
|
#undef SI_ASYNCIO
|
||||||
|
#undef SI_TIMER
|
||||||
|
#undef SI_MESGQ
|
||||||
|
#define SI_ASYNCIO -2 /* sent by AIO completion */
|
||||||
|
#define SI_TIMER __SI_CODE(__SI_TIMER, -3) /* sent by timer expiration */
|
||||||
|
#define SI_MESGQ __SI_CODE(__SI_MESGQ, -4) /* sent by real time mesq state change */
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_SIGINFO_H */
|
|
@ -0,0 +1,123 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1995, 96, 97, 98, 99, 2003 by Ralf Baechle
|
||||||
|
* Copyright (C) 1999 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_SIGNAL_H
|
||||||
|
#define _UAPI_ASM_SIGNAL_H
|
||||||
|
|
||||||
|
#include <linux/types.h>
|
||||||
|
|
||||||
|
#define _NSIG 128
|
||||||
|
#define _NSIG_BPW (sizeof(unsigned long) * 8)
|
||||||
|
#define _NSIG_WORDS (_NSIG / _NSIG_BPW)
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
unsigned long sig[_NSIG_WORDS];
|
||||||
|
} sigset_t;
|
||||||
|
|
||||||
|
typedef unsigned long old_sigset_t; /* at least 32 bits */
|
||||||
|
|
||||||
|
#define SIGHUP 1 /* Hangup (POSIX). */
|
||||||
|
#define SIGINT 2 /* Interrupt (ANSI). */
|
||||||
|
#define SIGQUIT 3 /* Quit (POSIX). */
|
||||||
|
#define SIGILL 4 /* Illegal instruction (ANSI). */
|
||||||
|
#define SIGTRAP 5 /* Trace trap (POSIX). */
|
||||||
|
#define SIGIOT 6 /* IOT trap (4.2 BSD). */
|
||||||
|
#define SIGABRT SIGIOT /* Abort (ANSI). */
|
||||||
|
#define SIGEMT 7
|
||||||
|
#define SIGFPE 8 /* Floating-point exception (ANSI). */
|
||||||
|
#define SIGKILL 9 /* Kill, unblockable (POSIX). */
|
||||||
|
#define SIGBUS 10 /* BUS error (4.2 BSD). */
|
||||||
|
#define SIGSEGV 11 /* Segmentation violation (ANSI). */
|
||||||
|
#define SIGSYS 12
|
||||||
|
#define SIGPIPE 13 /* Broken pipe (POSIX). */
|
||||||
|
#define SIGALRM 14 /* Alarm clock (POSIX). */
|
||||||
|
#define SIGTERM 15 /* Termination (ANSI). */
|
||||||
|
#define SIGUSR1 16 /* User-defined signal 1 (POSIX). */
|
||||||
|
#define SIGUSR2 17 /* User-defined signal 2 (POSIX). */
|
||||||
|
#define SIGCHLD 18 /* Child status has changed (POSIX). */
|
||||||
|
#define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */
|
||||||
|
#define SIGPWR 19 /* Power failure restart (System V). */
|
||||||
|
#define SIGWINCH 20 /* Window size change (4.3 BSD, Sun). */
|
||||||
|
#define SIGURG 21 /* Urgent condition on socket (4.2 BSD). */
|
||||||
|
#define SIGIO 22 /* I/O now possible (4.2 BSD). */
|
||||||
|
#define SIGPOLL SIGIO /* Pollable event occurred (System V). */
|
||||||
|
#define SIGSTOP 23 /* Stop, unblockable (POSIX). */
|
||||||
|
#define SIGTSTP 24 /* Keyboard stop (POSIX). */
|
||||||
|
#define SIGCONT 25 /* Continue (POSIX). */
|
||||||
|
#define SIGTTIN 26 /* Background read from tty (POSIX). */
|
||||||
|
#define SIGTTOU 27 /* Background write to tty (POSIX). */
|
||||||
|
#define SIGVTALRM 28 /* Virtual alarm clock (4.2 BSD). */
|
||||||
|
#define SIGPROF 29 /* Profiling alarm clock (4.2 BSD). */
|
||||||
|
#define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */
|
||||||
|
#define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */
|
||||||
|
|
||||||
|
/* These should not be considered constants from userland. */
|
||||||
|
#define SIGRTMIN 32
|
||||||
|
#define SIGRTMAX _NSIG
|
||||||
|
|
||||||
|
/*
|
||||||
|
* SA_FLAGS values:
|
||||||
|
*
|
||||||
|
* SA_ONSTACK indicates that a registered stack_t will be used.
|
||||||
|
* SA_RESTART flag to get restarting signals (which were the default long ago)
|
||||||
|
* SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
|
||||||
|
* SA_RESETHAND clears the handler when the signal is delivered.
|
||||||
|
* SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
|
||||||
|
* SA_NODEFER prevents the current signal from being masked in the handler.
|
||||||
|
*
|
||||||
|
* SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
|
||||||
|
* Unix names RESETHAND and NODEFER respectively.
|
||||||
|
*/
|
||||||
|
#define SA_ONSTACK 0x08000000
|
||||||
|
#define SA_RESETHAND 0x80000000
|
||||||
|
#define SA_RESTART 0x10000000
|
||||||
|
#define SA_SIGINFO 0x00000008
|
||||||
|
#define SA_NODEFER 0x40000000
|
||||||
|
#define SA_NOCLDWAIT 0x00010000
|
||||||
|
#define SA_NOCLDSTOP 0x00000001
|
||||||
|
|
||||||
|
#define SA_NOMASK SA_NODEFER
|
||||||
|
#define SA_ONESHOT SA_RESETHAND
|
||||||
|
|
||||||
|
#define SA_RESTORER 0x04000000 /* Only for o32 */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* sigaltstack controls
|
||||||
|
*/
|
||||||
|
#define SS_ONSTACK 1
|
||||||
|
#define SS_DISABLE 2
|
||||||
|
|
||||||
|
#define MINSIGSTKSZ 2048
|
||||||
|
#define SIGSTKSZ 8192
|
||||||
|
|
||||||
|
|
||||||
|
#define SIG_BLOCK 1 /* for blocking signals */
|
||||||
|
#define SIG_UNBLOCK 2 /* for unblocking signals */
|
||||||
|
#define SIG_SETMASK 3 /* for setting the signal mask */
|
||||||
|
|
||||||
|
#include <asm-generic/signal-defs.h>
|
||||||
|
|
||||||
|
struct sigaction {
|
||||||
|
unsigned int sa_flags;
|
||||||
|
__sighandler_t sa_handler;
|
||||||
|
sigset_t sa_mask;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct k_sigaction {
|
||||||
|
struct sigaction sa;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* IRIX compatible stack_t */
|
||||||
|
typedef struct sigaltstack {
|
||||||
|
void __user *ss_sp;
|
||||||
|
size_t ss_size;
|
||||||
|
int ss_flags;
|
||||||
|
} stack_t;
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_SIGNAL_H */
|
|
@ -0,0 +1,93 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1997, 1999, 2000, 2001 Ralf Baechle
|
||||||
|
* Copyright (C) 2000, 2001 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_SOCKET_H
|
||||||
|
#define _UAPI_ASM_SOCKET_H
|
||||||
|
|
||||||
|
#include <asm/sockios.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* For setsockopt(2)
|
||||||
|
*
|
||||||
|
* This defines are ABI conformant as far as Linux supports these ...
|
||||||
|
*/
|
||||||
|
#define SOL_SOCKET 0xffff
|
||||||
|
|
||||||
|
#define SO_DEBUG 0x0001 /* Record debugging information. */
|
||||||
|
#define SO_REUSEADDR 0x0004 /* Allow reuse of local addresses. */
|
||||||
|
#define SO_KEEPALIVE 0x0008 /* Keep connections alive and send
|
||||||
|
SIGPIPE when they die. */
|
||||||
|
#define SO_DONTROUTE 0x0010 /* Don't do local routing. */
|
||||||
|
#define SO_BROADCAST 0x0020 /* Allow transmission of
|
||||||
|
broadcast messages. */
|
||||||
|
#define SO_LINGER 0x0080 /* Block on close of a reliable
|
||||||
|
socket to transmit pending data. */
|
||||||
|
#define SO_OOBINLINE 0x0100 /* Receive out-of-band data in-band. */
|
||||||
|
#if 0
|
||||||
|
To add: #define SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define SO_TYPE 0x1008 /* Compatible name for SO_STYLE. */
|
||||||
|
#define SO_STYLE SO_TYPE /* Synonym */
|
||||||
|
#define SO_ERROR 0x1007 /* get error status and clear */
|
||||||
|
#define SO_SNDBUF 0x1001 /* Send buffer size. */
|
||||||
|
#define SO_RCVBUF 0x1002 /* Receive buffer. */
|
||||||
|
#define SO_SNDLOWAT 0x1003 /* send low-water mark */
|
||||||
|
#define SO_RCVLOWAT 0x1004 /* receive low-water mark */
|
||||||
|
#define SO_SNDTIMEO 0x1005 /* send timeout */
|
||||||
|
#define SO_RCVTIMEO 0x1006 /* receive timeout */
|
||||||
|
#define SO_ACCEPTCONN 0x1009
|
||||||
|
#define SO_PROTOCOL 0x1028 /* protocol type */
|
||||||
|
#define SO_DOMAIN 0x1029 /* domain/socket family */
|
||||||
|
|
||||||
|
/* linux-specific, might as well be the same as on i386 */
|
||||||
|
#define SO_NO_CHECK 11
|
||||||
|
#define SO_PRIORITY 12
|
||||||
|
#define SO_BSDCOMPAT 14
|
||||||
|
|
||||||
|
#define SO_PASSCRED 17
|
||||||
|
#define SO_PEERCRED 18
|
||||||
|
|
||||||
|
/* Security levels - as per NRL IPv6 - don't actually do anything */
|
||||||
|
#define SO_SECURITY_AUTHENTICATION 22
|
||||||
|
#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
|
||||||
|
#define SO_SECURITY_ENCRYPTION_NETWORK 24
|
||||||
|
|
||||||
|
#define SO_BINDTODEVICE 25
|
||||||
|
|
||||||
|
/* Socket filtering */
|
||||||
|
#define SO_ATTACH_FILTER 26
|
||||||
|
#define SO_DETACH_FILTER 27
|
||||||
|
|
||||||
|
#define SO_PEERNAME 28
|
||||||
|
#define SO_TIMESTAMP 29
|
||||||
|
#define SCM_TIMESTAMP SO_TIMESTAMP
|
||||||
|
|
||||||
|
#define SO_PEERSEC 30
|
||||||
|
#define SO_SNDBUFFORCE 31
|
||||||
|
#define SO_RCVBUFFORCE 33
|
||||||
|
#define SO_PASSSEC 34
|
||||||
|
#define SO_TIMESTAMPNS 35
|
||||||
|
#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
|
||||||
|
|
||||||
|
#define SO_MARK 36
|
||||||
|
|
||||||
|
#define SO_TIMESTAMPING 37
|
||||||
|
#define SCM_TIMESTAMPING SO_TIMESTAMPING
|
||||||
|
|
||||||
|
#define SO_RXQ_OVFL 40
|
||||||
|
|
||||||
|
#define SO_WIFI_STATUS 41
|
||||||
|
#define SCM_WIFI_STATUS SO_WIFI_STATUS
|
||||||
|
#define SO_PEEK_OFF 42
|
||||||
|
|
||||||
|
/* Instruct lower device to use last 4-bytes of skb data as FCS */
|
||||||
|
#define SO_NOFCS 43
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_SOCKET_H */
|
|
@ -0,0 +1,80 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1995, 1996, 2000, 2001 by Ralf Baechle
|
||||||
|
* Copyright (C) 2000, 2001 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_TERMIOS_H
|
||||||
|
#define _UAPI_ASM_TERMIOS_H
|
||||||
|
|
||||||
|
#include <linux/errno.h>
|
||||||
|
#include <asm/termbits.h>
|
||||||
|
#include <asm/ioctls.h>
|
||||||
|
|
||||||
|
struct sgttyb {
|
||||||
|
char sg_ispeed;
|
||||||
|
char sg_ospeed;
|
||||||
|
char sg_erase;
|
||||||
|
char sg_kill;
|
||||||
|
int sg_flags; /* SGI special - int, not short */
|
||||||
|
};
|
||||||
|
|
||||||
|
struct tchars {
|
||||||
|
char t_intrc;
|
||||||
|
char t_quitc;
|
||||||
|
char t_startc;
|
||||||
|
char t_stopc;
|
||||||
|
char t_eofc;
|
||||||
|
char t_brkc;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct ltchars {
|
||||||
|
char t_suspc; /* stop process signal */
|
||||||
|
char t_dsuspc; /* delayed stop process signal */
|
||||||
|
char t_rprntc; /* reprint line */
|
||||||
|
char t_flushc; /* flush output (toggles) */
|
||||||
|
char t_werasc; /* word erase */
|
||||||
|
char t_lnextc; /* literal next character */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* TIOCGSIZE, TIOCSSIZE not defined yet. Only needed for SunOS source
|
||||||
|
compatibility anyway ... */
|
||||||
|
|
||||||
|
struct winsize {
|
||||||
|
unsigned short ws_row;
|
||||||
|
unsigned short ws_col;
|
||||||
|
unsigned short ws_xpixel;
|
||||||
|
unsigned short ws_ypixel;
|
||||||
|
};
|
||||||
|
|
||||||
|
#define NCC 8
|
||||||
|
struct termio {
|
||||||
|
unsigned short c_iflag; /* input mode flags */
|
||||||
|
unsigned short c_oflag; /* output mode flags */
|
||||||
|
unsigned short c_cflag; /* control mode flags */
|
||||||
|
unsigned short c_lflag; /* local mode flags */
|
||||||
|
char c_line; /* line discipline */
|
||||||
|
unsigned char c_cc[NCCS]; /* control characters */
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* modem lines */
|
||||||
|
#define TIOCM_LE 0x001 /* line enable */
|
||||||
|
#define TIOCM_DTR 0x002 /* data terminal ready */
|
||||||
|
#define TIOCM_RTS 0x004 /* request to send */
|
||||||
|
#define TIOCM_ST 0x010 /* secondary transmit */
|
||||||
|
#define TIOCM_SR 0x020 /* secondary receive */
|
||||||
|
#define TIOCM_CTS 0x040 /* clear to send */
|
||||||
|
#define TIOCM_CAR 0x100 /* carrier detect */
|
||||||
|
#define TIOCM_CD TIOCM_CAR
|
||||||
|
#define TIOCM_RNG 0x200 /* ring */
|
||||||
|
#define TIOCM_RI TIOCM_RNG
|
||||||
|
#define TIOCM_DSR 0x400 /* data set ready */
|
||||||
|
#define TIOCM_OUT1 0x2000
|
||||||
|
#define TIOCM_OUT2 0x4000
|
||||||
|
#define TIOCM_LOOP 0x8000
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_TERMIOS_H */
|
|
@ -0,0 +1,27 @@
|
||||||
|
/*
|
||||||
|
* This file is subject to the terms and conditions of the GNU General Public
|
||||||
|
* License. See the file "COPYING" in the main directory of this archive
|
||||||
|
* for more details.
|
||||||
|
*
|
||||||
|
* Copyright (C) 1994, 1995, 1996, 1999 by Ralf Baechle
|
||||||
|
* Copyright (C) 2008 Wind River Systems,
|
||||||
|
* written by Ralf Baechle
|
||||||
|
* Copyright (C) 1999 Silicon Graphics, Inc.
|
||||||
|
*/
|
||||||
|
#ifndef _UAPI_ASM_TYPES_H
|
||||||
|
#define _UAPI_ASM_TYPES_H
|
||||||
|
|
||||||
|
/*
|
||||||
|
* We don't use int-l64.h for the kernel anymore but still use it for
|
||||||
|
* userspace to avoid code changes.
|
||||||
|
*/
|
||||||
|
#ifndef __KERNEL__
|
||||||
|
# if _MIPS_SZLONG == 64
|
||||||
|
# include <asm-generic/int-l64.h>
|
||||||
|
# else
|
||||||
|
# include <asm-generic/int-ll64.h>
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#endif /* _UAPI_ASM_TYPES_H */
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Загрузка…
Ссылка в новой задаче