[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-1043-g0eaf040

Volker Lendecke vlendec at samba.org
Wed May 20 13:17:07 GMT 2009


The branch, v3-4-test has been updated
       via  0eaf040f469972d1dfd2b53d8df97bb135e3e4d4 (commit)
      from  f6b0448f814e47ea9eccf895c5182565104acae7 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test


- Log -----------------------------------------------------------------
commit 0eaf040f469972d1dfd2b53d8df97bb135e3e4d4
Author: Volker Lendecke <vl at samba.org>
Date:   Mon May 18 06:02:07 2009 +0200

    Fix bug disclosed by lock8 torture test
    
    We have to drop the gpfs level share modes, regardless of whether we put
    the file into the pending close queue.

-----------------------------------------------------------------------

Summary of changes:
 source3/modules/vfs_gpfs.c |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c
index b304d8b..778f4a0 100644
--- a/source3/modules/vfs_gpfs.c
+++ b/source3/modules/vfs_gpfs.c
@@ -49,6 +49,19 @@ static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, files_struct *fsp,
 	return 0;
 }
 
+static int vfs_gpfs_close(vfs_handle_struct *handle, files_struct *fsp)
+{
+	int result;
+
+	if ((fsp->fh != NULL) && (fsp->fh->fd != -1)) {
+		set_gpfs_sharemode(fsp, 0, 0);
+	}
+
+	result = fd_close_posix(fsp);
+
+	return result;
+}
+
 static int vfs_gpfs_setlease(vfs_handle_struct *handle, files_struct *fsp, 
 			     int leasetype)
 {
@@ -923,6 +936,10 @@ static vfs_op_tuple gpfs_op_tuples[] = {
 	  SMB_VFS_OP_FCHMOD,
 	  SMB_VFS_LAYER_TRANSPARENT },
 
+        { SMB_VFS_OP(vfs_gpfs_close),
+	  SMB_VFS_OP_CLOSE,
+	  SMB_VFS_LAYER_TRANSPARENT },
+
         { SMB_VFS_OP(NULL), SMB_VFS_OP_NOOP, SMB_VFS_LAYER_NOOP }
 
 };


-- 
Samba Shared Repository


More information about the samba-cvs mailing list