The branch, v3-4-test has been updated
       via  a13f8bf... s3/aio: allow for outstanding_aio_calls to be 
decremented.
      from  c0cbfde... s3/Makefile: BUG 6791: Fix link order for libwbclient.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test


- Log -----------------------------------------------------------------
commit a13f8bf949300079419cd86982012212323fcb65
Author: Olaf Flebbe <[email protected]>
Date:   Wed Sep 30 14:55:58 2009 +0200

    s3/aio: allow for outstanding_aio_calls to be decremented.
    
    Fixes bug #6772.

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/aio.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/aio.c b/source3/smbd/aio.c
index fbfec46..e5e522c 100644
--- a/source3/smbd/aio.c
+++ b/source3/smbd/aio.c
@@ -187,6 +187,7 @@ bool schedule_aio_read_and_X(connection_struct *conn,
                return False;
        }
 
+       outstanding_aio_calls++;
        aio_ex->req = talloc_move(aio_ex, &req);
 
        DEBUG(10,("schedule_aio_read_and_X: scheduled aio_read for file %s, "
@@ -195,7 +196,6 @@ bool schedule_aio_read_and_X(connection_struct *conn,
                  (unsigned int)aio_ex->req->mid ));
 
        srv_defer_sign_response(aio_ex->req->mid);
-       outstanding_aio_calls++;
        return True;
 }
 
@@ -283,6 +283,7 @@ bool schedule_aio_write_and_X(connection_struct *conn,
                return False;
        }
 
+       outstanding_aio_calls++;
        aio_ex->req = talloc_move(aio_ex, &req);
 
        /* This should actually be improved to span the write. */
@@ -307,7 +308,6 @@ bool schedule_aio_write_and_X(connection_struct *conn,
        } else {
                srv_defer_sign_response(aio_ex->req->mid);
        }
-       outstanding_aio_calls++;
 
        DEBUG(10,("schedule_aio_write_and_X: scheduled aio_write for file "
                  "%s, offset %.0f, len = %u (mid = %u) "
@@ -523,6 +523,8 @@ void smbd_aio_complete_mid(unsigned int mid)
        struct aio_extra *aio_ex = find_aio_ex(mid);
        int ret = 0;
 
+       outstanding_aio_calls--;
+
        DEBUG(10,("smbd_aio_complete_mid: mid[%u]\n", mid));
 
        if (!aio_ex) {


-- 
Samba Shared Repository

Reply via email to