diff -upPr -x *.o ../stk/comm.c ./comm.c
--- ../stk/comm.c       Sun Apr 14 14:28:46 1996
+++ ./comm.c    Wed Oct 15 15:39:45 1997
@@ -1092,11 +1092,16 @@ int process_output(struct descriptor_dat
   }
   /*
    * if we were using a large buffer, put the large buffer on the buffer pool
-   * and switch back to the small one
+   * and switch back to the small one, or 25% of the time just free it.
    */
   if (t->large_outbuf) {
-    t->large_outbuf->next = bufpool;
-    bufpool = t->large_outbuf;
+    if (number(0, 3)) {                /* Keep it. */
+      t->large_outbuf->next = bufpool;
+      bufpool = t->large_outbuf;
+    } else {                   /* Free it. */
+      free(t->large_outbuf);
+      buf_largecount--;
+    }
     t->large_outbuf = NULL;
     t->output = t->small_outbuf;
   }

