From 26a36110b0b23267526bffdbf6d0ef0b0a1b094d Mon Sep 17 00:00:00 2001 From: Jim Rees Date: Fri, 4 Apr 2003 19:04:22 +0000 Subject: [PATCH] freebsd-5-20030404 preliminary work on freebsd 5.0 kernel module --- src/afs/FBSD/osi_machdep.h | 24 +++++++++++++++++++++++- src/afs/sysincludes.h | 3 +++ src/config/param.i386_fbsd_50.h | 1 - 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/afs/FBSD/osi_machdep.h b/src/afs/FBSD/osi_machdep.h index b134ad6d1..2dfa67b2e 100644 --- a/src/afs/FBSD/osi_machdep.h +++ b/src/afs/FBSD/osi_machdep.h @@ -50,8 +50,29 @@ extern struct simplelock afs_rxglobal_lock; #undef afs_suser #ifdef KERNEL -extern struct proc * afs_global_owner; extern struct lock afs_global_lock; +#if defined(AFS_FBSD50_ENV) +#define VT_AFS "afs" +#define VROOT VV_ROOT +#define v_flag v_vflag +extern struct thread * afs_global_owner; +#define AFS_GLOCK() \ + do { \ + osi_Assert(curthread); \ + lockmgr(&afs_global_lock, LK_EXCLUSIVE, 0, curthread); \ + osi_Assert(afs_global_owner == 0); \ + afs_global_owner = curthread; \ + } while (0) +#define AFS_GUNLOCK() \ + do { \ + osi_Assert(curthread); \ + osi_Assert(afs_global_owner == curthread); \ + afs_global_owner = 0; \ + lockmgr(&afs_global_lock, LK_RELEASE, 0, curthread); \ + } while(0) +#define ISAFS_GLOCK() (afs_global_owner == curthread && curthread) +#else /* FBSD50 */ +extern struct proc * afs_global_owner; #define AFS_GLOCK() \ do { \ osi_Assert(curproc); \ @@ -67,6 +88,7 @@ extern struct lock afs_global_lock; lockmgr(&afs_global_lock, LK_RELEASE, 0, curproc); \ } while(0) #define ISAFS_GLOCK() (afs_global_owner == curproc && curproc) +#endif /* FBSD50 */ #define AFS_RXGLOCK() #define AFS_RXGUNLOCK() #define ISAFS_RXGLOCK() 1 diff --git a/src/afs/sysincludes.h b/src/afs/sysincludes.h index ac712c06b..f40f4ba2d 100644 --- a/src/afs/sysincludes.h +++ b/src/afs/sysincludes.h @@ -198,6 +198,9 @@ typedef unsigned short etap_event_t; #include "h/user.h" #endif /* AFS_SGI64_ENV */ #define MACH_USER_API 1 +#if defined(AFS_FBSD50_ENV) +#include "h/bio.h" +#endif #include "h/file.h" #include "h/uio.h" #include "h/buf.h" diff --git a/src/config/param.i386_fbsd_50.h b/src/config/param.i386_fbsd_50.h index d58ea4b54..4accf884e 100644 --- a/src/config/param.i386_fbsd_50.h +++ b/src/config/param.i386_fbsd_50.h @@ -29,7 +29,6 @@ #define AFS_X86_FBSD50_ENV 1 #define AFS_X86_ENV 1 #define AFS_NONFSTRANS 1 -#define O_SYNC O_FSYNC #define FTRUNC O_TRUNC #define IUPD 0x0010 -- 2.39.5