0923f8475fa7830cb9b45b6a84b2b22be528f420
[openafs.git] / src / config / param.sparc_linux24.h
1 #ifndef UKERNEL
2 /* This section for kernel libafs compiles only */
3
4 /* Copyright (C) 1998 by Transarc Corporation */
5
6
7 #ifndef AFS_PARAM_H
8 #define AFS_PARAM_H
9
10 /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel,
11  * it's a judgment call. If something is obviously sparc specific, use that
12  * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2"
13  * in the sysname is the current version of the client. This takes into
14  * account the perferred OS user space configuration as well as the kernel.
15  */
16
17 #define AFS_LINUX20_ENV 1
18 #define AFS_LINUX22_ENV 1
19 #define AFS_LINUX24_ENV 1
20 #define AFS_SPARC_LINUX20_ENV   1
21 #define AFS_SPARC_LINUX22_ENV   1
22 #define AFS_SPARC_LINUX24_ENV   1
23 #define AFS_NONFSTRANS 1
24
25 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
26 #define AFS_SYSCALL 227
27 #define AFS_64BIT_IOPS_ENV  1
28 #define AFS_NAMEI_ENV     1   /* User space interface to file system */
29
30 #if defined(__KERNEL__) && !defined(KDUMP_KERNEL)
31 #include <linux/threads.h>
32
33 #include <linux/config.h>
34 #ifdef CONFIG_SMP
35 #undef CONFIG_SMP
36 #endif
37 /* Using "AFS_SMP" to map to however many #define's are required to get
38  * MP to compile for Linux
39  */
40 #ifdef AFS_SMP
41 #define CONFIG_SMP 1
42 #ifndef __SMP__
43 #define __SMP__
44 #endif
45 #define AFS_GLOBAL_SUNLOCK
46 #endif
47
48 #if defined(MODULE) && defined(CONFIG_MODVERSIONS)
49 #define MODVERSIONS
50 #include <linux/modversions.h>
51 #endif
52 #endif /* __KERNEL__  && !DUMP_KERNEL*/
53
54 #include <afs/afs_sysnames.h>
55
56 #define AFS_USERSPACE_IP_ADDR 1
57 #define RXK_LISTENER_ENV 1
58 #define AFS_GCPAGS       2 /* Set to Userdisabled, allow sysctl to override */
59
60 /* Machine / Operating system information */
61 #define SYS_NAME        "sparc_linux24"
62 #define SYS_NAME_ID     SYS_NAME_ID_sparc_linux24
63 #define AFSBIG_ENDIAN    1
64 #define AFS_HAVE_FFS        1       /* Use system's ffs. */
65 #define AFS_HAVE_STATVFS    0   /* System doesn't support statvfs */
66 #define AFS_VM_RDWR_ENV     1   /* read/write implemented via VM */
67
68 #ifdef KERNEL
69 #ifndef MIN
70 #define MIN(A,B) ((A) < (B) ? (A) : (B))
71 #endif
72 #ifndef MAX
73 #define MAX(A,B) ((A) > (B) ? (A) : (B))
74 #endif
75 #endif /* KERNEL */
76
77 #if defined(AFS_SMP) && defined(CONFIG_MODVERSIONS)
78 /* hack, I don't know what else with theese symbols */
79 #define _do_spin_lock _do_spin_lock_R__ver__do_spin_lock
80 #define _do_spin_unlock _do_spin_unlock_R__ver__do_spin_unlock
81 #define kernel_flag kernel_flag_R__ver_kernel_flag
82 #endif
83
84 /* on sparclinux is O_LARGEFILE defined but there is not off64_t,
85    so small hack to get usd_file.c work */
86 #ifndef KERNEL
87 #define __USE_FILE_OFFSET64 1
88 #define __USE_LARGEFILE64 1
89 #if !defined off64_t
90 #define off64_t __off64_t
91 #endif
92 #endif
93
94 #endif /* AFS_PARAM_H */
95
96 #else /* !defined(UKERNEL) */
97
98 /* This section for user space compiles only */
99
100 /* Copyright (C) 1998 by Transarc Corporation */
101
102
103 #ifndef AFS_PARAM_H
104 #define AFS_PARAM_H
105
106 /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel,
107  * it's a judgment call. If something is obviously sparc specific, use that
108  * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2"
109  * in the sysname is the current version of the client. This takes into
110  * account the perferred OS user space configuration as well as the kernel.
111  */
112
113 #define UKERNEL                 1       /* user space kernel */
114 #define AFS_ENV                 1
115 #define AFS_USR_LINUX20_ENV     1
116 #define AFS_USR_LINUX22_ENV     1
117 #define AFS_USR_LINUX24_ENV     1
118 #define AFS_NONFSTRANS 1
119
120 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
121 #define AFS_SYSCALL 227
122 #define AFS_64BIT_IOPS_ENV  1
123 #define AFS_NAMEI_ENV     1   /* User space interface to file system */
124 #include <afs/afs_sysnames.h>
125
126 #define AFS_USERSPACE_IP_ADDR 1
127 #define RXK_LISTENER_ENV 1
128 #define AFS_GCPAGS              0       /* if nonzero, garbage collect PAGs */
129
130
131 /* Machine / Operating system information */
132 #define SYS_NAME        "sparc_linux24"
133 #define SYS_NAME_ID     SYS_NAME_ID_sparc_linux24
134 #define AFSBIG_ENDIAN    1
135 #define AFS_HAVE_FFS        1       /* Use system's ffs. */
136 #define AFS_HAVE_STATVFS    0   /* System doesn't support statvfs */
137 #define AFS_VM_RDWR_ENV     1   /* read/write implemented via VM */
138
139 #define afsio_iov       uio_iov
140 #define afsio_iovcnt    uio_iovcnt
141 #define afsio_offset    uio_offset
142 #define afsio_seg       uio_segflg
143 #define afsio_fmode     uio_fmode
144 #define afsio_resid     uio_resid
145 #define AFS_UIOSYS      1
146 #define AFS_UIOUSER     UIO_USERSPACE
147 #define AFS_CLBYTES     MCLBYTES
148 #define AFS_MINCHANGE   2
149 #define VATTR_NULL      usr_vattr_null
150
151 #define AFS_DIRENT
152 #ifndef CMSERVERPREF
153 #define CMSERVERPREF
154 #endif
155
156 #endif /* AFS_PARAM_H */
157
158 #endif /* !defined(UKERNEL) */