r15293: Don't ever set O_SYNC on open unless "strict sync = yes".
authorJeremy Allison <jra@samba.org>
Thu, 27 Apr 2006 13:42:18 +0000 (13:42 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 16:16:32 +0000 (11:16 -0500)
This could be the cause of the perf. problem reported
between 3.0.14a and 3.0.2x. Lufthansa has *wireless*
on their flights to the USA now...  (I'm in heaven ! :-).
Jeremy.

source/smbd/open.c

index edc5bc98b6e8985296a0bf78c5f63f23152f09bc..1c8716abdac39b24ec59474ed9f120d735a6e8ea 100644 (file)
@@ -1308,7 +1308,7 @@ files_struct *open_file_ntcreate(connection_struct *conn,
         */
 
 #if defined(O_SYNC)
-       if (create_options & FILE_WRITE_THROUGH) {
+       if (lp_strict_sync(SNUM(conn)) && (create_options & FILE_WRITE_THROUGH)) {
                flags2 |= O_SYNC;
        }
 #endif /* O_SYNC */