backport to buster
[hcoop/debian/openafs.git] / src / config / param.sunx86_59.h
CommitLineData
805e021f
CE
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#ifndef AFS_PARAM_H
14#define AFS_PARAM_H
15
16#define AFS_VFS_ENV 1
17/* Used only in vfsck code; is it needed any more???? */
18
19#define AFS_VFSINCL_ENV 1 /* NOBODY uses this.... */
20#define AFS_GREEDY43_ENV 1 /* Used only in rx/rx_user.c */
21#define AFS_ENV 1
22#define AFS_SUN_ENV 1
23#define AFS_SUN5_ENV 1
24#define AFS_SUN59_ENV 1
25
26#define AFS_X86_ENV 1
27
28#define AFS_64BIT_CLIENT 1
29
30#define AFS_HAVE_FLOCK_SYSID 1
31
32#include <afs/afs_sysnames.h>
33
34#define AFS_GLOBAL_SUNLOCK 1 /* For global locking */
35#define RXK_LISTENER_ENV 1
36#define AFS_GCPAGS 1 /* if nonzero, garbage collect PAGs */
37
38#ifdef AFS_NAMEI_ENV
39#define AFS_64BIT_IOPS_ENV 1 /* needed for NAMEI... */
40#else /* AFS_NAMEI_ENV */
41#define AFS_3DISPARES 1 /* Utilize the 3 available disk inode 'spares' */
42#endif /* AFS_NAMEI_ENV */
43
44#define AFS_SYSCALL 65
45
46/* File system entry (used if mount.h doesn't define MOUNT_AFS */
47#define AFS_MOUNT_AFS "afs"
48
49/* Machine / Operating system information */
50#define sys_sunx86_59 1
51#define SYS_NAME "sunx86_59"
52#define SYS_NAME_ID SYS_NAME_ID_sunx86_59
53#define AFSLITTLE_ENDIAN 1
54#define AFS_HAVE_FFS 1 /* Use system's ffs. */
55#define AFS_HAVE_VXFS 1 /* Support cache on Veritas vxfs file system */
56#define AFS_HAVE_STATVFS 1 /* System supports statvfs */
57#define AFS_HAVE_STATVFS64 1 /* System supports statvfs64 */
58#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */
59#define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
60
61#define NEARINODE_HINT 1 /* hint to ufs module to scatter inodes on disk */
62#define nearInodeHash(volid, hval) { \
63 unsigned char* ts = (unsigned char*)&(volid)+sizeof(volid)-1;\
64 for ( (hval)=0; ts >= (unsigned char*)&(volid); ts--){\
65 (hval) *= 173; \
66 (hval) += *ts; \
67 } \
68 }
69
70/* Extra kernel definitions (from kdefs file) */
71#ifdef KERNEL
72/* sun definitions here */
73#define AFS_UIOFMODE 1 /* Only in afs/afs_vnodeops.c (afs_ustrategy) */
74#define AFS_SYSVLOCK 1 /* sys v locking supported */
75#define afsio_iov uio_iov
76#define afsio_iovcnt uio_iovcnt
77#define afsio_offset uio_loffset
78#define afsio_seg uio_segflg
79#define afsio_fmode uio_fmode
80#define afsio_resid uio_resid
81#define AFS_UIOSYS UIO_SYSSPACE
82#define AFS_UIOUSER UIO_USERSPACE
83#define AFS_CLBYTES MCLBYTES
84#define AFS_MINCHANGE 2
85#define osi_GetTime(x) uniqtime32(x)
86
87#define AFS_KALLOC(n) kmem_alloc(n, KM_SLEEP)
88#define AFS_KALLOC_NOSLEEP(n) kmem_alloc(n, KM_NOSLEEP)
89#define AFS_KFREE kmem_free
90#define VATTR_NULL vattr_null
91#define memset(A, B, S) bzero(A, S)
92#define memcpy(B, A, S) bcopy(A, B, S)
93#define memcmp(A, B, S) bcmp(A, B, S)
94#endif /* KERNEL */
95#define AFS_DIRENT
96#ifndef CMSERVERPREF
97#define CMSERVERPREF
98#endif
99#define ROOTINO UFSROOTINO
100
101#endif /* AFS_PARAM_H */
102
103#else /* !defined(UKERNEL) */
104
105/* This section for user space compiles only */
106
107/*
108 * Copyright 2000, International Business Machines Corporation and others.
109 * All Rights Reserved.
110 *
111 * This software has been released under the terms of the IBM Public
112 * License. For details, see the LICENSE file in the top-level source
113 * directory or online at http://www.openafs.org/dl/license10.html
114 */
115
116#ifndef AFS_PARAM_H
117#define AFS_PARAM_H
118
119#define AFS_VFS_ENV 1
120/* Used only in vfsck code; is it needed any more???? */
121#define RXK_LISTENER_ENV 1
122#define AFS_USERSPACE_IP_ADDR 1
123#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
124
125#define UKERNEL 1 /* user space kernel */
126#define AFS_GREEDY43_ENV 1 /* Used only in rx/rx_user.c */
127#define AFS_ENV 1
128#define AFS_USR_SUN5_ENV 1
129#define AFS_USR_SUN6_ENV 1
130#define AFS_USR_SUN7_ENV 1
131#define AFS_USR_SUN8_ENV 1
132#define AFS_USR_SUN9_ENV 1
133
134#include <afs/afs_sysnames.h>
135
136#if 0
137#define AFS_GLOBAL_SUNLOCK 1 /* For global locking */
138#endif
139
140#define AFS_3DISPARES 1 /* Utilize the 3 available disk inode 'spares' */
141#define AFS_SYSCALL 65
142
143/* File system entry (used if mount.h doesn't define MOUNT_AFS */
144#define AFS_MOUNT_AFS 1
145
146/* Machine / Operating system information */
147#define sys_sunx86_59 1
148#define SYS_NAME "sunx86_59"
149#define SYS_NAME_ID SYS_NAME_ID_sunx86_59
150#define AFSLITTLE_ENDIAN 1
151#define AFS_HAVE_FFS 1 /* Use system's ffs. */
152#define AFS_HAVE_STATVFS 1 /* System supports statvfs */
153#define AFS_HAVE_STATVFS64 1 /* System supports statvfs64 */
154
155/* Extra kernel definitions (from kdefs file) */
156#ifdef KERNEL
157#define AFS_UIOFMODE 1 /* Only in afs/afs_vnodeops.c (afs_ustrategy) */
158#define AFS_SYSVLOCK 1 /* sys v locking supported */
159#define afsio_iov uio_iov
160#define afsio_iovcnt uio_iovcnt
161#define afsio_offset uio_offset
162#define afsio_seg uio_segflg
163#define afsio_fmode uio_fmode
164#define afsio_resid uio_resid
165#define AFS_UIOSYS 1
166#define AFS_UIOUSER UIO_USERSPACE
167#define AFS_CLBYTES MCLBYTES
168#define AFS_MINCHANGE 2
169#define VATTR_NULL usr_vattr_null
170#endif /* KERNEL */
171#define AFS_DIRENT
172#ifndef CMSERVERPREF
173#define CMSERVERPREF
174#endif
175#define ROOTINO UFSROOTINO
176
177#endif /* AFS_PARAM_H */
178
179#endif /* !defined(UKERNEL) */