martin 99/12/01 12:24:58
Modified: src CHANGES
src/main buff.c
Log:
On BS2000, currently the send() call has slightly better performance
than write(), and it doesn't have a maximum transfer size of 16kB.
Revision Changes Path
1.1464 +4 -0 apache-1.3/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
retrieving revision 1.1463
retrieving revision 1.1464
diff -u -r1.1463 -r1.1464
--- CHANGES 1999/11/30 15:51:59 1.1463
+++ CHANGES 1999/12/01 20:24:50 1.1464
@@ -1,5 +1,9 @@
Changes with Apache 1.3.10
+ *) BS2000: Use send() instead of write() in the core buff routines
+ for better performance and fewer restrictions (max. transfer size)
+ [Martin Kraemer]
+
*) If the compiler sanity check fails, force the verbose output
for TestCompile so people can have a clue what the problem
is. [Jim Jagielski]
1.91 +11 -0 apache-1.3/src/main/buff.c
Index: buff.c
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/main/buff.c,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -r1.90 -r1.91
--- buff.c 1999/10/22 05:10:06 1.90
+++ buff.c 1999/12/01 20:24:56 1.91
@@ -319,6 +319,17 @@
#if defined (B_SFIO)
rv = sfwrite(fb->sf_out, buf, nbyte);
#else
+#ifdef _OSD_POSIX
+ /* Sorry, but this is a hack: On BS2000, currently the send() call
+ * has slightly better performance, and it doesn't have a maximum
+ * transfer size of 16kB per write. Both write() and writev()
+ * currently have such a limit and therefore don't work
+ * too well with MMAP files.
+ */
+ if (fb->flags & B_SOCKET)
+ rv = send(fb->fd, buf, nbyte, 0);
+ else
+#endif
rv = write(fb->fd, buf, nbyte);
#endif