summaryrefslogtreecommitdiffstats
path: root/source3/smbd/process.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-02-14 23:00:39 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:10:07 -0500
commit5c149702b0885db8d63f189f4bba0e17fdaad7a4 (patch)
tree36176b6c105694a97a539785f0c32b99ea799eaa /source3/smbd/process.c
parent7f7c9849e4aed9ff7b51989a81f6039c5b59f2dd (diff)
downloadsamba-5c149702b0885db8d63f189f4bba0e17fdaad7a4.tar.gz
samba-5c149702b0885db8d63f189f4bba0e17fdaad7a4.tar.xz
samba-5c149702b0885db8d63f189f4bba0e17fdaad7a4.zip
r13498: Fix the kernel oplocks code for IRIX. Should fix #3515.
Jeremy. (This used to be commit 006cf9c3654e7f18e01b75a5fe87798df862d26a)
Diffstat (limited to 'source3/smbd/process.c')
-rw-r--r--source3/smbd/process.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 2f19f909f2..9d35252e28 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -289,13 +289,13 @@ struct idle_event *add_idle_event(TALLOC_CTX *mem_ctx,
notify events etc.
****************************************************************************/
-static void async_processing(void)
+static void async_processing(fd_set *pfds)
{
DEBUG(10,("async_processing: Doing async processing.\n"));
process_aio_queue();
- process_kernel_oplocks();
+ process_kernel_oplocks(pfds);
/* Do the aio check again after receive_local_message as it does a
select and may have eaten our signal. */
@@ -432,7 +432,7 @@ static BOOL receive_message_or_smb(char *buffer, int buffer_len, int timeout)
if (oplock_message_waiting(&fds)) {
DEBUG(10,("receive_message_or_smb: oplock_message is waiting.\n"));
- async_processing();
+ async_processing(&fds);
/*
* After async processing we must go and do the select again, as
* the state of the flag in fds for the server file descriptor is
@@ -462,7 +462,7 @@ static BOOL receive_message_or_smb(char *buffer, int buffer_len, int timeout)
is the best we can do until the oplock code knows more about
signals */
if (selrtn == -1 && errno == EINTR) {
- async_processing();
+ async_processing(&fds);
/*
* After async processing we must go and do the select again, as
* the state of the flag in fds for the server file descriptor is
@@ -491,7 +491,7 @@ static BOOL receive_message_or_smb(char *buffer, int buffer_len, int timeout)
*/
if (oplock_message_waiting(&fds)) {
- async_processing();
+ async_processing(&fds);
/*
* After async processing we must go and do the select again, as
* the state of the flag in fds for the server file descriptor is
@@ -540,7 +540,7 @@ void respond_to_all_remaining_local_messages(void)
return;
}
- process_kernel_oplocks();
+ process_kernel_oplocks(NULL);
return;
}