From 1daa2c0b4fd25f959f6436a9d9eb9a45b7cab379 Mon Sep 17 00:00:00 2001 From: Tracy Di Marco White Date: Sat, 1 Dec 2007 05:40:51 +0000 Subject: [PATCH] nbsd-new-version-20071201 LICENSE IPL10 FIXES 75602 add support for new version(s) of netbsd --- acinclude.m4 | 8 ++ src/config/param.amd64_nbsd30.h | 21 +++++ src/config/param.amd64_nbsd40.h | 21 +++++ src/config/param.nbsd30.h | 1 + src/config/param.nbsd40.h | 160 ++++++++++++++++++++++++++++++++ 5 files changed, 211 insertions(+) create mode 100644 src/config/param.amd64_nbsd30.h create mode 100644 src/config/param.amd64_nbsd40.h create mode 100644 src/config/param.nbsd40.h diff --git a/acinclude.m4 b/acinclude.m4 index a2e1e826f..6a0db8a5a 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -285,6 +285,14 @@ else amd64-*-netbsd*2.0*) AFS_SYSNAME="amd64_nbsd20" ;; + x86_64-*-netbsd*3.[0-8]*) + AFS_PARAM_COMMON=param.nbsd30.h + AFS_SYSNAME="amd64_nbsd30" + ;; + x86_64-*-netbsd*4.[0-8]*) + AFS_PARAM_COMMON=param.nbsd40.h + AFS_SYSNAME="amd64_nbsd40" + ;; powerpc-*-netbsd*2.0*) AFS_SYSNAME="ppc_nbsd20" ;; diff --git a/src/config/param.amd64_nbsd30.h b/src/config/param.amd64_nbsd30.h new file mode 100644 index 000000000..7d7e17020 --- /dev/null +++ b/src/config/param.amd64_nbsd30.h @@ -0,0 +1,21 @@ +#ifndef AFS_AMD64_PARAM_H +#define AFS_AMD64_PARAM_H + +#define AFS_X86_XBSD_ENV 1 +#define AFS_X86_ENV 1 +#define AFSLITTLE_ENDIAN 1 + +#define SYS_NAME "amd64_nbsd30" +#define SYS_NAME_ID SYS_NAME_ID_amd64_nbsd30 + +#define AFS_64BITPOINTER_ENV 1 +#ifndef UKERNEL +/* This section for kernel libafs compiles only */ + +#else /* !defined(UKERNEL) */ + +/* This section for user space compiles only */ + +#endif /* !defined(UKERNEL) */ + +#endif /* AFS_AMD64_PARAM_H */ diff --git a/src/config/param.amd64_nbsd40.h b/src/config/param.amd64_nbsd40.h new file mode 100644 index 000000000..f6f3b13f7 --- /dev/null +++ b/src/config/param.amd64_nbsd40.h @@ -0,0 +1,21 @@ +#ifndef AFS_AMD64_PARAM_H +#define AFS_AMD64_PARAM_H + +#define AFS_X86_XBSD_ENV 1 +#define AFS_X86_ENV 1 +#define AFSLITTLE_ENDIAN 1 + +#define SYS_NAME "amd64_nbsd40" +#define SYS_NAME_ID SYS_NAME_ID_amd64_nbsd40 + +#define AFS_64BITPOINTER_ENV 1 +#ifndef UKERNEL +/* This section for kernel libafs compiles only */ + +#else /* !defined(UKERNEL) */ + +/* This section for user space compiles only */ + +#endif /* !defined(UKERNEL) */ + +#endif /* AFS_AMD64_PARAM_H */ diff --git a/src/config/param.nbsd30.h b/src/config/param.nbsd30.h index 85c0b5113..53f344c2d 100644 --- a/src/config/param.nbsd30.h +++ b/src/config/param.nbsd30.h @@ -21,6 +21,7 @@ #define AFS_NBSD15_ENV 1 #define AFS_NBSD16_ENV 1 #define AFS_NBSD20_ENV 1 +#define AFS_NBSD30_ENV 1 #define AFS_NONFSTRANS 1 #define AFS_KERBEROS_ENV 1 diff --git a/src/config/param.nbsd40.h b/src/config/param.nbsd40.h new file mode 100644 index 000000000..6868bd303 --- /dev/null +++ b/src/config/param.nbsd40.h @@ -0,0 +1,160 @@ +/* NetBSD shared section */ + +#ifndef AFS_PARAM_COMMON_H +#define AFS_PARAM_COMMON_H 1 + +#define AFS_64BIT_ENV 1 +#define AFS_NAMEI_ENV 1 /* User space interface to file system */ +#define AFS_64BIT_IOPS_ENV 1 /* Needed for NAMEI */ +#define AFS_64BIT_CLIENT 1 + +#define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */ +#define AFS_SYSCALL 210 + +#ifndef MOUNT_AFS +#define MOUNT_AFS AFS_MOUNT_AFS +#endif + +#define AFS_XBSD_ENV 1 /* {Free,Open,Net}BSD */ + +#define AFS_NBSD_ENV 1 +#define AFS_NBSD15_ENV 1 +#define AFS_NBSD16_ENV 1 +#define AFS_NBSD20_ENV 1 +#define AFS_NBSD30_ENV 1 +#define AFS_NBSD40_ENV 1 +#define AFS_NONFSTRANS 1 +#define AFS_KERBEROS_ENV 1 + +#define AFS_VFSINCL_ENV 1 + +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ + +#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H) +#define AFS_HAVE_STATVFS 1 /* System supports statvfs */ +#endif + +#ifndef UKERNEL + +#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H) +#include +#endif + +#define FTRUNC O_TRUNC + +#define IUPD 0x0010 +#define IACC 0x0020 +#define ICHG 0x0040 +#define IMOD 0x0080 + +#define IN_LOCK(ip) lockmgr(&ip->i_lock, LK_EXCLUSIVE, \ + NULL, curproc) +#define IN_UNLOCK(ip) lockmgr(&ip->i_lock, LK_RELEASE, \ + NULL, curproc) + +#include + +#define AFS_VM_RDWR_ENV 1 +#define AFS_VFS_ENV 1 +#define AFS_GREEDY43_ENV 1 + +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ +#define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */ + +/* Extra kernel definitions (from kdefs file) */ +#ifdef _KERNEL +#define AFS_GLOBAL_SUNLOCK 1 +#define AFS_VFS34 1 /* What is VFS34??? */ +#define AFS_SHORTGID 1 /* are group id's short? */ +#define afsio_iov uio_iov +#define afsio_iovcnt uio_iovcnt +#define afsio_offset uio_offset +#define afsio_seg uio_segflg +#define afsio_resid uio_resid +#define AFS_UIOSYS UIO_SYSSPACE +#define AFS_UIOUSER UIO_USERSPACE +#define AFS_CLBYTES CLBYTES +#define osi_GetTime(x) microtime(x) +#define AFS_KALLOC(x) kalloc(x) +#define AFS_KFREE(x,y) kfree(x,y) +#define v_count v_usecount +#define v_vfsp v_mount +#define vfs_bsize mnt_stat.f_bsize +#define vfs_fsid mnt_stat.f_fsid +#define va_nodeid va_fileid +#define vfs_vnodecovered mnt_vnodecovered +#define direct dirent +#define vnode_t struct vnode + +#ifndef MUTEX_DEFAULT +#define MUTEX_DEFAULT 0 +#endif /* MUTEX_DEFAULT */ + +#ifndef SSYS +#define SSYS 0x00002 +#endif /* SSYS */ + +#define p_rcred p_ucred + +#define VN_RELE(vp) vrele(((struct vnode *)(vp))) +#define VN_HOLD(vp) VREF(((struct vnode *)(vp))) + +#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H) +enum vcexcl { NONEXCL, EXCL }; + +#ifdef KERNEL +#ifndef MIN +#define MIN(A,B) ((A) < (B) ? (A) : (B)) +#endif +#ifndef MAX +#define MAX(A,B) ((A) > (B) ? (A) : (B)) +#endif +#endif /* KERNEL */ + +#endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ && !defined(IGNORE_STDS_H) */ +#endif /* _KERNEL */ + +#else /* !defined(UKERNEL) */ + + +/* This section for user space compiles only */ + +#define UKERNEL 1 /* user space kernel */ + +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + +#define afsio_iov uio_iov +#define afsio_iovcnt uio_iovcnt +#define afsio_offset uio_offset +#define afsio_seg uio_segflg +#define afsio_fmode uio_fmode +#define afsio_resid uio_resid +#define AFS_UIOSYS UIO_SYSSPACE +#define AFS_UIOUSER UIO_USERSPACE +#define AFS_CLBYTES MCLBYTES +#define AFS_MINCHANGE 2 +#define VATTR_NULL usr_vattr_null + +#define AFS_DIRENT +#ifndef CMSERVERPREF +#define CMSERVERPREF +#endif + +#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H) +#include +#include +#include +#include +#include +#include +#include +#include +#endif + +#endif /* !defined(UKERNEL) */ + +#endif /* AFS_PARAM_COMMON_H */ -- 2.39.5