summaryrefslogtreecommitdiff
path: root/source3/smbd/oplock.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-04-15 04:07:10 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:16:22 -0500
commit010c725b36feb1a234dce9f40b95ae5869058698 (patch)
tree48ab1b420d3ca0e47677c9f88001506c3b61b16b /source3/smbd/oplock.c
parenta2e2032d080804b4555df8938e53b395e3fe0b7b (diff)
downloadsamba-010c725b36feb1a234dce9f40b95ae5869058698.tar.gz
samba-010c725b36feb1a234dce9f40b95ae5869058698.tar.bz2
samba-010c725b36feb1a234dce9f40b95ae5869058698.zip
r15088: Remove all time() and gettimeofday() calls out of the mainline
packet processing code. Only do these when needed (ie. in the idle timeout code). We drop an unneccessary global here too. Jeremy. (This used to be commit 8272a5ab0605fcf95527143c4f909aa1008e5b94)
Diffstat (limited to 'source3/smbd/oplock.c')
-rw-r--r--source3/smbd/oplock.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/source3/smbd/oplock.c b/source3/smbd/oplock.c
index 61e812d43a..70e5bf4d72 100644
--- a/source3/smbd/oplock.c
+++ b/source3/smbd/oplock.c
@@ -27,7 +27,6 @@ static int32 exclusive_oplocks_open = 0;
static int32 level_II_oplocks_open = 0;
BOOL global_client_failed_oplock_break = False;
-extern struct timeval smb_last_time;
extern uint32 global_client_caps;
extern int smb_read_error;
@@ -277,21 +276,10 @@ static char *new_break_smb_message(TALLOC_CTX *mem_ctx,
static void wait_before_sending_break(void)
{
- struct timeval cur_tv;
- long wait_left = (long)lp_oplock_break_wait_time();
+ long wait_time = (long)lp_oplock_break_wait_time();
- if (wait_left == 0) {
- return;
- }
-
- GetTimeOfDay(&cur_tv);
-
- wait_left -= ((cur_tv.tv_sec - smb_last_time.tv_sec)*1000) +
- ((cur_tv.tv_usec - smb_last_time.tv_usec)/1000);
-
- if(wait_left > 0) {
- wait_left = MIN(wait_left, 1000);
- sys_usleep(wait_left * 1000);
+ if (wait_time) {
+ smb_msleep(wait_time);
}
}