Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / src / config / param.linux26.h
CommitLineData
805e021f
CE
1/*
2 * Copyright 2000, International Business Machines Corporation and others.
3 * All Rights Reserved.
4 *
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
8 */
9
10#ifndef AFS_PARAM_COMMON_H
11#define AFS_PARAM_COMMON_H
12
13#ifndef UKERNEL
14
15/* This section for kernel libafs compiles only */
16#include <linux/version.h>
17
18#define AFS_LINUX20_ENV 1
19#define AFS_LINUX22_ENV 1
20#define AFS_LINUX24_ENV 1
21#define AFS_LINUX26_ENV 1
22
23#define AFS_MOUNT_AFS "afs" /* The name of the filesystem type */
24#define AFS_64BIT_IOPS_ENV 1
25#define AFS_NAMEI_ENV 1 /* User space interface to file system */
26#define AFS_64BIT_CLIENT 1
27#undef AFS_NONFSTRANS
28#define AFS_NONFSTRANS 1
29#define AFS_USERSPACE_IP_ADDR 1
30#define RXK_LISTENER_ENV 1
31#define AFS_GCPAGS 1 /* Set to Userdisabled, allow sysctl to override */
32#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,4)
33# define AFS_PAG_ONEGROUP_ENV 1
34#endif
35#define AFS_HAVE_FFS 1 /* Use system's ffs */
36#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */
37#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */
38#define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
39#define AFS_MAXVCOUNT_ENV 1
40
41#define AFS_PRIVATE_OSI_ALLOCSPACES 1
42
43#if defined(__KERNEL__) && !defined(KDUMP_KERNEL)
44#define AFS_GLOBAL_SUNLOCK
45#endif /* __KERNEL__ && !DUMP_KERNEL */
46
47#ifdef KERNEL
48#ifndef MIN
49#define MIN(A,B) ((A) < (B) ? (A) : (B))
50#endif
51#ifndef MAX
52#define MAX(A,B) ((A) > (B) ? (A) : (B))
53#endif
54
55#endif /* KERNEL */
56
57#ifndef KERNEL
58#define __USE_LARGEFILE64 1
59#if !defined off64_t
60#define off64_t __off64_t
61#endif
62#endif
63
64#else /* !defined(UKERNEL) */
65
66/* This section for user space compiles only */
67#define AFS_USR_LINUX20_ENV 1
68#define AFS_USR_LINUX22_ENV 1
69#define AFS_USR_LINUX24_ENV 1
70#define AFS_USR_LINUX26_ENV 1
71
72#define AFS_ENV 1
73#define AFS_64BIT_CLIENT 1
74#undef AFS_NONFSTRANS
75#define AFS_NONFSTRANS 1
76#define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */
77#define AFS_64BIT_IOPS_ENV 1
78#define AFS_NAMEI_ENV 1 /* User space interface to file system */
79#define AFS_USERSPACE_IP_ADDR 1
80#define RXK_LISTENER_ENV 1
81#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
82#define AFS_HAVE_FFS 1 /* Use system's ffs. */
83#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */
84
85#define afsio_iov uio_iov
86#define afsio_iovcnt uio_iovcnt
87#define afsio_offset uio_offset
88#define afsio_seg uio_segflg
89#define afsio_fmode uio_fmode
90#define afsio_resid uio_resid
91#define AFS_UIOSYS 1
92#define AFS_UIOUSER UIO_USERSPACE
93#define AFS_CLBYTES MCLBYTES
94#define AFS_MINCHANGE 2
95#define VATTR_NULL usr_vattr_null
96
97#define AFS_DIRENT
98#ifndef CMSERVERPREF
99#define CMSERVERPREF
100#endif
101
102#endif /* !defined(UKERNEL) */
103
104#if defined(UKERNEL) || !defined(KERNEL)
105#include <features.h>
106#endif
107
108#if defined(HAVE_LINUX_ERRQUEUE_H) && defined(HAVE_SETSOCKOPT_IP_RECVERR)
109# define AFS_RXERRQ_ENV
110#endif
111#ifdef AFS_RXERRQ_ENV
112# define AFS_ADAPT_PMTU
113#endif
114
115#ifdef __GLIBC__
116#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 3)
117#define USE_UCONTEXT
118#endif
119#endif
120
121#include <afs/afs_sysnames.h>
122
123#endif /* AFS_PARAM_COMMON_H */