svn commit: samba r8967 - in trunk/source/smbd: .
vlendec at samba.org
vlendec at samba.org
Wed Aug 3 00:20:35 GMT 2005
Author: vlendec
Date: 2005-08-03 00:20:34 +0000 (Wed, 03 Aug 2005)
New Revision: 8967
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=8967
Log:
Hint from Jeremy: We need to call delay_for_oplocks with the share mode entry
locked, as we decide to grant an oplock and later then entry that oplock
entry. This needs to be protected.
Volker
Modified:
trunk/source/smbd/open.c
Changeset:
Modified: trunk/source/smbd/open.c
===================================================================
--- trunk/source/smbd/open.c 2005-08-03 00:08:28 UTC (rev 8966)
+++ trunk/source/smbd/open.c 2005-08-03 00:20:34 UTC (rev 8967)
@@ -1590,6 +1590,8 @@
dev = psbuf->st_dev;
inode = psbuf->st_ino;
+ lock_share_entry(dev, inode);
+
/* delay_for_oplocks might delete the fsp */
open_time = fsp->open_time;
if (delay_for_oplocks(fsp, second_try)) {
@@ -1601,11 +1603,10 @@
defer_open(&open_time,
(OPLOCK_BREAK_TIMEOUT*2) * 1000000,
fname, dev, inode);
+ unlock_share_entry(dev, inode);
return NULL;
}
- lock_share_entry(dev, inode);
-
num_share_modes = open_mode_check(conn, fname, dev, inode,
access_mask, share_access,
create_options,
More information about the samba-cvs
mailing list