diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-21 20:20:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-21 20:20:53 -0400 |
commit | 8a3227268877b81096d7b7a841aaf51099ad2068 (patch) | |
tree | 73d2b9522aa981d46040b5603c824583c1b18694 /include | |
parent | e9b62693ae0a1e13ccc97a6792d9a7770c8d1b5b (diff) | |
parent | ec98c6b9b47df6df1c1fa6cf3d427414f8c2cf16 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
[SPARC]: Remove SunOS and Solaris binary support.
Diffstat (limited to 'include')
28 files changed, 4 insertions, 989 deletions
diff --git a/include/asm-sparc/Kbuild b/include/asm-sparc/Kbuild index c6a55cf0d337..671223718f0a 100644 --- a/include/asm-sparc/Kbuild +++ b/include/asm-sparc/Kbuild | |||
@@ -5,7 +5,6 @@ header-y += asi.h | |||
5 | header-y += bpp.h | 5 | header-y += bpp.h |
6 | header-y += jsflash.h | 6 | header-y += jsflash.h |
7 | header-y += openpromio.h | 7 | header-y += openpromio.h |
8 | header-y += pconf.h | ||
9 | header-y += reg.h | 8 | header-y += reg.h |
10 | header-y += traps.h | 9 | header-y += traps.h |
11 | header-y += vfc_ioctls.h | 10 | header-y += vfc_ioctls.h |
diff --git a/include/asm-sparc/a.out-core.h b/include/asm-sparc/a.out-core.h deleted file mode 100644 index e8fd338ed0b2..000000000000 --- a/include/asm-sparc/a.out-core.h +++ /dev/null | |||
@@ -1,52 +0,0 @@ | |||
1 | /* a.out coredump register dumper | ||
2 | * | ||
3 | * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. | ||
4 | * Written by David Howells (dhowells@redhat.com) | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or | ||
7 | * modify it under the terms of the GNU General Public Licence | ||
8 | * as published by the Free Software Foundation; either version | ||
9 | * 2 of the Licence, or (at your option) any later version. | ||
10 | */ | ||
11 | |||
12 | #ifndef _ASM_A_OUT_CORE_H | ||
13 | #define _ASM_A_OUT_CORE_H | ||
14 | |||
15 | #ifdef __KERNEL__ | ||
16 | |||
17 | #include <linux/user.h> | ||
18 | |||
19 | /* | ||
20 | * fill in the user structure for an a.out core dump | ||
21 | */ | ||
22 | static inline void aout_dump_thread(struct pt_regs *regs, struct user *dump) | ||
23 | { | ||
24 | unsigned long first_stack_page; | ||
25 | |||
26 | dump->magic = SUNOS_CORE_MAGIC; | ||
27 | dump->len = sizeof(struct user); | ||
28 | dump->regs.psr = regs->psr; | ||
29 | dump->regs.pc = regs->pc; | ||
30 | dump->regs.npc = regs->npc; | ||
31 | dump->regs.y = regs->y; | ||
32 | /* fuck me plenty */ | ||
33 | memcpy(&dump->regs.regs[0], ®s->u_regs[1], (sizeof(unsigned long) * 15)); | ||
34 | dump->uexec = current->thread.core_exec; | ||
35 | dump->u_tsize = (((unsigned long) current->mm->end_code) - | ||
36 | ((unsigned long) current->mm->start_code)) & ~(PAGE_SIZE - 1); | ||
37 | dump->u_dsize = ((unsigned long) (current->mm->brk + (PAGE_SIZE-1))); | ||
38 | dump->u_dsize -= dump->u_tsize; | ||
39 | dump->u_dsize &= ~(PAGE_SIZE - 1); | ||
40 | first_stack_page = (regs->u_regs[UREG_FP] & ~(PAGE_SIZE - 1)); | ||
41 | dump->u_ssize = (TASK_SIZE - first_stack_page) & ~(PAGE_SIZE - 1); | ||
42 | memcpy(&dump->fpu.fpstatus.fregs.regs[0], ¤t->thread.float_regs[0], (sizeof(unsigned long) * 32)); | ||
43 | dump->fpu.fpstatus.fsr = current->thread.fsr; | ||
44 | dump->fpu.fpstatus.flags = dump->fpu.fpstatus.extra = 0; | ||
45 | dump->fpu.fpstatus.fpq_count = current->thread.fpqdepth; | ||
46 | memcpy(&dump->fpu.fpstatus.fpq[0], ¤t->thread.fpqueue[0], | ||
47 | ((sizeof(unsigned long) * 2) * 16)); | ||
48 | dump->sigcode = 0; | ||
49 | } | ||
50 | |||
51 | #endif /* __KERNEL__ */ | ||
52 | #endif /* _ASM_A_OUT_CORE_H */ | ||
diff --git a/include/asm-sparc/a.out.h b/include/asm-sparc/a.out.h deleted file mode 100644 index 2f1c3748a068..000000000000 --- a/include/asm-sparc/a.out.h +++ /dev/null | |||
@@ -1,97 +0,0 @@ | |||
1 | #ifndef __SPARC_A_OUT_H__ | ||
2 | #define __SPARC_A_OUT_H__ | ||
3 | |||
4 | #define SPARC_PGSIZE 0x2000 /* Thanks to the sun4 architecture... */ | ||
5 | #define SEGMENT_SIZE SPARC_PGSIZE /* whee... */ | ||
6 | |||
7 | #ifndef __ASSEMBLY__ | ||
8 | |||
9 | struct exec { | ||
10 | unsigned char a_dynamic:1; /* A __DYNAMIC is in this image */ | ||
11 | unsigned char a_toolversion:7; | ||
12 | unsigned char a_machtype; | ||
13 | unsigned short a_info; | ||
14 | unsigned int a_text; /* length of text, in bytes */ | ||
15 | unsigned int a_data; /* length of data, in bytes */ | ||
16 | unsigned int a_bss; /* length of bss, in bytes */ | ||
17 | unsigned int a_syms; /* length of symbol table, in bytes */ | ||
18 | unsigned int a_entry; /* where program begins */ | ||
19 | unsigned int a_trsize; | ||
20 | unsigned int a_drsize; | ||
21 | }; | ||
22 | |||
23 | #endif /* !__ASSEMBLY__ */ | ||
24 | |||
25 | /* Where in the file does the text information begin? */ | ||
26 | #define N_TXTOFF(x) (N_MAGIC(x) == ZMAGIC ? 0 : sizeof (struct exec)) | ||
27 | |||
28 | /* Where do the Symbols start? */ | ||
29 | #define N_SYMOFF(x) (N_TXTOFF(x) + (x).a_text + \ | ||
30 | (x).a_data + (x).a_trsize + \ | ||
31 | (x).a_drsize) | ||
32 | |||
33 | /* Where does text segment go in memory after being loaded? */ | ||
34 | #define N_TXTADDR(x) (unsigned long)(((N_MAGIC(x) == ZMAGIC) && \ | ||
35 | ((x).a_entry < SPARC_PGSIZE)) ? \ | ||
36 | 0 : SPARC_PGSIZE) | ||
37 | |||
38 | /* And same for the data segment.. */ | ||
39 | #define N_DATADDR(x) (N_MAGIC(x)==OMAGIC ? \ | ||
40 | (N_TXTADDR(x) + (x).a_text) \ | ||
41 | : (unsigned long) (_N_SEGMENT_ROUND (_N_TXTENDADDR(x)))) | ||
42 | |||
43 | #define N_TRSIZE(a) ((a).a_trsize) | ||
44 | #define N_DRSIZE(a) ((a).a_drsize) | ||
45 | #define N_SYMSIZE(a) ((a).a_syms) | ||
46 | |||
47 | #ifndef __ASSEMBLY__ | ||
48 | |||
49 | /* | ||
50 | * Sparc relocation types | ||
51 | */ | ||
52 | enum reloc_type | ||
53 | { | ||
54 | RELOC_8, | ||
55 | RELOC_16, | ||
56 | RELOC_32, /* simplest relocs */ | ||
57 | RELOC_DISP8, | ||
58 | RELOC_DISP16, | ||
59 | RELOC_DISP32, /* Disp's (pc-rel) */ | ||
60 | RELOC_WDISP30, | ||
61 | RELOC_WDISP22, /* SR word disp's */ | ||
62 | RELOC_HI22, | ||
63 | RELOC_22, /* SR 22-bit relocs */ | ||
64 | RELOC_13, | ||
65 | RELOC_LO10, /* SR 13&10-bit relocs */ | ||
66 | RELOC_SFA_BASE, | ||
67 | RELOC_SFA_OFF13, /* SR S.F.A. relocs */ | ||
68 | RELOC_BASE10, | ||
69 | RELOC_BASE13, | ||
70 | RELOC_BASE22, /* base_relative pic */ | ||
71 | RELOC_PC10, | ||
72 | RELOC_PC22, /* special pc-rel pic */ | ||
73 | RELOC_JMP_TBL, /* jmp_tbl_rel in pic */ | ||
74 | RELOC_SEGOFF16, /* ShLib offset-in-seg */ | ||
75 | RELOC_GLOB_DAT, | ||
76 | RELOC_JMP_SLOT, | ||
77 | RELOC_RELATIVE /* rtld relocs */ | ||
78 | }; | ||
79 | |||
80 | /* | ||
81 | * Format of a relocation datum. | ||
82 | */ | ||
83 | struct relocation_info /* used when header.a_machtype == M_SPARC */ | ||
84 | { | ||
85 | unsigned int r_address; /* relocation addr */ | ||
86 | unsigned int r_index:24; /* segment index or symbol index */ | ||
87 | unsigned int r_extern:1; /* if F, r_index==SEG#; if T, SYM idx */ | ||
88 | unsigned int r_pad:2; /* <unused> */ | ||
89 | enum reloc_type r_type:5; /* type of relocation to perform */ | ||
90 | int r_addend; /* addend for relocation value */ | ||
91 | }; | ||
92 | |||
93 | #define N_RELOCATION_INFO_DECLARED 1 | ||
94 | |||
95 | #endif /* !(__ASSEMBLY__) */ | ||
96 | |||
97 | #endif /* __SPARC_A_OUT_H__ */ | ||
diff --git a/include/asm-sparc/head.h b/include/asm-sparc/head.h index 1a03c28da92d..fcdba5116339 100644 --- a/include/asm-sparc/head.h +++ b/include/asm-sparc/head.h | |||
@@ -46,45 +46,12 @@ | |||
46 | b linux_sparc_syscall; \ | 46 | b linux_sparc_syscall; \ |
47 | rd %psr, %l0; | 47 | rd %psr, %l0; |
48 | 48 | ||
49 | /* Software trap for SunOS4.1.x system calls. */ | ||
50 | #define SUNOS_SYSCALL_TRAP \ | ||
51 | rd %psr, %l0; \ | ||
52 | sethi %hi(sunos_sys_table), %l7; \ | ||
53 | b linux_sparc_syscall; \ | ||
54 | or %l7, %lo(sunos_sys_table), %l7; | ||
55 | |||
56 | #define SUNOS_NO_SYSCALL_TRAP \ | ||
57 | b sunos_syscall; \ | ||
58 | rd %psr, %l0; \ | ||
59 | nop; \ | ||
60 | nop; | ||
61 | |||
62 | /* Software trap for Slowaris system calls. */ | ||
63 | #define SOLARIS_SYSCALL_TRAP \ | ||
64 | b solaris_syscall; \ | ||
65 | rd %psr, %l0; \ | ||
66 | nop; \ | ||
67 | nop; | ||
68 | |||
69 | #define INDIRECT_SOLARIS_SYSCALL(x) \ | ||
70 | mov x, %g1; \ | ||
71 | b solaris_syscall; \ | ||
72 | rd %psr, %l0; \ | ||
73 | nop; | ||
74 | |||
75 | #define BREAKPOINT_TRAP \ | 49 | #define BREAKPOINT_TRAP \ |
76 | b breakpoint_trap; \ | 50 | b breakpoint_trap; \ |
77 | rd %psr,%l0; \ | 51 | rd %psr,%l0; \ |
78 | nop; \ | 52 | nop; \ |
79 | nop; | 53 | nop; |
80 | 54 | ||
81 | /* Software trap for Sparc-netbsd system calls. */ | ||
82 | #define NETBSD_SYSCALL_TRAP \ | ||
83 | sethi %hi(sys_call_table), %l7; \ | ||
84 | or %l7, %lo(sys_call_table), %l7; \ | ||
85 | b bsd_syscall; \ | ||
86 | rd %psr, %l0; | ||
87 | |||
88 | /* The Get Condition Codes software trap for userland. */ | 55 | /* The Get Condition Codes software trap for userland. */ |
89 | #define GETCC_TRAP \ | 56 | #define GETCC_TRAP \ |
90 | b getcc_trap_handler; mov %psr, %l0; nop; nop; | 57 | b getcc_trap_handler; mov %psr, %l0; nop; nop; |
diff --git a/include/asm-sparc/ioctls.h b/include/asm-sparc/ioctls.h index 058c2064f706..3f4d0087b6a3 100644 --- a/include/asm-sparc/ioctls.h +++ b/include/asm-sparc/ioctls.h | |||
@@ -43,8 +43,6 @@ | |||
43 | #define __TIOCSETX _IOW('t', 34, int) /* SunOS Specific */ | 43 | #define __TIOCSETX _IOW('t', 34, int) /* SunOS Specific */ |
44 | #define __TIOCGETX _IOR('t', 35, int) /* SunOS Specific */ | 44 | #define __TIOCGETX _IOR('t', 35, int) /* SunOS Specific */ |
45 | #define TIOCCONS _IO('t', 36) | 45 | #define TIOCCONS _IO('t', 36) |
46 | #define __TIOCSSIZE _IOW('t', 37, struct sunos_ttysize) /* SunOS Specific */ | ||
47 | #define __TIOCGSIZE _IOR('t', 38, struct sunos_ttysize) /* SunOS Specific */ | ||
48 | #define TIOCGSOFTCAR _IOR('t', 100, int) | 46 | #define TIOCGSOFTCAR _IOR('t', 100, int) |
49 | #define TIOCSSOFTCAR _IOW('t', 101, int) | 47 | #define TIOCSSOFTCAR _IOW('t', 101, int) |
50 | #define __TIOCUCNTL _IOW('t', 102, int) /* SunOS Specific */ | 48 | #define __TIOCUCNTL _IOW('t', 102, int) /* SunOS Specific */ |
diff --git a/include/asm-sparc/mman.h b/include/asm-sparc/mman.h index b7dc40bc68f4..e18be984c01d 100644 --- a/include/asm-sparc/mman.h +++ b/include/asm-sparc/mman.h | |||
@@ -22,19 +22,6 @@ | |||
22 | #define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */ | 22 | #define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */ |
23 | #define MAP_NONBLOCK 0x10000 /* do not block on IO */ | 23 | #define MAP_NONBLOCK 0x10000 /* do not block on IO */ |
24 | 24 | ||
25 | /* XXX Need to add flags to SunOS's mctl, mlockall, and madvise system | ||
26 | * XXX calls. | ||
27 | */ | ||
28 | |||
29 | /* SunOS sys_mctl() stuff... */ | ||
30 | #define MC_SYNC 1 /* Sync pages in memory with storage (usu. a file) */ | ||
31 | #define MC_LOCK 2 /* Lock pages into core ram, do not allow swapping of them */ | ||
32 | #define MC_UNLOCK 3 /* Unlock pages locked via previous mctl() with MC_LOCK arg */ | ||
33 | #define MC_LOCKAS 5 /* Lock an entire address space of the calling process */ | ||
34 | #define MC_UNLOCKAS 6 /* Unlock entire address space of calling process */ | ||
35 | |||
36 | #define MADV_FREE 0x5 /* (Solaris) contents can be freed */ | ||
37 | |||
38 | #ifdef __KERNEL__ | 25 | #ifdef __KERNEL__ |
39 | #ifndef __ASSEMBLY__ | 26 | #ifndef __ASSEMBLY__ |
40 | #define arch_mmap_check sparc_mmap_check | 27 | #define arch_mmap_check sparc_mmap_check |
diff --git a/include/asm-sparc/namei.h b/include/asm-sparc/namei.h index f2461e8a11ac..618344d89cc4 100644 --- a/include/asm-sparc/namei.h +++ b/include/asm-sparc/namei.h | |||
@@ -8,19 +8,6 @@ | |||
8 | #ifndef __SPARC_NAMEI_H | 8 | #ifndef __SPARC_NAMEI_H |
9 | #define __SPARC_NAMEI_H | 9 | #define __SPARC_NAMEI_H |
10 | 10 | ||
11 | #define SPARC_BSD_EMUL "/usr/gnemul/sunos/" | 11 | #define __emul_prefix() NULL |
12 | #define SPARC_SOL_EMUL "/usr/gnemul/solaris/" | ||
13 | |||
14 | static inline char * __emul_prefix(void) | ||
15 | { | ||
16 | switch (current->personality) { | ||
17 | case PER_SUNOS: | ||
18 | return SPARC_BSD_EMUL; | ||
19 | case PER_SVR4: | ||
20 | return SPARC_SOL_EMUL; | ||
21 | default: | ||
22 | return NULL; | ||
23 | } | ||
24 | } | ||
25 | 12 | ||
26 | #endif /* __SPARC_NAMEI_H */ | 13 | #endif /* __SPARC_NAMEI_H */ |
diff --git a/include/asm-sparc/pconf.h b/include/asm-sparc/pconf.h deleted file mode 100644 index d73c1f1c49dc..000000000000 --- a/include/asm-sparc/pconf.h +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | /* $Id: pconf.h,v 1.3 1996/04/25 06:13:25 davem Exp $ | ||
2 | * pconf.h: pathconf() and fpathconf() defines for SunOS | ||
3 | * system call compatibility. | ||
4 | * | ||
5 | * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) | ||
6 | */ | ||
7 | |||
8 | #ifndef _SPARC_PCONF_H | ||
9 | #define _SPARC_PCONF_H | ||
10 | |||
11 | #include <linux/fs.h> | ||
12 | #include <linux/limits.h> | ||
13 | |||
14 | #define _PCONF_LINK 1 /* Max number of links to an object */ | ||
15 | #define _PCONF_CANON 2 /* TTY input buffer line size */ | ||
16 | #define _PCONF_INPUT 3 /* Biggest packet a tty can imbibe at once */ | ||
17 | #define _PCONF_NAME 4 /* Filename length max */ | ||
18 | #define _PCONF_PATH 5 /* Max size of a pathname */ | ||
19 | #define _PCONF_PIPE 6 /* Buffer size for a pipe */ | ||
20 | #define _PCONF_CHRESTRICT 7 /* Can only root chown files? */ | ||
21 | #define _PCONF_NOTRUNC 8 /* Are pathnames truncated if too big? */ | ||
22 | #define _PCONF_VDISABLE 9 /* Magic char to disable special tty chars */ | ||
23 | #define _PCONF_MAXPCONF 9 | ||
24 | |||
25 | #endif /* !(_SPARC_PCONF_H) */ | ||
diff --git a/include/asm-sparc/processor.h b/include/asm-sparc/processor.h index 40b1e41fdea7..e3006979709b 100644 --- a/include/asm-sparc/processor.h +++ b/include/asm-sparc/processor.h | |||
@@ -13,8 +13,6 @@ | |||
13 | */ | 13 | */ |
14 | #define current_text_addr() ({ void *pc; __asm__("sethi %%hi(1f), %0; or %0, %%lo(1f), %0;\n1:" : "=r" (pc)); pc; }) | 14 | #define current_text_addr() ({ void *pc; __asm__("sethi %%hi(1f), %0; or %0, %%lo(1f), %0;\n1:" : "=r" (pc)); pc; }) |
15 | 15 | ||
16 | #include <linux/a.out.h> | ||
17 | |||
18 | #include <asm/psr.h> | 16 | #include <asm/psr.h> |
19 | #include <asm/ptrace.h> | 17 | #include <asm/ptrace.h> |
20 | #include <asm/head.h> | 18 | #include <asm/head.h> |
@@ -67,7 +65,6 @@ struct thread_struct { | |||
67 | struct fpq fpqueue[16]; | 65 | struct fpq fpqueue[16]; |
68 | unsigned long flags; | 66 | unsigned long flags; |
69 | mm_segment_t current_ds; | 67 | mm_segment_t current_ds; |
70 | struct exec core_exec; /* just what it says. */ | ||
71 | int new_signal; | 68 | int new_signal; |
72 | }; | 69 | }; |
73 | 70 | ||
diff --git a/include/asm-sparc/socket.h b/include/asm-sparc/socket.h index 2e2bd0b7c8e3..a00e15df227c 100644 --- a/include/asm-sparc/socket.h +++ b/include/asm-sparc/socket.h | |||
@@ -24,9 +24,6 @@ | |||
24 | #define SO_SNDTIMEO 0x4000 | 24 | #define SO_SNDTIMEO 0x4000 |
25 | #define SO_ACCEPTCONN 0x8000 | 25 | #define SO_ACCEPTCONN 0x8000 |
26 | 26 | ||
27 | /* wha!??? */ | ||
28 | #define SO_DONTLINGER (~SO_LINGER) /* Older SunOS compat. hack */ | ||
29 | |||
30 | #define SO_SNDBUF 0x1001 | 27 | #define SO_SNDBUF 0x1001 |
31 | #define SO_RCVBUF 0x1002 | 28 | #define SO_RCVBUF 0x1002 |
32 | #define SO_SNDBUFFORCE 0x100a | 29 | #define SO_SNDBUFFORCE 0x100a |
diff --git a/include/asm-sparc/solerrno.h b/include/asm-sparc/solerrno.h deleted file mode 100644 index 8abce7e4639f..000000000000 --- a/include/asm-sparc/solerrno.h +++ /dev/null | |||
@@ -1,132 +0,0 @@ | |||
1 | /* $Id: solerrno.h,v 1.5 1996/04/25 06:13:32 davem Exp $ | ||
2 | * solerrno.h: Solaris error return codes for compatibility. | ||
3 | * | ||
4 | * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) | ||
5 | */ | ||
6 | |||
7 | #ifndef _SPARC_SOLERRNO_H | ||
8 | #define _SPARC_SOLERRNO_H | ||
9 | |||
10 | #define SOL_EPERM 1 /* Required superuser access perms */ | ||
11 | #define SOL_ENOENT 2 /* File or directory does not exist */ | ||
12 | #define SOL_ESRCH 3 /* Process did not exist */ | ||
13 | #define SOL_EINTR 4 /* System call was interrupted */ | ||
14 | #define SOL_EIO 5 /* An i/o error occurred */ | ||
15 | #define SOL_ENXIO 6 /* Device or Address does not exist */ | ||
16 | #define SOL_E2BIG 7 /* Too many arguments were given */ | ||
17 | #define SOL_ENOEXEC 8 /* Header of executable was munged */ | ||
18 | #define SOL_EBADF 9 /* Bogus file number */ | ||
19 | #define SOL_ECHILD 10 /* No children of process exist */ | ||
20 | #define SOL_EAGAIN 11 /* beep beep, "try again later" */ | ||
21 | #define SOL_ENOMEM 12 /* No memory available */ | ||
22 | #define SOL_EACCES 13 /* Access not allowed */ | ||
23 | #define SOL_EFAULT 14 /* Address passed was invalid */ | ||
24 | #define SOL_ENOTBLK 15 /* blkdev op on non-block device */ | ||
25 | #define SOL_EBUSY 16 /* Mounted device was busy */ | ||
26 | #define SOL_EEXIST 17 /* File specified already exists */ | ||
27 | #define SOL_EXDEV 18 /* Link request across diff devices */ | ||
28 | #define SOL_ENODEV 19 /* Device does not exist on system */ | ||
29 | #define SOL_ENOTDIR 20 /* Dir operation on non-directory */ | ||
30 | #define SOL_EISDIR 21 /* File was of directory type */ | ||
31 | #define SOL_EINVAL 22 /* Argument passed was invalid */ | ||
32 | #define SOL_ENFILE 23 /* No more room in file table */ | ||
33 | #define SOL_EMFILE 24 /* Proc has too many files open */ | ||
34 | #define SOL_ENOTTY 25 /* Ioctl was invalid for req device */ | ||
35 | #define SOL_ETXTBSY 26 /* Text file in busy state */ | ||
36 | #define SOL_EFBIG 27 /* Too big of a file for operation */ | ||
37 | #define SOL_ENOSPC 28 /* Disk is full */ | ||
38 | #define SOL_ESPIPE 29 /* Seek attempted on non-seeking dev*/ | ||
39 | #define SOL_EROFS 30 /* Write attempted on read-only fs */ | ||
40 | #define SOL_EMLINK 31 /* Too many links in file search */ | ||
41 | #define SOL_EPIPE 32 /* Call a plumber */ | ||
42 | #define SOL_EDOM 33 /* Argument was out of fct domain */ | ||
43 | #define SOL_ERANGE 34 /* Could not represent math result */ | ||
44 | #define SOL_ENOMSG 35 /* Message of req type doesn't exist */ | ||
45 | #define SOL_EIDRM 36 /* Identifier has been removed */ | ||
46 | #define SOL_ECHRNG 37 /* Req channel number out of range */ | ||
47 | #define SOL_EL2NSYNC 38 /* Could not sync at run level 2 */ | ||
48 | #define SOL_EL3HLT 39 /* Halted at run level 3 */ | ||
49 | #define SOL_EL3RST 40 /* Reset at run level 3 */ | ||
50 | #define SOL_ELNRNG 41 /* Out of range link number */ | ||
51 | #define SOL_EUNATCH 42 /* Driver for protocol not attached */ | ||
52 | #define SOL_ENOCSI 43 /* CSI structure not around */ | ||
53 | #define SOL_EL2HLT 44 /* Halted at run level 2 */ | ||
54 | #define SOL_EDEADLK 45 /* Deadlock condition detected */ | ||
55 | #define SOL_ENOLCK 46 /* Record locks unavailable */ | ||
56 | #define SOL_ECANCELED 47 /* Cancellation of oper. happened */ | ||
57 | #define SOL_ENOTSUP 48 /* Attempt of unsupported operation */ | ||
58 | #define SOL_EDQUOT 49 /* Users disk quota exceeded */ | ||
59 | #define SOL_EBADE 50 /* Invalid exchange */ | ||
60 | #define SOL_EBADR 51 /* Request descriptor was invalid */ | ||
61 | #define SOL_EXFULL 52 /* Full exchange */ | ||
62 | #define SOL_ENOANO 53 /* ano does not exist */ | ||
63 | #define SOL_EBADRQC 54 /* Req code was invalid */ | ||
64 | #define SOL_EBADSLT 55 /* Bad slot number */ | ||
65 | #define SOL_EDEADLOCK 56 /* Deadlock in fs error */ | ||
66 | #define SOL_EBFONT 57 /* Font file format invalid */ | ||
67 | /* YOW, I LOVE SYSV STREAMS!!!! */ | ||
68 | #define SOL_ENOSTR 60 /* Stream-op on non-stream dev */ | ||
69 | #define SOL_ENODATA 61 /* No data avail at this time */ | ||
70 | #define SOL_ETIME 62 /* Expiration of time occurred */ | ||
71 | #define SOL_ENOSR 63 /* Streams resources exhausted */ | ||
72 | #define SOL_ENONET 64 /* No network connected */ | ||
73 | #define SOL_ENOPKG 65 /* Non-installed package */ | ||
74 | #define SOL_EREMOTE 66 /* Object was on remote machine */ | ||
75 | #define SOL_ENOLINK 67 /* Cut link */ | ||
76 | #define SOL_EADV 68 /* Error in advertise */ | ||
77 | #define SOL_ESRMNT 69 /* Some magic srmount problem */ | ||
78 | #define SOL_ECOMM 70 /* During send, comm error occurred */ | ||
79 | #define SOL_EPROTO 71 /* Protocol botch */ | ||
80 | #define SOL_EMULTIHOP 74 /* Multihop attempted */ | ||
81 | #define SOL_EBADMSG 77 /* Message was unreadable */ | ||
82 | #define SOL_ENAMETOOLONG 78 /* Too long of a path name */ | ||
83 | #define SOL_EOVERFLOW 79 /* Data type too small for datum */ | ||
84 | #define SOL_ENOTUNIQ 80 /* Logical name was not unique */ | ||
85 | #define SOL_EBADFD 81 /* Op cannot be performed on fd */ | ||
86 | #define SOL_EREMCHG 82 /* Remote address is now different */ | ||
87 | #define SOL_ELIBACC 83 /* Shared lib could not be accessed */ | ||
88 | #define SOL_ELIBBAD 84 /* ShLib is corrupted in some way */ | ||
89 | #define SOL_ELIBSCN 85 /* A.out ShLib problems */ | ||
90 | #define SOL_ELIBMAX 86 /* Exceeded ShLib linkage limit */ | ||
91 | #define SOL_ELIBEXEC 87 /* Execution of ShLib attempted */ | ||
92 | #define SOL_EILSEQ 88 /* Bad byte sequence found */ | ||
93 | #define SOL_ENOSYS 89 /* Invalid filesystem operation */ | ||
94 | #define SOL_ELOOP 90 /* Detected loop in symbolic links */ | ||
95 | #define SOL_ERESTART 91 /* System call is restartable */ | ||
96 | #define SOL_ESTRPIPE 92 /* Do not sleep in head of stream */ | ||
97 | #define SOL_ENOTEMPTY 93 /* Rmdir of non-empty directory */ | ||
98 | #define SOL_EUSERS 94 /* Over abundance of users for ufs */ | ||
99 | #define SOL_ENOTSOCK 95 /* Sock-op on non-sock */ | ||
100 | #define SOL_EDESTADDRREQ 96 /* No dest addr given, but needed */ | ||
101 | #define SOL_EMSGSIZE 97 /* Msg too big */ | ||
102 | #define SOL_EPROTOTYPE 98 /* Bad socket protocol */ | ||
103 | #define SOL_ENOPROTOOPT 99 /* Unavailable protocol */ | ||
104 | #define SOL_EPROTONOSUPPORT 120 /* Unsupported protocol */ | ||
105 | #define SOL_ESOCKTNOSUPPORT 121 /* Unsupported socket type */ | ||
106 | #define SOL_EOPNOTSUPP 122 /* Unsupported sock-op */ | ||
107 | #define SOL_EPFNOSUPPORT 123 /* Unsupported protocol family */ | ||
108 | #define SOL_EAFNOSUPPORT 124 /* Unsup addr family for protocol */ | ||
109 | #define SOL_EADDRINUSE 125 /* Req addr is already in use */ | ||
110 | #define SOL_EADDRNOTAVAIL 126 /* Req addr not available right now */ | ||
111 | #define SOL_ENETDOWN 127 /* Your subnet is on fire */ | ||
112 | #define SOL_ENETUNREACH 128 /* Someone playing with gateway and */ | ||
113 | /* did not tell you he was going to */ | ||
114 | #define SOL_ENETRESET 129 /* Buy less-buggy ethernet cards */ | ||
115 | #define SOL_ECONNABORTED 130 /* Aborted connection due to sw */ | ||
116 | #define SOL_ECONNRESET 131 /* Your peers reset your connection */ | ||
117 | #define SOL_ENOBUFS 132 /* No buffer space available */ | ||
118 | #define SOL_EISCONN 133 /* Connect on already connected */ | ||
119 | /* socket attempted */ | ||
120 | #define SOL_ENOTCONN 134 /* Comm on non-connected socket */ | ||
121 | #define SOL_ESHUTDOWN 143 /* Op attempted after sock-shutdown */ | ||
122 | #define SOL_ETOOMANYREFS 144 /* Reference limit exceeded */ | ||
123 | #define SOL_ETIMEDOUT 145 /* Timed out connection */ | ||
124 | #define SOL_ECONNREFUSED 146 /* Connection refused by remote host*/ | ||
125 | #define SOL_EHOSTDOWN 147 /* Remote host is up in flames */ | ||
126 | #define SOL_EHOSTUNREACH 148 /* Make a left at Easton Ave..... */ | ||
127 | #define SOL_EWOULDBLOCK EAGAIN /* Just an alias */ | ||
128 | #define SOL_EALREADY 149 /* Operation is already occurring */ | ||
129 | #define SOL_EINPROGRESS 150 /* Operation is happening now */ | ||
130 | #define SOL_ESTALE 151 /* Fungus growth on NFS file handle */ | ||
131 | |||
132 | #endif /* !(_SPARC_SOLERRNO_H) */ | ||
diff --git a/include/asm-sparc/svr4.h b/include/asm-sparc/svr4.h deleted file mode 100644 index da1f1c980e2d..000000000000 --- a/include/asm-sparc/svr4.h +++ /dev/null | |||
@@ -1,119 +0,0 @@ | |||
1 | /* Solaris/SPARC constants and definitions -- | ||
2 | * (C) 1996 Miguel de Icaza | ||
3 | * | ||
4 | * This file is not meant to be included by user level applications | ||
5 | * but the solaris syscall emulator | ||
6 | */ | ||
7 | |||
8 | #ifndef _SPARC_SVR4_H | ||
9 | #define _SPARC_SVR4_H | ||
10 | |||
11 | /* Signals as used by svr4 */ | ||
12 | typedef struct { /* signal set type */ | ||
13 | ulong sigbits[4]; | ||
14 | } svr4_sigset_t; | ||
15 | |||
16 | /* Values for siginfo.code */ | ||
17 | #define SVR4_SINOINFO 32767 | ||
18 | /* Siginfo, sucker expects bunch of information on those parameters */ | ||
19 | typedef union { | ||
20 | char total_size [128]; | ||
21 | struct { | ||
22 | int signo; | ||
23 | int code; | ||
24 | int error; | ||
25 | union { | ||
26 | } data; | ||
27 | } siginfo; | ||
28 | } svr4_siginfo_t; | ||
29 | |||
30 | /* Context definition */ | ||
31 | |||
32 | /* Location of the user stored registers into a greg_t */ | ||
33 | enum { | ||
34 | SVR4_PSR, SVR4_PC, SVR4_NPC, SVR4_Y, | ||
35 | SVR4_G1, SVR4_G2, SVR4_G3, SVR4_G4, | ||
36 | SVR4_G5, SVR4_G6, SVR4_G7, SVR4_O0, | ||
37 | SVR4_O1, SVR4_O2, SVR4_O3, SVR4_O4, | ||
38 | SVR4_O5, SVR4_O6, SVR4_O7 | ||
39 | }; | ||
40 | |||
41 | /* sizeof (regs) / sizeof (greg_t), defined in the ABI */ | ||
42 | #define SVR4_NREGS 19 | ||
43 | #define SVR4_MAXWIN 31 | ||
44 | |||
45 | typedef struct { | ||
46 | uint rwin_lo[8]; | ||
47 | uint rwin_in[8]; | ||
48 | } svr4_rwindow_t; | ||
49 | |||
50 | typedef struct { | ||
51 | int count; | ||
52 | int __user *winptr [SVR4_MAXWIN]; /* pointer to the windows */ | ||
53 | svr4_rwindow_t win[SVR4_MAXWIN]; /* the windows */ | ||
54 | } svr4_gwindows_t; | ||
55 | |||
56 | typedef int svr4_gregset_t[SVR4_NREGS]; | ||
57 | |||
58 | typedef struct { | ||
59 | double fpu_regs[32]; | ||
60 | void *fp_q; | ||
61 | unsigned fp_fsr; | ||
62 | u_char fp_nqel; | ||
63 | u_char fp_nqsize; | ||
64 | u_char inuse; /* if fpu is in use */ | ||
65 | } svr4_fregset_t; | ||
66 | |||
67 | typedef struct { | ||
68 | uint id; /* if this holds "xrs" string => ptr is valid */ | ||
69 | caddr_t ptr; | ||
70 | } svr4_xrs_t; | ||
71 | |||
72 | /* Machine dependent context */ | ||
73 | typedef struct { | ||
74 | svr4_gregset_t greg; /* registers 0..19 (see top) */ | ||
75 | svr4_gwindows_t __user *gwin; /* may point to register windows */ | ||
76 | svr4_fregset_t freg; /* floating point registers */ | ||
77 | svr4_xrs_t xrs; /* mhm? */ | ||
78 | long pad[19]; | ||
79 | } svr4_mcontext_t; | ||
80 | |||
81 | /* flags for stack_t.flags */ | ||
82 | enum svr4_stack_flags { | ||
83 | SVR4_SS_ONSTACK, | ||
84 | SVR4_SS_DISABLE, | ||
85 | }; | ||
86 | |||
87 | /* signal stack exection place, unsupported */ | ||
88 | typedef struct svr4_stack_t { | ||
89 | char __user *sp; | ||
90 | int size; | ||
91 | int flags; | ||
92 | } svr4_stack_t; | ||
93 | |||
94 | /* Context used by getcontext and setcontext */ | ||
95 | typedef struct svr4_ucontext_t { | ||
96 | u_long flags; /* context flags, indicate what is loaded */ | ||
97 | struct svr4_ucontext *link; | ||
98 | svr4_sigset_t sigmask; | ||
99 | svr4_stack_t stack; | ||
100 | svr4_mcontext_t mcontext; | ||
101 | long pad[23]; | ||
102 | } svr4_ucontext_t; | ||
103 | |||
104 | /* windows hold the windows as they were at signal time, | ||
105 | * ucontext->mcontext holds a pointer to them. | ||
106 | * addresses for uc and si are passed as parameters to svr4 signal | ||
107 | * handler | ||
108 | */ | ||
109 | |||
110 | /* This is the signal frame that is passed to the signal handler */ | ||
111 | typedef struct { | ||
112 | svr4_gwindows_t gw; /* windows */ | ||
113 | svr4_ucontext_t uc; /* machine context */ | ||
114 | svr4_siginfo_t si; /* siginfo */ | ||
115 | } svr4_signal_frame_t; | ||
116 | |||
117 | #define SVR4_SF_ALIGNED (((sizeof (svr4_signal_frame_t) + 7) & (~7))) | ||
118 | |||
119 | #endif /* include control */ | ||
diff --git a/include/asm-sparc/termios.h b/include/asm-sparc/termios.h index 4333232abb9f..733d40504e1e 100644 --- a/include/asm-sparc/termios.h +++ b/include/asm-sparc/termios.h | |||
@@ -33,11 +33,6 @@ struct ltchars { | |||
33 | }; | 33 | }; |
34 | #endif /* __KERNEL__ */ | 34 | #endif /* __KERNEL__ */ |
35 | 35 | ||
36 | struct sunos_ttysize { | ||
37 | int st_lines; /* Lines on the terminal */ | ||
38 | int st_columns; /* Columns on the terminal */ | ||
39 | }; | ||
40 | |||
41 | struct winsize { | 36 | struct winsize { |
42 | unsigned short ws_row; | 37 | unsigned short ws_row; |
43 | unsigned short ws_col; | 38 | unsigned short ws_col; |
diff --git a/include/asm-sparc/user.h b/include/asm-sparc/user.h index b5f1abf733d5..3400ea87f148 100644 --- a/include/asm-sparc/user.h +++ b/include/asm-sparc/user.h | |||
@@ -1,60 +1,6 @@ | |||
1 | /* $Id: user.h,v 1.5 1998/02/23 01:49:22 rth Exp $ | ||
2 | * asm-sparc/user.h: Core file definitions for the Sparc. | ||
3 | * | ||
4 | * Keep in sync with reg.h. Actually, we could get rid of this | ||
5 | * one, since we won't a.out core dump that much anyways - miguel. | ||
6 | * Copyright (C) 1995 (davem@caip.rutgers.edu) | ||
7 | */ | ||
8 | #ifndef _SPARC_USER_H | 1 | #ifndef _SPARC_USER_H |
9 | #define _SPARC_USER_H | 2 | #define _SPARC_USER_H |
10 | 3 | ||
11 | #include <asm/a.out.h> | 4 | /* Nothing to define. */ |
12 | struct sunos_regs { | ||
13 | unsigned long psr, pc, npc, y; | ||
14 | unsigned long regs[15]; | ||
15 | }; | ||
16 | |||
17 | struct sunos_fpqueue { | ||
18 | unsigned long *addr; | ||
19 | unsigned long inst; | ||
20 | }; | ||
21 | |||
22 | struct sunos_fp { | ||
23 | union { | ||
24 | unsigned long regs[32]; | ||
25 | double reg_dbls[16]; | ||
26 | } fregs; | ||
27 | unsigned long fsr; | ||
28 | unsigned long flags; | ||
29 | unsigned long extra; | ||
30 | unsigned long fpq_count; | ||
31 | struct sunos_fpqueue fpq[16]; | ||
32 | }; | ||
33 | |||
34 | struct sunos_fpu { | ||
35 | struct sunos_fp fpstatus; | ||
36 | }; | ||
37 | |||
38 | /* The SunOS core file header layout. */ | ||
39 | struct user { | ||
40 | unsigned long magic; | ||
41 | unsigned long len; | ||
42 | struct sunos_regs regs; | ||
43 | struct exec uexec; | ||
44 | int signal; | ||
45 | size_t u_tsize; /* all of these in bytes! */ | ||
46 | size_t u_dsize; | ||
47 | size_t u_ssize; | ||
48 | char u_comm[17]; | ||
49 | struct sunos_fpu fpu; | ||
50 | unsigned long sigcode; /* Special sigcontext subcode, if any */ | ||
51 | }; | ||
52 | |||
53 | #define NBPG 0x2000 | ||
54 | #define UPAGES 1 | ||
55 | #define HOST_TEXT_START_ADDR (u.start_code) | ||
56 | #define HOST_DATA_START_ADDR (u.uexec.a_data) | ||
57 | #define HOST_STACK_END_ADDR (- u.u_ssize * NBPG) | ||
58 | #define SUNOS_CORE_MAGIC 0x080456 | ||
59 | 5 | ||
60 | #endif /* !(_SPARC_USER_H) */ | 6 | #endif /* !(_SPARC_USER_H) */ |
diff --git a/include/asm-sparc64/Kbuild b/include/asm-sparc64/Kbuild index a90dc82129d1..dce1cf9a9313 100644 --- a/include/asm-sparc64/Kbuild +++ b/include/asm-sparc64/Kbuild | |||
@@ -12,7 +12,6 @@ header-y += display7seg.h | |||
12 | header-y += envctrl.h | 12 | header-y += envctrl.h |
13 | header-y += openprom.h | 13 | header-y += openprom.h |
14 | header-y += openpromio.h | 14 | header-y += openpromio.h |
15 | header-y += pconf.h | ||
16 | header-y += psrcompat.h | 15 | header-y += psrcompat.h |
17 | header-y += pstate.h | 16 | header-y += pstate.h |
18 | header-y += reg.h | 17 | header-y += reg.h |
diff --git a/include/asm-sparc64/a.out-core.h b/include/asm-sparc64/a.out-core.h deleted file mode 100644 index 3499b3c425ca..000000000000 --- a/include/asm-sparc64/a.out-core.h +++ /dev/null | |||
@@ -1,31 +0,0 @@ | |||
1 | /* a.out coredump register dumper | ||
2 | * | ||
3 | * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. | ||
4 | * Written by David Howells (dhowells@redhat.com) | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or | ||
7 | * modify it under the terms of the GNU General Public Licence | ||
8 | * as published by the Free Software Foundation; either version | ||
9 | * 2 of the Licence, or (at your option) any later version. | ||
10 | */ | ||
11 | |||
12 | #ifndef _ASM_A_OUT_CORE_H | ||
13 | #define _ASM_A_OUT_CORE_H | ||
14 | |||
15 | #ifdef __KERNEL__ | ||
16 | |||
17 | #include <linux/user.h> | ||
18 | |||
19 | /* | ||
20 | * fill in the user structure for an a.out core dump | ||
21 | */ | ||
22 | static inline void aout_dump_thread(struct pt_regs *regs, struct user *dump) | ||
23 | { | ||
24 | /* Only should be used for SunOS and ancient a.out | ||
25 | * SparcLinux binaries... Not worth implementing. | ||
26 | */ | ||
27 | memset(dump, 0, sizeof(struct user)); | ||
28 | } | ||
29 | |||
30 | #endif /* __KERNEL__ */ | ||
31 | #endif /* _ASM_A_OUT_CORE_H */ | ||
diff --git a/include/asm-sparc64/a.out.h b/include/asm-sparc64/a.out.h deleted file mode 100644 index 44208c2a188e..000000000000 --- a/include/asm-sparc64/a.out.h +++ /dev/null | |||
@@ -1 +0,0 @@ | |||
1 | #include <asm-sparc/a.out.h> | ||
diff --git a/include/asm-sparc64/ioctls.h b/include/asm-sparc64/ioctls.h index 083c9a0f37de..c1be40647c99 100644 --- a/include/asm-sparc64/ioctls.h +++ b/include/asm-sparc64/ioctls.h | |||
@@ -44,8 +44,6 @@ | |||
44 | #define __TIOCSETX _IOW('t', 34, int) /* SunOS Specific */ | 44 | #define __TIOCSETX _IOW('t', 34, int) /* SunOS Specific */ |
45 | #define __TIOCGETX _IOR('t', 35, int) /* SunOS Specific */ | 45 | #define __TIOCGETX _IOR('t', 35, int) /* SunOS Specific */ |
46 | #define TIOCCONS _IO('t', 36) | 46 | #define TIOCCONS _IO('t', 36) |
47 | #define __TIOCSSIZE _IOW('t', 37, struct sunos_ttysize) /* SunOS Specific */ | ||
48 | #define __TIOCGSIZE _IOR('t', 38, struct sunos_ttysize) /* SunOS Specific */ | ||
49 | #define TIOCGSOFTCAR _IOR('t', 100, int) | 47 | #define TIOCGSOFTCAR _IOR('t', 100, int) |
50 | #define TIOCSSOFTCAR _IOW('t', 101, int) | 48 | #define TIOCSSOFTCAR _IOW('t', 101, int) |
51 | #define __TIOCUCNTL _IOW('t', 102, int) /* SunOS Specific */ | 49 | #define __TIOCUCNTL _IOW('t', 102, int) /* SunOS Specific */ |
diff --git a/include/asm-sparc64/mman.h b/include/asm-sparc64/mman.h index 8cc1860be630..e584563b56eb 100644 --- a/include/asm-sparc64/mman.h +++ b/include/asm-sparc64/mman.h | |||
@@ -22,19 +22,6 @@ | |||
22 | #define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */ | 22 | #define MAP_POPULATE 0x8000 /* populate (prefault) pagetables */ |
23 | #define MAP_NONBLOCK 0x10000 /* do not block on IO */ | 23 | #define MAP_NONBLOCK 0x10000 /* do not block on IO */ |
24 | 24 | ||
25 | /* XXX Need to add flags to SunOS's mctl, mlockall, and madvise system | ||
26 | * XXX calls. | ||
27 | */ | ||
28 | |||
29 | /* SunOS sys_mctl() stuff... */ | ||
30 | #define MC_SYNC 1 /* Sync pages in memory with storage (usu. a file) */ | ||
31 | #define MC_LOCK 2 /* Lock pages into core ram, do not allow swapping of them */ | ||
32 | #define MC_UNLOCK 3 /* Unlock pages locked via previous mctl() with MC_LOCK arg */ | ||
33 | #define MC_LOCKAS 5 /* Lock an entire address space of the calling process */ | ||
34 | #define MC_UNLOCKAS 6 /* Unlock entire address space of calling process */ | ||
35 | |||
36 | #define MADV_FREE 0x5 /* (Solaris) contents can be freed */ | ||
37 | |||
38 | #ifdef __KERNEL__ | 25 | #ifdef __KERNEL__ |
39 | #ifndef __ASSEMBLY__ | 26 | #ifndef __ASSEMBLY__ |
40 | #define arch_mmap_check sparc64_mmap_check | 27 | #define arch_mmap_check sparc64_mmap_check |
diff --git a/include/asm-sparc64/namei.h b/include/asm-sparc64/namei.h index ccda19e28695..275161f21213 100644 --- a/include/asm-sparc64/namei.h +++ b/include/asm-sparc64/namei.h | |||
@@ -8,19 +8,6 @@ | |||
8 | #ifndef __SPARC64_NAMEI_H | 8 | #ifndef __SPARC64_NAMEI_H |
9 | #define __SPARC64_NAMEI_H | 9 | #define __SPARC64_NAMEI_H |
10 | 10 | ||
11 | #define SPARC_BSD_EMUL "/usr/gnemul/sunos/" | 11 | #define __emul_prefix() NULL |
12 | #define SPARC_SOL_EMUL "/usr/gnemul/solaris/" | ||
13 | |||
14 | static inline char * __emul_prefix(void) | ||
15 | { | ||
16 | switch (current->personality) { | ||
17 | case PER_SUNOS: | ||
18 | return SPARC_BSD_EMUL; | ||
19 | case PER_SVR4: | ||
20 | return SPARC_SOL_EMUL; | ||
21 | default: | ||
22 | return NULL; | ||
23 | } | ||
24 | } | ||
25 | 12 | ||
26 | #endif /* __SPARC64_NAMEI_H */ | 13 | #endif /* __SPARC64_NAMEI_H */ |
diff --git a/include/asm-sparc64/pconf.h b/include/asm-sparc64/pconf.h deleted file mode 100644 index aad106a70908..000000000000 --- a/include/asm-sparc64/pconf.h +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | /* $Id: pconf.h,v 1.1 1996/12/02 00:09:10 davem Exp $ | ||
2 | * pconf.h: pathconf() and fpathconf() defines for SunOS | ||
3 | * system call compatibility. | ||
4 | * | ||
5 | * Copyright (C) 1995, 1996 David S. Miller (davem@caip.rutgers.edu) | ||
6 | */ | ||
7 | |||
8 | #ifndef _SPARC64_PCONF_H | ||
9 | #define _SPARC64_PCONF_H | ||
10 | |||
11 | #include <linux/fs.h> | ||
12 | #include <linux/limits.h> | ||
13 | |||
14 | #define _PCONF_LINK 1 /* Max number of links to an object */ | ||
15 | #define _PCONF_CANON 2 /* TTY input buffer line size */ | ||
16 | #define _PCONF_INPUT 3 /* Biggest packet a tty can imbibe at once */ | ||
17 | #define _PCONF_NAME 4 /* Filename length max */ | ||
18 | #define _PCONF_PATH 5 /* Max size of a pathname */ | ||
19 | #define _PCONF_PIPE 6 /* Buffer size for a pipe */ | ||
20 | #define _PCONF_CHRESTRICT 7 /* Can only root chown files? */ | ||
21 | #define _PCONF_NOTRUNC 8 /* Are pathnames truncated if too big? */ | ||
22 | #define _PCONF_VDISABLE 9 /* Magic char to disable special tty chars */ | ||
23 | #define _PCONF_MAXPCONF 9 | ||
24 | |||
25 | #endif /* !(_SPARC64_PCONF_H) */ | ||
diff --git a/include/asm-sparc64/socket.h b/include/asm-sparc64/socket.h index 44a625af6e31..8cf071fae3eb 100644 --- a/include/asm-sparc64/socket.h +++ b/include/asm-sparc64/socket.h | |||
@@ -24,9 +24,6 @@ | |||
24 | #define SO_SNDTIMEO 0x4000 | 24 | #define SO_SNDTIMEO 0x4000 |
25 | #define SO_ACCEPTCONN 0x8000 | 25 | #define SO_ACCEPTCONN 0x8000 |
26 | 26 | ||
27 | /* wha!??? */ | ||
28 | #define SO_DONTLINGER (~SO_LINGER) /* Older SunOS compat. hack */ | ||
29 | |||
30 | #define SO_SNDBUF 0x1001 | 27 | #define SO_SNDBUF 0x1001 |
31 | #define SO_RCVBUF 0x1002 | 28 | #define SO_RCVBUF 0x1002 |
32 | #define SO_SNDBUFFORCE 0x100a | 29 | #define SO_SNDBUFFORCE 0x100a |
diff --git a/include/asm-sparc64/solerrno.h b/include/asm-sparc64/solerrno.h deleted file mode 100644 index a2ea6fcf3446..000000000000 --- a/include/asm-sparc64/solerrno.h +++ /dev/null | |||
@@ -1,132 +0,0 @@ | |||
1 | /* $Id: solerrno.h,v 1.1 1996/12/26 14:22:40 davem Exp $ | ||
2 | * solerrno.h: Solaris error return codes for compatibility. | ||
3 | * | ||
4 | * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu) | ||
5 | */ | ||
6 | |||
7 | #ifndef _SPARC64_SOLERRNO_H | ||
8 | #define _SPARC64_SOLERRNO_H | ||
9 | |||
10 | #define SOL_EPERM 1 /* Required superuser access perms */ | ||
11 | #define SOL_ENOENT 2 /* File or directory does not exist */ | ||
12 | #define SOL_ESRCH 3 /* Process did not exist */ | ||
13 | #define SOL_EINTR 4 /* System call was interrupted */ | ||
14 | #define SOL_EIO 5 /* An i/o error occurred */ | ||
15 | #define SOL_ENXIO 6 /* Device or Address does not exist */ | ||
16 | #define SOL_E2BIG 7 /* Too many arguments were given */ | ||
17 | #define SOL_ENOEXEC 8 /* Header of executable was munged */ | ||
18 | #define SOL_EBADF 9 /* Bogus file number */ | ||
19 | #define SOL_ECHILD 10 /* No children of process exist */ | ||
20 | #define SOL_EAGAIN 11 /* beep beep, "try again later" */ | ||
21 | #define SOL_ENOMEM 12 /* No memory available */ | ||
22 | #define SOL_EACCES 13 /* Access not allowed */ | ||
23 | #define SOL_EFAULT 14 /* Address passed was invalid */ | ||
24 | #define SOL_ENOTBLK 15 /* blkdev op on non-block device */ | ||
25 | #define SOL_EBUSY 16 /* Mounted device was busy */ | ||
26 | #define SOL_EEXIST 17 /* File specified already exists */ | ||
27 | #define SOL_EXDEV 18 /* Link request across diff devices */ | ||
28 | #define SOL_ENODEV 19 /* Device does not exist on system */ | ||
29 | #define SOL_ENOTDIR 20 /* Dir operation on non-directory */ | ||
30 | #define SOL_EISDIR 21 /* File was of directory type */ | ||
31 | #define SOL_EINVAL 22 /* Argument passed was invalid */ | ||
32 | #define SOL_ENFILE 23 /* No more room in file table */ | ||
33 | #define SOL_EMFILE 24 /* Proc has too many files open */ | ||
34 | #define SOL_ENOTTY 25 /* Ioctl was invalid for req device */ | ||
35 | #define SOL_ETXTBSY 26 /* Text file in busy state */ | ||
36 | #define SOL_EFBIG 27 /* Too big of a file for operation */ | ||
37 | #define SOL_ENOSPC 28 /* Disk is full */ | ||
38 | #define SOL_ESPIPE 29 /* Seek attempted on non-seeking dev*/ | ||
39 | #define SOL_EROFS 30 /* Write attempted on read-only fs */ | ||
40 | #define SOL_EMLINK 31 /* Too many links in file search */ | ||
41 | #define SOL_EPIPE 32 /* Call a plumber */ | ||
42 | #define SOL_EDOM 33 /* Argument was out of fct domain */ | ||
43 | #define SOL_ERANGE 34 /* Could not represent math result */ | ||
44 | #define SOL_ENOMSG 35 /* Message of req type doesn't exist */ | ||
45 | #define SOL_EIDRM 36 /* Identifier has been removed */ | ||
46 | #define SOL_ECHRNG 37 /* Req channel number out of range */ | ||
47 | #define SOL_EL2NSYNC 38 /* Could not sync at run level 2 */ | ||
48 | #define SOL_EL3HLT 39 /* Halted at run level 3 */ | ||
49 | #define SOL_EL3RST 40 /* Reset at run level 3 */ | ||
50 | #define SOL_ELNRNG 41 /* Out of range link number */ | ||
51 | #define SOL_EUNATCH 42 /* Driver for protocol not attached */ | ||
52 | #define SOL_ENOCSI 43 /* CSI structure not around */ | ||
53 | #define SOL_EL2HLT 44 /* Halted at run level 2 */ | ||
54 | #define SOL_EDEADLK 45 /* Deadlock condition detected */ | ||
55 | #define SOL_ENOLCK 46 /* Record locks unavailable */ | ||
56 | #define SOL_ECANCELED 47 /* Cancellation of oper. happened */ | ||
57 | #define SOL_ENOTSUP 48 /* Attempt of unsupported operation */ | ||
58 | #define SOL_EDQUOT 49 /* Users disk quota exceeded */ | ||
59 | #define SOL_EBADE 50 /* Invalid exchange */ | ||
60 | #define SOL_EBADR 51 /* Request descriptor was invalid */ | ||
61 | #define SOL_EXFULL 52 /* Full exchange */ | ||
62 | #define SOL_ENOANO 53 /* ano does not exist */ | ||
63 | #define SOL_EBADRQC 54 /* Req code was invalid */ | ||
64 | #define SOL_EBADSLT 55 /* Bad slot number */ | ||
65 | #define SOL_EDEADLOCK 56 /* Deadlock in fs error */ | ||
66 | #define SOL_EBFONT 57 /* Font file format invalid */ | ||
67 | /* YOW, I LOVE SYSV STREAMS!!!! */ | ||
68 | #define SOL_ENOSTR 60 /* Stream-op on non-stream dev */ | ||
69 | #define SOL_ENODATA 61 /* No data avail at this time */ | ||
70 | #define SOL_ETIME 62 /* Expiration of time occurred */ | ||
71 | #define SOL_ENOSR 63 /* Streams resources exhausted */ | ||
72 | #define SOL_ENONET 64 /* No network connected */ | ||
73 | #define SOL_ENOPKG 65 /* Non-installed package */ | ||
74 | #define SOL_EREMOTE 66 /* Object was on remote machine */ | ||
75 | #define SOL_ENOLINK 67 /* Cut link */ | ||
76 | #define SOL_EADV 68 /* Error in advertise */ | ||
77 | #define SOL_ESRMNT 69 /* Some magic srmount problem */ | ||
78 | #define SOL_ECOMM 70 /* During send, comm error occurred */ | ||
79 | #define SOL_EPROTO 71 /* Protocol botch */ | ||
80 | #define SOL_EMULTIHOP 74 /* Multihop attempted */ | ||
81 | #define SOL_EBADMSG 77 /* Message was unreadable */ | ||
82 | #define SOL_ENAMETOOLONG 78 /* Too long of a path name */ | ||
83 | #define SOL_EOVERFLOW 79 /* Data type too small for datum */ | ||
84 | #define SOL_ENOTUNIQ 80 /* Logical name was not unique */ | ||
85 | #define SOL_EBADFD 81 /* Op cannot be performed on fd */ | ||
86 | #define SOL_EREMCHG 82 /* Remote address is now different */ | ||
87 | #define SOL_ELIBACC 83 /* Shared lib could not be accessed */ | ||
88 | #define SOL_ELIBBAD 84 /* ShLib is corrupted in some way */ | ||
89 | #define SOL_ELIBSCN 85 /* A.out ShLib problems */ | ||
90 | #define SOL_ELIBMAX 86 /* Exceeded ShLib linkage limit */ | ||
91 | #define SOL_ELIBEXEC 87 /* Execution of ShLib attempted */ | ||
92 | #define SOL_EILSEQ 88 /* Bad byte sequence found */ | ||
93 | #define SOL_ENOSYS 89 /* Invalid filesystem operation */ | ||
94 | #define SOL_ELOOP 90 /* Detected loop in symbolic links */ | ||
95 | #define SOL_ERESTART 91 /* System call is restartable */ | ||
96 | #define SOL_ESTRPIPE 92 /* Do not sleep in head of stream */ | ||
97 | #define SOL_ENOTEMPTY 93 /* Rmdir of non-empty directory */ | ||
98 | #define SOL_EUSERS 94 /* Over abundance of users for ufs */ | ||
99 | #define SOL_ENOTSOCK 95 /* Sock-op on non-sock */ | ||
100 | #define SOL_EDESTADDRREQ 96 /* No dest addr given, but needed */ | ||
101 | #define SOL_EMSGSIZE 97 /* Msg too big */ | ||
102 | #define SOL_EPROTOTYPE 98 /* Bad socket protocol */ | ||
103 | #define SOL_ENOPROTOOPT 99 /* Unavailable protocol */ | ||
104 | #define SOL_EPROTONOSUPPORT 120 /* Unsupported protocol */ | ||
105 | #define SOL_ESOCKTNOSUPPORT 121 /* Unsupported socket type */ | ||
106 | #define SOL_EOPNOTSUPP 122 /* Unsupported sock-op */ | ||
107 | #define SOL_EPFNOSUPPORT 123 /* Unsupported protocol family */ | ||
108 | #define SOL_EAFNOSUPPORT 124 /* Unsup addr family for protocol */ | ||
109 | #define SOL_EADDRINUSE 125 /* Req addr is already in use */ | ||
110 | #define SOL_EADDRNOTAVAIL 126 /* Req addr not available right now */ | ||
111 | #define SOL_ENETDOWN 127 /* Your subnet is on fire */ | ||
112 | #define SOL_ENETUNREACH 128 /* Someone playing with gateway and */ | ||
113 | /* did not tell you he was going to */ | ||
114 | #define SOL_ENETRESET 129 /* Buy less-buggy ethernet cards */ | ||
115 | #define SOL_ECONNABORTED 130 /* Aborted connection due to sw */ | ||
116 | #define SOL_ECONNRESET 131 /* Your peers reset your connection */ | ||
117 | #define SOL_ENOBUFS 132 /* No buffer space available */ | ||
118 | #define SOL_EISCONN 133 /* Connect on already connected */ | ||
119 | /* socket attempted */ | ||
120 | #define SOL_ENOTCONN 134 /* Comm on non-connected socket */ | ||
121 | #define SOL_ESHUTDOWN 143 /* Op attempted after sock-shutdown */ | ||
122 | #define SOL_ETOOMANYREFS 144 /* Reference limit exceeded */ | ||
123 | #define SOL_ETIMEDOUT 145 /* Timed out connection */ | ||
124 | #define SOL_ECONNREFUSED 146 /* Connection refused by remote host*/ | ||
125 | #define SOL_EHOSTDOWN 147 /* Remote host is up in flames */ | ||
126 | #define SOL_EHOSTUNREACH 148 /* Make a left at Easton Ave..... */ | ||
127 | #define SOL_EWOULDBLOCK EAGAIN /* Just an alias */ | ||
128 | #define SOL_EALREADY 149 /* Operation is already occurring */ | ||
129 | #define SOL_EINPROGRESS 150 /* Operation is happening now */ | ||
130 | #define SOL_ESTALE 151 /* Fungus growth on NFS file handle */ | ||
131 | |||
132 | #endif /* !(_SPARC64_SOLERRNO_H) */ | ||
diff --git a/include/asm-sparc64/svr4.h b/include/asm-sparc64/svr4.h deleted file mode 100644 index c96d5f116e1c..000000000000 --- a/include/asm-sparc64/svr4.h +++ /dev/null | |||
@@ -1,120 +0,0 @@ | |||
1 | /* Solaris/SPARC constants and definitions -- | ||
2 | * (C) 1996 Miguel de Icaza | ||
3 | * | ||
4 | * This file is not meant to be included by user level applications | ||
5 | * but the solaris syscall emulator | ||
6 | */ | ||
7 | |||
8 | #ifndef _SPARC64_SVR4_H | ||
9 | #define _SPARC64_SVR4_H | ||
10 | |||
11 | /* Signals as used by svr4 */ | ||
12 | typedef struct { /* signal set type */ | ||
13 | uint sigbits[4]; | ||
14 | } svr4_sigset_t; | ||
15 | |||
16 | /* Values for siginfo.code */ | ||
17 | #define SVR4_SINOINFO 32767 | ||
18 | /* Siginfo, sucker expects bunch of information on those parameters */ | ||
19 | typedef union { | ||
20 | char total_size [128]; | ||
21 | struct { | ||
22 | int signo; | ||
23 | int code; | ||
24 | int error; | ||
25 | union { | ||
26 | } data; | ||
27 | } siginfo; | ||
28 | } svr4_siginfo_t; | ||
29 | |||
30 | /* Context definition */ | ||
31 | |||
32 | /* Location of the user stored registers into a greg_t */ | ||
33 | enum { | ||
34 | SVR4_PSR, SVR4_PC, SVR4_NPC, SVR4_Y, | ||
35 | SVR4_G1, SVR4_G2, SVR4_G3, SVR4_G4, | ||
36 | SVR4_G5, SVR4_G6, SVR4_G7, SVR4_O0, | ||
37 | SVR4_O1, SVR4_O2, SVR4_O3, SVR4_O4, | ||
38 | SVR4_O5, SVR4_O6, SVR4_O7 | ||
39 | }; | ||
40 | |||
41 | /* sizeof (regs) / sizeof (greg_t), defined in the ABI */ | ||
42 | #define SVR4_NREGS 19 | ||
43 | #define SVR4_MAXWIN 31 | ||
44 | |||
45 | typedef struct { | ||
46 | u32 rwin_lo[8]; | ||
47 | u32 rwin_in[8]; | ||
48 | } svr4_rwindow_t; | ||
49 | |||
50 | typedef struct { | ||
51 | int count; | ||
52 | u32 winptr [SVR4_MAXWIN]; /* pointer to the windows */ | ||
53 | |||
54 | svr4_rwindow_t win[SVR4_MAXWIN]; /* the windows */ | ||
55 | } svr4_gwindows_t; | ||
56 | |||
57 | typedef int svr4_gregset_t[SVR4_NREGS]; | ||
58 | |||
59 | typedef struct { | ||
60 | u64 fpu_regs[32]; | ||
61 | u32 fp_q; | ||
62 | u32 fp_fsr; | ||
63 | u_char fp_nqel; | ||
64 | u_char fp_nqsize; | ||
65 | u_char inuse; /* if fpu is in use */ | ||
66 | } svr4_fregset_t; | ||
67 | |||
68 | typedef struct { | ||
69 | u32 id; /* if this holds "xrs" string => ptr is valid */ | ||
70 | u32 ptr; | ||
71 | } svr4_xrs_t; | ||
72 | |||
73 | /* Machine dependent context */ | ||
74 | typedef struct { | ||
75 | svr4_gregset_t greg; /* registers 0..19 (see top) */ | ||
76 | u32 gwin; /* may point to register windows */ | ||
77 | svr4_fregset_t freg; /* floating point registers */ | ||
78 | svr4_xrs_t xrs; /* mhm? */ | ||
79 | int pad[19]; | ||
80 | } svr4_mcontext_t; | ||
81 | |||
82 | /* flags for stack_t.flags */ | ||
83 | enum svr4_stack_flags { | ||
84 | SVR4_SS_ONSTACK, | ||
85 | SVR4_SS_DISABLE, | ||
86 | }; | ||
87 | |||
88 | /* signal stack execution place, unsupported */ | ||
89 | typedef struct svr4_stack_t { | ||
90 | u32 sp; | ||
91 | int size; | ||
92 | int flags; | ||
93 | } svr4_stack_t; | ||
94 | |||
95 | /* Context used by getcontext and setcontext */ | ||
96 | typedef struct svr4_ucontext_t { | ||
97 | u32 flags; /* context flags, indicate what is loaded */ | ||
98 | u32 link; | ||
99 | svr4_sigset_t sigmask; | ||
100 | svr4_stack_t stack; | ||
101 | svr4_mcontext_t mcontext; | ||
102 | int pad[23]; | ||
103 | } svr4_ucontext_t; | ||
104 | |||
105 | /* windows hold the windows as they were at signal time, | ||
106 | * ucontext->mcontext holds a pointer to them. | ||
107 | * addresses for uc and si are passed as parameters to svr4 signal | ||
108 | * handler | ||
109 | */ | ||
110 | |||
111 | /* This is the signal frame that is passed to the signal handler */ | ||
112 | typedef struct { | ||
113 | svr4_gwindows_t gw; /* windows */ | ||
114 | svr4_ucontext_t uc; /* machine context */ | ||
115 | svr4_siginfo_t si; /* siginfo */ | ||
116 | } svr4_signal_frame_t; | ||
117 | |||
118 | #define SVR4_SF_ALIGNED (((sizeof (svr4_signal_frame_t) + 7) & (~7))) | ||
119 | |||
120 | #endif /* include control */ | ||
diff --git a/include/asm-sparc64/termios.h b/include/asm-sparc64/termios.h index ef527211f8a8..cacbea171ad7 100644 --- a/include/asm-sparc64/termios.h +++ b/include/asm-sparc64/termios.h | |||
@@ -33,11 +33,6 @@ struct ltchars { | |||
33 | }; | 33 | }; |
34 | #endif /* __KERNEL__ */ | 34 | #endif /* __KERNEL__ */ |
35 | 35 | ||
36 | struct sunos_ttysize { | ||
37 | int st_lines; /* Lines on the terminal */ | ||
38 | int st_columns; /* Columns on the terminal */ | ||
39 | }; | ||
40 | |||
41 | struct winsize { | 36 | struct winsize { |
42 | unsigned short ws_row; | 37 | unsigned short ws_row; |
43 | unsigned short ws_col; | 38 | unsigned short ws_col; |
diff --git a/include/asm-sparc64/ttable.h b/include/asm-sparc64/ttable.h index bbb9c8f13d61..7208a777750e 100644 --- a/include/asm-sparc64/ttable.h +++ b/include/asm-sparc64/ttable.h | |||
@@ -99,14 +99,6 @@ | |||
99 | or %l7, %lo(systbl), %l7; \ | 99 | or %l7, %lo(systbl), %l7; \ |
100 | nop; nop; | 100 | nop; nop; |
101 | 101 | ||
102 | #define INDIRECT_SOLARIS_SYSCALL(num) \ | ||
103 | sethi %hi(109f), %g7; \ | ||
104 | ba,pt %xcc, etrap; \ | ||
105 | 109: or %g7, %lo(109b), %g7; \ | ||
106 | ba,pt %xcc, tl0_solaris + 0xc; \ | ||
107 | mov num, %g1; \ | ||
108 | nop;nop;nop; | ||
109 | |||
110 | #define TRAP_UTRAP(handler,lvl) \ | 102 | #define TRAP_UTRAP(handler,lvl) \ |
111 | mov handler, %g3; \ | 103 | mov handler, %g3; \ |
112 | ba,pt %xcc, utrap_trap; \ | 104 | ba,pt %xcc, utrap_trap; \ |
@@ -117,11 +109,6 @@ | |||
117 | nop; \ | 109 | nop; \ |
118 | nop; | 110 | nop; |
119 | 111 | ||
120 | #ifdef CONFIG_SUNOS_EMUL | ||
121 | #define SUNOS_SYSCALL_TRAP SYSCALL_TRAP(linux_sparc_syscall32, sunos_sys_table) | ||
122 | #else | ||
123 | #define SUNOS_SYSCALL_TRAP TRAP(sunos_syscall) | ||
124 | #endif | ||
125 | #ifdef CONFIG_COMPAT | 112 | #ifdef CONFIG_COMPAT |
126 | #define LINUX_32BIT_SYSCALL_TRAP SYSCALL_TRAP(linux_sparc_syscall32, sys_call_table32) | 113 | #define LINUX_32BIT_SYSCALL_TRAP SYSCALL_TRAP(linux_sparc_syscall32, sys_call_table32) |
127 | #else | 114 | #else |
@@ -130,11 +117,6 @@ | |||
130 | #define LINUX_64BIT_SYSCALL_TRAP SYSCALL_TRAP(linux_sparc_syscall, sys_call_table64) | 117 | #define LINUX_64BIT_SYSCALL_TRAP SYSCALL_TRAP(linux_sparc_syscall, sys_call_table64) |
131 | #define GETCC_TRAP TRAP(getcc) | 118 | #define GETCC_TRAP TRAP(getcc) |
132 | #define SETCC_TRAP TRAP(setcc) | 119 | #define SETCC_TRAP TRAP(setcc) |
133 | #ifdef CONFIG_SOLARIS_EMUL | ||
134 | #define SOLARIS_SYSCALL_TRAP TRAP(solaris_sparc_syscall) | ||
135 | #else | ||
136 | #define SOLARIS_SYSCALL_TRAP TRAP(solaris_syscall) | ||
137 | #endif | ||
138 | #define BREAKPOINT_TRAP TRAP(breakpoint_trap) | 120 | #define BREAKPOINT_TRAP TRAP(breakpoint_trap) |
139 | 121 | ||
140 | #ifdef CONFIG_TRACE_IRQFLAGS | 122 | #ifdef CONFIG_TRACE_IRQFLAGS |
diff --git a/include/asm-sparc64/unistd.h b/include/asm-sparc64/unistd.h index 77559da0ea3f..13be4453a1f0 100644 --- a/include/asm-sparc64/unistd.h +++ b/include/asm-sparc64/unistd.h | |||
@@ -338,16 +338,6 @@ | |||
338 | #define NR_SYSCALLS 317 | 338 | #define NR_SYSCALLS 317 |
339 | 339 | ||
340 | #ifdef __KERNEL__ | 340 | #ifdef __KERNEL__ |
341 | /* sysconf options, for SunOS compatibility */ | ||
342 | #define _SC_ARG_MAX 1 | ||
343 | #define _SC_CHILD_MAX 2 | ||
344 | #define _SC_CLK_TCK 3 | ||
345 | #define _SC_NGROUPS_MAX 4 | ||
346 | #define _SC_OPEN_MAX 5 | ||
347 | #define _SC_JOB_CONTROL 6 | ||
348 | #define _SC_SAVED_IDS 7 | ||
349 | #define _SC_VERSION 8 | ||
350 | |||
351 | #define __ARCH_WANT_IPC_PARSE_VERSION | 341 | #define __ARCH_WANT_IPC_PARSE_VERSION |
352 | #define __ARCH_WANT_OLD_READDIR | 342 | #define __ARCH_WANT_OLD_READDIR |
353 | #define __ARCH_WANT_STAT64 | 343 | #define __ARCH_WANT_STAT64 |
diff --git a/include/asm-sparc64/user.h b/include/asm-sparc64/user.h index 02b138943837..29fc6e906c29 100644 --- a/include/asm-sparc64/user.h +++ b/include/asm-sparc64/user.h | |||
@@ -1,60 +1 @@ | |||
1 | /* $Id: user.h,v 1.1 1996/12/26 14:22:44 davem Exp $ | #include <asm-sparc/user.h> | |
2 | * asm-sparc64/user.h: Core file definitions for the Sparc. | ||
3 | * | ||
4 | * Keep in sync with reg.h. Actually, we could get rid of this | ||
5 | * one, since we won't a.out core dump that much anyways - miguel. | ||
6 | * Copyright (C) 1995 (davem@caip.rutgers.edu) | ||
7 | */ | ||
8 | #ifndef _SPARC64_USER_H | ||
9 | #define _SPARC64_USER_H | ||
10 | |||
11 | #include <linux/a.out.h> | ||
12 | struct sunos_regs { | ||
13 | unsigned int psr, pc, npc, y; | ||
14 | unsigned int regs[15]; | ||
15 | }; | ||
16 | |||
17 | struct sunos_fpqueue { | ||
18 | unsigned int *addr; | ||
19 | unsigned int inst; | ||
20 | }; | ||
21 | |||
22 | struct sunos_fp { | ||
23 | union { | ||
24 | unsigned int regs[32]; | ||
25 | double reg_dbls[16]; | ||
26 | } fregs; | ||
27 | unsigned int fsr; | ||
28 | unsigned int flags; | ||
29 | unsigned int extra; | ||
30 | unsigned int fpq_count; | ||
31 | struct sunos_fpqueue fpq[16]; | ||
32 | }; | ||
33 | |||
34 | struct sunos_fpu { | ||
35 | struct sunos_fp fpstatus; | ||
36 | }; | ||
37 | |||
38 | /* The SunOS core file header layout. */ | ||
39 | struct user { | ||
40 | unsigned int magic; | ||
41 | unsigned int len; | ||
42 | struct sunos_regs regs; | ||
43 | struct exec uexec; | ||
44 | int signal; | ||
45 | size_t u_tsize; /* all of these in bytes! */ | ||
46 | size_t u_dsize; | ||
47 | size_t u_ssize; | ||
48 | char u_comm[17]; | ||
49 | struct sunos_fpu fpu; | ||
50 | unsigned int sigcode; /* Special sigcontext subcode, if any */ | ||
51 | }; | ||
52 | |||
53 | #define NBPG PAGE_SIZE /* XXX 4096 maybe? */ | ||
54 | #define UPAGES 1 | ||
55 | #define HOST_TEXT_START_ADDR (u.start_code) | ||
56 | #define HOST_DATA_START_ADDR (u.start_data) | ||
57 | #define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) | ||
58 | #define SUNOS_CORE_MAGIC 0x080456 | ||
59 | |||
60 | #endif /* !(_SPARC64_USER_H) */ | ||