s3/smbd: add and use retry_open() instead of defer_open() in two places
authorRalph Boehme <slow@samba.org>
Tue, 7 Mar 2017 14:03:12 +0000 (15:03 +0100)
committerJeremy Allison <jra@samba.org>
Fri, 10 Mar 2017 02:28:25 +0000 (03:28 +0100)
commitbeaba6222848fb4ff4392b2247c5be1094b1d65b
treefaf5b1ed303d7e9579fc4971970ee8a84bf49536
parentb17ff9b181b7b9730d32534e720c45faabfa6799
s3/smbd: add and use retry_open() instead of defer_open() in two places

Add a new function that does an immediate open rescheduling.

The first deferred open this commit changes was never scheduled, as the
scheduling relies on a timeout of the watch on the sharemode lock.

This has been broken since the commits in

$ git log --reverse -p -10 8283fd0e0090ed12b0b12d5acb550642d621b026

That patchset added the dbwrap watch record logic to defer_open() and
removed the timers.

I'm doing this mainly to untangle the defer_open() logic which is
complicated by the lck arg.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=7537

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/smbd/open.c