CVS update: samba/source

Andrew Tridgell tridge at samba.anu.edu.au
Mon Jan 12 00:01:20 EST 1998


Date:	Monday January 12, 1998 @ 0:01
Author:	tridge

Update of /data/cvs/samba/source
In directory samba:/tmp/cvs-serv10140

Modified Files:
      Tag: BRANCH_1_9_18
	server.c 
Log Message:
(applying fix to 1.9.18 as well)

I've now found the real oplock bug (the nasty one that I'm sure has
been pestering us for a long time)

The problem is that find_free_file() doesn't reserve the file. This
means that during a recursive oplock break in an open you can get two
files opened with the same fnum (yikes!). The 2nd open wipes out the
oplock info in the Files[] structure (among other things) which
totally screws the oplock breaks.

This fix that I am applying now is a "quick fix". It will fail if the
Files[] table is full and maybe under other conditions. It isn't
really a fix at all, but it will "fix" the problem under most
conditions and will also speed things up a little so I'm applying it
anyway. 

I'll see if I can do a proper fix soon.




More information about the samba-cvs mailing list