[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-test-2432-ge2ca12c

Volker Lendecke vl at samba.org
Tue Feb 19 15:16:22 GMT 2008


The branch, v3-2-test has been updated
       via  e2ca12c2345c0e3916dd09d097b2ba1ce2989fa8 (commit)
       via  81d823e026fb332a88b6e1f15030fe49719f2522 (commit)
      from  e5cc8b683cba3f2f3a84b1636b3d5bee1bfc0dda (commit)

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


- Log -----------------------------------------------------------------
commit e2ca12c2345c0e3916dd09d097b2ba1ce2989fa8
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Feb 19 13:27:08 2008 +0100

    Update position information also for AIO
    
    Necessary to survive RAW-SEEK with AIO enabled.
    
    Jeremy, please check!

commit 81d823e026fb332a88b6e1f15030fe49719f2522
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Feb 19 15:53:57 2008 +0100

    Inform level II oplock holders when we write using AIO
    
    Jeremy, please check!

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

Summary of changes:
 source/smbd/aio.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/smbd/aio.c b/source/smbd/aio.c
index 86fdfe3..8c6eaf1 100644
--- a/source/smbd/aio.c
+++ b/source/smbd/aio.c
@@ -351,6 +351,8 @@ bool schedule_aio_write_and_X(connection_struct *conn,
 		return False;
 	}
 
+	release_level_2_oplocks_on_change(fsp);
+
 	if (!write_through && !lp_syncalways(SNUM(fsp->conn))
 	    && fsp->aio_write_behind) {
 		/* Lie to the client and immediately claim we finished the
@@ -421,6 +423,9 @@ static int handle_aio_read_complete(struct aio_extra *aio_ex)
 		SSVAL(outbuf,smb_vwv7,((nread >> 16) & 1));
 		SSVAL(smb_buf(outbuf),-2,nread);
 
+		aio_ex->fsp->fh->pos = aio_ex->acb.aio_offset + nread;
+		aio_ex->fsp->fh->position_information = aio_ex->fsp->fh->pos;
+
 		DEBUG( 3, ( "handle_aio_read_complete file %s max=%d "
 			    "nread=%d\n",
 			    aio_ex->fsp->fsp_name,
@@ -522,6 +527,8 @@ static int handle_aio_write_complete(struct aio_extra *aio_ex)
                 	DEBUG(5,("handle_aio_write: sync_file for %s returned %s\n",
 				fsp->fsp_name, nt_errstr(status) ));
 		}
+
+		aio_ex->fsp->fh->pos = aio_ex->acb.aio_offset + nwritten;
 	}
 
 	show_msg(outbuf);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list