DEVEL15-dynamic-vcache-allocation-20090319
[openafs.git] / src / config / param.sparc64_linux26.h
1 #ifndef UKERNEL
2 /* This section for kernel libafs compiles only */
3
4 /* 
5  * Copyright 2000, International Business Machines Corporation and others.
6  * All Rights Reserved.
7  * 
8  * This software has been released under the terms of the IBM Public
9  * License.  For details, see the LICENSE file in the top-level source
10  * directory or online at http://www.openafs.org/dl/license10.html
11  */
12
13
14 #ifndef _PARAM_SPARC64_LINUX26_H_
15 #define _PARAM_SPARC64_LINUX26_H_
16
17 /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel,
18  * it's a judgment call. If something is obviously sparc64 specific, use that
19  * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2"
20  * in the sysname is the current version of the client. This takes into
21  * account the perferred OS user space configuration as well as the kernel.
22  */
23
24 #define AFS_LINUX20_ENV 1
25 #define AFS_LINUX22_ENV 1
26 #define AFS_LINUX24_ENV 1
27 #define AFS_LINUX26_ENV 1
28 #define AFS_SPARC64_LINUX20_ENV 1
29 #define AFS_SPARC64_LINUX22_ENV 1
30 #define AFS_SPARC64_LINUX24_ENV 1
31 #define AFS_SPARC64_LINUX26_ENV 1
32 #define AFS_LINUX_64BIT_KERNEL 1
33
34 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
35 #define AFS_SYSCALL 227
36 #define AFS_64BIT_IOPS_ENV  1
37 #define AFS_NAMEI_ENV     1     /* User space interface to file system */
38
39 #define AFS_64BIT_ENV           1       /* Defines afs_int32 as int, not long. */
40 #define AFS_64BIT_CLIENT        1
41 #define AFS_32BIT_USR_ENV       1
42 #define AFS_64BITPOINTER_ENV    1       /* pointers are 64 bits. */
43 #define AFS_MAXVCOUNT_ENV       1
44
45 #if defined(__KERNEL__) && !defined(KDUMP_KERNEL)
46
47 #ifdef CONFIG_SMP
48 #ifndef AFS_SMP
49 #define AFS_SMP 1
50 #endif
51 #endif
52 /* Using "AFS_SMP" to map to however many #define's are required to get
53  * MP to compile for Linux
54  */
55 #ifdef AFS_SMP
56 #ifndef CONFIG_SMP
57 #define CONFIG_SMP 1
58 #endif
59 #define __SMP__
60 #endif
61 #define AFS_GLOBAL_SUNLOCK
62
63 #endif /* __KERNEL__  && !DUMP_KERNEL */
64 #include <afs/afs_sysnames.h>
65
66 #define AFS_USERSPACE_IP_ADDR 1
67 #define RXK_LISTENER_ENV 1
68 #define AFS_GCPAGS      1
69
70 /* Machine / Operating system information */
71 #define SYS_NAME        "sparc64_linux26"
72 #define SYS_NAME_ID     SYS_NAME_ID_sparc64_linux26
73 #define AFSBIG_ENDIAN    1
74 #define AFS_HAVE_FFS        1   /* Use system's ffs. */
75 #define AFS_HAVE_STATVFS    0   /* System doesn't support statvfs */
76 #define AFS_VM_RDWR_ENV     1   /* read/write implemented via VM */
77
78
79 #ifdef KERNEL
80 #ifndef MIN
81 #define MIN(A,B) ((A) < (B) ? (A) : (B))
82 #endif
83 #ifndef MAX
84 #define MAX(A,B) ((A) > (B) ? (A) : (B))
85 #endif
86 #endif /* KERNEL */
87
88 /* on sparclinux is O_LARGEFILE defined but there is not off64_t,
89    so small hack to get usd_file.c work */
90 #ifndef KERNEL
91 #define __USE_FILE_OFFSET64 1
92 #define __USE_LARGEFILE64 1
93 #if !defined off64_t
94 #define off64_t __off64_t
95 #endif
96 #endif
97
98 #ifdef __GLIBC__
99 #if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 3)
100 #define USE_UCONTEXT
101 #endif
102 #endif
103
104 #endif /* _PARAM_SPARC64_LINUX26_H_ */
105
106 #else /* !defined(UKERNEL) */
107
108 /* This section for user space compiles only */
109
110 /* 
111  * Copyright 2000, International Business Machines Corporation and others.
112  * All Rights Reserved.
113  * 
114  * This software has been released under the terms of the IBM Public
115  * License.  For details, see the LICENSE file in the top-level source
116  * directory or online at http://www.openafs.org/dl/license10.html
117  */
118
119 #ifndef _PARAM_USR_SPARC64_LINUX26_H_
120 #define _PARAM_USR_SPARC64_LINUX26_H_
121
122 /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel,
123  * it's a judgment call. If something is obviously sparc64 specific, use that
124  * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2"
125  * in the sysname is the current version of the client. This takes into
126  * account the perferred OS user space configuration as well as the kernel.
127  */
128
129 #define UKERNEL                 1       /* user space kernel */
130 #define AFS_ENV                 1
131 #define AFS_USR_LINUX20_ENV     1
132 #define AFS_USR_LINUX22_ENV     1
133 #define AFS_USR_LINUX24_ENV     1
134 #define AFS_USR_LINUX26_ENV     1
135 #define AFS_NONFSTRANS 1
136
137 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
138 #define AFS_SYSCALL 227
139 #define AFS_64BIT_IOPS_ENV  1
140 #define AFS_NAMEI_ENV     1     /* User space interface to file system */
141 #include <afs/afs_sysnames.h>
142
143 #define AFS_USERSPACE_IP_ADDR 1
144 #define RXK_LISTENER_ENV 1
145 #define AFS_GCPAGS              0       /* if nonzero, garbage collect PAGs */
146
147
148 /* Machine / Operating system information */
149 #define SYS_NAME        "sparc64_linux26"
150 #define SYS_NAME_ID     SYS_NAME_ID_sparc64_linux26
151 #define AFSBIG_ENDIAN    1
152 #define AFS_HAVE_FFS        1   /* Use system's ffs. */
153 #define AFS_HAVE_STATVFS    0   /* System doesn't support statvfs */
154 #define AFS_VM_RDWR_ENV     1   /* read/write implemented via VM */
155
156 #define afsio_iov       uio_iov
157 #define afsio_iovcnt    uio_iovcnt
158 #define afsio_offset    uio_offset
159 #define afsio_seg       uio_segflg
160 #define afsio_fmode     uio_fmode
161 #define afsio_resid     uio_resid
162 #define AFS_UIOSYS      1
163 #define AFS_UIOUSER     UIO_USERSPACE
164 #define AFS_CLBYTES     MCLBYTES
165 #define AFS_MINCHANGE   2
166 #define VATTR_NULL      usr_vattr_null
167
168 #define AFS_DIRENT
169 #ifndef CMSERVERPREF
170 #define CMSERVERPREF
171 #endif
172
173 #endif /* _PARAM_USR_SPARC64_LINUX26_H_ */
174
175 #endif /* !defined(UKERNEL) */