[Samba] mkdir-dup test flapping

Jeremy Allison jra at samba.org
Wed Mar 9 04:54:32 UTC 2016


On Wed, Mar 09, 2016 at 04:11:05PM +1300, Douglas Bagnall wrote:
> We looked at this some more, and Andrew seemed to understand and wrote
> the attached patch.
> 
> We need to decide if the change in owner is enough reason to refuse
> the open(), or if we should just continue.
> 
> On the basis that the owner change is not significant, we reworked the
> code to do the lstat() after the fstat(), and not compare the owner.

Fix is really close, but still needs a little work -
the call to:

fsp->file_id = vfs_file_id_from_sbuf(conn, &smb_dname->st);

needs to be moved too (as in the race condition
when need_lstat is true smb_dname->st isn't correctly
initialized yet), or the lstat needs to be done both
before and after. Doing the lstat twice might be
safer as I'll need to check what uses fsp->file_id
to ensure moving to after the lstat is safe.

*Really* nice work though - thanks ! It's late
here now so I'll take a look at this first thing
in thr morning (US Pacific time) and post an
updated patch for you to look at tomorrow.

Cheers,

	Jeremy.




More information about the samba mailing list