]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
FBSD, DFBSD (future) call afs_FakeOpen in the write path
authorMatt Benjamin <matt@linuxbox.com>
Sun, 29 Aug 2010 01:57:38 +0000 (21:57 -0400)
committerDerrick Brashear <shadow@dementia.org>
Mon, 30 Aug 2010 00:17:23 +0000 (17:17 -0700)
Call afs_FakeOpen in the write path, even though nominally
it is AFS_VM_RDWR_ENV.

Change-Id: I6d24c9631f80058e3dd0d6f284ca7792253ceaaa
Reviewed-on: http://gerrit.openafs.org/2623
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/afs/VNOPS/afs_vnop_write.c
src/config/param.i386_dfbsd_23.h
src/config/param.i386_fbsd_70.h
src/config/param.i386_fbsd_71.h
src/config/param.i386_fbsd_80.h
src/config/param.i386_fbsd_81.h
src/config/param.i386_fbsd_90.h

index 9d582f0cedf49abfe489e05322f96f07846652c2..c0672e83d993810ce493cad61395376d596ebe5e 100644 (file)
@@ -185,7 +185,7 @@ afs_MemWrite(struct vcache *avc, struct uio *auio, int aio,
        return (EFBIG);
     }
 #endif
-#ifdef AFS_VM_RDWR_ENV
+#if defined(AFS_VM_RDWR_ENV) && !defined(AFS_FAKEOPEN_ENV)
     /*
      * If write is implemented via VM, afs_FakeOpen() is called from the
      * high-level write op.
@@ -292,7 +292,7 @@ afs_MemWrite(struct vcache *avc, struct uio *auio, int aio,
        }
 #endif
     }
-#ifndef        AFS_VM_RDWR_ENV
+#if !defined(AFS_VM_RDWR_ENV) || defined(AFS_FAKEOPEN_ENV)
     afs_FakeClose(avc, acred);
 #endif
     if (error && !avc->vc_error)
@@ -406,7 +406,7 @@ afs_UFSWrite(struct vcache *avc, struct uio *auio, int aio,
        return (EFBIG);
     }
 #endif
-#ifdef AFS_VM_RDWR_ENV
+#if defined(AFS_VM_RDWR_ENV) && !defined(AFS_FAKEOPEN_ENV)
     /*
      * If write is implemented via VM, afs_FakeOpen() is called from the
      * high-level write op.
@@ -601,7 +601,7 @@ afs_UFSWrite(struct vcache *avc, struct uio *auio, int aio,
        }
 #endif
     }
-#ifndef        AFS_VM_RDWR_ENV
+#if !defined(AFS_VM_RDWR_ENV) || defined(AFS_FAKEOPEN_ENV)
     afs_FakeClose(avc, acred);
 #endif
     error = afs_CheckCode(error, &treq, 7);
index 677ef8f0cafe6fa4aa4f6c7a2123bdf4551a5351..dd8283af228b5f234506bd08edb5a39412c12731 100644 (file)
@@ -9,6 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 
 #ifndef UKERNEL
index b62475932481e5e204110cf106846b5840f2ac21..ba22cf48c63e5403d65a5c68d749a2f4505d3f2a 100644 (file)
@@ -9,7 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
-
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 #ifndef UKERNEL
 /* This section for kernel libafs compiles only */
index 7bd6b60aa5d4b86d24b2385177a1d40978a96ebf..664d70ae0f10e1169823368aa53d0f47fe199274 100644 (file)
@@ -9,6 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 
 #ifndef UKERNEL
index 002db22e66a23f203a34f8ae7185d774a648b957..8128275510c24a88bdf5be52906a739e7929b313 100644 (file)
@@ -9,6 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 
 #ifndef UKERNEL
index cf62adc9e32854864a0080bf501b4b4887782c82..b2469a7c30a6bbb777fb1c6015becf87f294605f 100644 (file)
@@ -9,6 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 
 #ifndef UKERNEL
index 28a38eb4fa628e6e5b861312e983fb24ef187ff2..46fd4047f9370745971efd9637ff7e41d0352146 100644 (file)
@@ -9,6 +9,7 @@
 #define AFS_HAVE_FFS        1  /* Use system's ffs. */
 #define AFS_HAVE_STATVFS    1  /* System doesn't support statvfs */
 #define AFS_VM_RDWR_ENV            1   /* read/write implemented via VM */
+#define AFS_FAKEOPEN_ENV    1   /* call afs_FakeOpen as if !AFS_VM_RDWR */
 
 
 #ifndef UKERNEL