FBSD: 10.1 is coming out soon
[openafs.git] / src / config / param.amd64_fbsd_101.h
1 #ifndef AFS_PARAM_H
2 #define AFS_PARAM_H
3
4 /* Machine / Operating system information */
5 #define SYS_NAME        "amd64_fbsd_101"
6 #define SYS_NAME_ID     SYS_NAME_ID_amd64_fbsd_101
7
8 #define AFSLITTLE_ENDIAN    1
9 #define AFS_HAVE_FFS        1   /* Use system's ffs. */
10 #define AFS_HAVE_STATVFS    1   /* System doesn't support statvfs */
11 #define AFS_VM_RDWR_ENV     1   /* read/write implemented via VM */
12
13
14 #ifndef UKERNEL
15 /* This section for kernel libafs compiles only */
16
17 #ifndef IGNORE_STDS_H
18 #include <sys/param.h>
19 #endif
20
21 #define AFS_XBSD_ENV 1          /* {Free,Open,Net}BSD */
22 #define AFS_X86_XBSD_ENV 1
23
24 #define AFS_NAMEI_ENV     1     /* User space interface to file system */
25 #define AFS_64BIT_CLIENT 1
26 #define AFS_64BITPOINTER_ENV 1
27 #define AFS_64BITUSERPOINTER_ENV        1
28 #define AFS_64BIT_IOPS_ENV 1    /* Needed for NAMEI */
29 #define AFS_FBSD_ENV 1
30 #define AFS_FBSD50_ENV 1
31 #define AFS_FBSD51_ENV 1
32 #define AFS_FBSD52_ENV 1
33 #define AFS_FBSD53_ENV 1
34 #define AFS_FBSD60_ENV 1
35 #define AFS_FBSD61_ENV 1
36 #define AFS_FBSD62_ENV 1
37 #define AFS_FBSD70_ENV 1
38 #define AFS_FBSD71_ENV 1
39 #define AFS_FBSD80_ENV 1
40 #define AFS_FBSD81_ENV 1
41 #define AFS_FBSD90_ENV 1
42 #define AFS_FBSD91_ENV 1
43 #define AFS_FBSD100_ENV 1
44 #define AFS_FBSD101_ENV 1
45 #define AFS_X86_FBSD_ENV 1
46 #define AFS_X86_FBSD50_ENV 1
47 #define AFS_X86_FBSD60_ENV 1 /* added at 70--ie, some changes should port <-- */
48 #define AFS_X86_FBSD62_ENV 1
49 #define AFS_X86_FBSD70_ENV 1
50 #define AFS_X86_FBSD71_ENV 1
51 #define AFS_X86_FBSD80_ENV 1
52 #define AFS_X86_FBSD81_ENV 1
53 #define AFS_X86_FBSD90_ENV 1
54 #define AFS_X86_FBSD91_ENV 1
55 #define AFS_X86_FBSD100_ENV 1
56 #define AFS_X86_FBSD101_ENV 1
57 #define AFS_X86_ENV 1
58 #undef  AFS_NONFSTRANS
59 #define AFS_NONFSTRANS 1
60 #define FTRUNC O_TRUNC
61
62 #define IUPD 0x0010
63 #define IACC 0x0020
64 #define ICHG 0x0040
65 #define IMOD 0x0080
66
67 #define IN_LOCK(ip)     lockmgr(&ip->i_lock, LK_EXCLUSIVE, \
68                                 NULL, curproc)
69 #define IN_UNLOCK(ip)   lockmgr(&ip->i_lock, LK_RELEASE, \
70                                 NULL, curproc)
71
72 #include <afs/afs_sysnames.h>
73
74 #define AFS_VFS_ENV     1
75 #define AFS_VFSINCL_ENV 1
76 #define AFS_GREEDY43_ENV        1
77 #define AFS_ENV         1
78
79 #define AFS_SYSCALL     339
80 #define AFS_MOUNT_AFS   "afs"
81
82 #ifndef MOUNT_UFS
83 #define MOUNT_UFS "ufs"
84 #endif
85
86 #ifndef MOUNT_AFS
87 #define MOUNT_AFS AFS_MOUNT_AFS
88 #endif
89
90 #define RXK_LISTENER_ENV 1
91 #define AFS_GCPAGS              0       /* if nonzero, garbage collect PAGs */
92 #define AFS_USE_GETTIMEOFDAY    1       /* use gettimeofday to implement rx clock */
93
94 /* Extra kernel definitions (from kdefs file) */
95 #ifdef _KERNEL
96 #define AFS_GLOBAL_SUNLOCK        1
97 #define AFS_VFS34       1       /* What is VFS34??? */
98 #define AFS_SHORTGID    0       /* are group id's short? */
99 #define afsio_iov       uio_iov
100 #define afsio_iovcnt    uio_iovcnt
101 #define afsio_offset    uio_offset
102 #define afsio_seg       uio_segflg
103 #define afsio_resid     uio_resid
104 #define AFS_UIOSYS      UIO_SYSSPACE
105 #define AFS_UIOUSER     UIO_USERSPACE
106 #define AFS_CLBYTES     CLBYTES
107 #define osi_GetTime(x)  microtime(x)
108 #define AFS_KALLOC(x)   osi_fbsd_alloc((x), 1)
109 #undef  AFS_KALLOC_NOSLEEP
110 #define AFS_KALLOC_NOSLEEP(x) osi_fbsd_alloc((x), 0)
111 #define AFS_KFREE(x,y)  osi_fbsd_free((x))
112 #define v_count         v_usecount
113 #define v_vfsp          v_mount
114 #define vfs_bsize       mnt_stat.f_bsize
115 #define vfs_fsid        mnt_stat.f_fsid
116 #define va_nodeid       va_fileid
117 #define vfs_vnodecovered mnt_vnodecovered
118 #define direct          dirent
119 #define vnode_t         struct vnode
120
121 #ifndef MUTEX_DEFAULT
122 #define MUTEX_DEFAULT   0
123 #endif /* MUTEX_DEFAULT */
124
125 #ifndef SSYS
126 #define SSYS            0x00002
127 #endif /* SSYS */
128
129 #define p_rcred         p_ucred
130
131 #if     !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__)
132 enum vcexcl { NONEXCL, EXCL };
133
134 #ifdef KERNEL
135 #ifndef MIN
136 #define MIN(A,B) ((A) < (B) ? (A) : (B))
137 #endif
138 #ifndef MAX
139 #define MAX(A,B) ((A) > (B) ? (A) : (B))
140 #endif
141 #endif /* KERNEL */
142
143 #endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ */
144 #endif /* _KERNEL */
145
146 #else /* !defined(UKERNEL) */
147
148 /* This section for user space compiles only */
149
150 #define UKERNEL                 1       /* user space kernel */
151 #define AFS_ENV                 1
152 #define AFS_VFSINCL_ENV         1
153 #define AFS_USR_FBSD50_ENV      1
154 #define AFS_USR_FBSD51_ENV      1
155 #define AFS_USR_FBSD52_ENV      1
156 #define AFS_USR_FBSD53_ENV      1
157 #define AFS_USR_FBSD60_ENV      1
158 #define AFS_USR_FBSD61_ENV      1
159 #define AFS_USR_FBSD70_ENV      1
160 #define AFS_USR_FBSD71_ENV      1
161 #define AFS_USR_FBSD80_ENV      1
162 #define AFS_USR_FBSD81_ENV      1
163 #define AFS_USR_FBSD90_ENV      1
164 #define AFS_USR_FBSD91_ENV      1
165 #define AFS_USR_FBSD100_ENV     1
166 #define AFS_USR_FBSD101_ENV     1
167 #define AFS_USR_FBSD_ENV        1
168 #undef  AFS_NONFSTRANS
169 #define AFS_NONFSTRANS 1
170
171 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
172 #define AFS_SYSCALL 339
173 #define AFS_NAMEI_ENV         1 /* User space interface to file system */
174 #define AFS_64BITPOINTER_ENV  1
175 #define AFS_64BIT_IOPS_ENV    1 /* Needed for NAMEI */
176 #define AFS_USERSPACE_IP_ADDR 1
177 #define RXK_LISTENER_ENV      1
178 #define AFS_GCPAGS            0 /* if nonzero, garbage collect PAGs */
179
180 #include <afs/afs_sysnames.h>
181
182 #define afsio_iov       uio_iov
183 #define afsio_iovcnt    uio_iovcnt
184 #define afsio_offset    uio_offset
185 #define afsio_seg       uio_segflg
186 #define afsio_fmode     uio_fmode
187 #define afsio_resid     uio_resid
188 #define AFS_UIOSYS      1
189 #define AFS_UIOUSER     UIO_USERSPACE
190 #define AFS_CLBYTES     MCLBYTES
191 #define AFS_MINCHANGE   2
192 #define VATTR_NULL      usr_vattr_null
193
194 #define AFS_DIRENT
195 #ifndef CMSERVERPREF
196 #define CMSERVERPREF
197 #endif
198
199 #include <sys/param.h>
200 #include <sys/types.h>
201 #include <sys/mount.h>
202 #include <sys/fcntl.h>
203 #include <sys/uio.h>
204 #include <sys/socket.h>
205 #include <netinet/in.h>
206 #include <limits.h>
207
208 #endif /* !defined(UKERNEL) */
209
210 /* general user-space compiles */
211
212 #if defined(UKERNEL) || !defined(KERNEL)
213 #define STDLIB_HAS_MALLOC_PROTOS 1
214 #endif
215
216 #endif /* AFS_PARAM_H */