Index: benchmark/io/http/protocol.cfa
===================================================================
--- benchmark/io/http/protocol.cfa	(revision ed2cb3cba5814d8342a8d98366f427f8b9ade2aa)
+++ benchmark/io/http/protocol.cfa	(revision ea837e94ae2375e430de2e4c6baa4ceeda949935)
@@ -52,5 +52,5 @@
 	while(len > 0) {
 		// Call write
-		int ret = cfa_send(fd, it, len, 0, 0);
+		int ret = cfa_send(fd, it, len, 0, CFA_IO_LAZY);
 		if( ret < 0 ) {
 			if( errno == ECONNRESET || errno == EPIPE ) return -ECONNRESET;
@@ -121,5 +121,5 @@
 	READ:
 	for() {
-		int ret = cfa_recv(fd, (void*)it, count, 0, 0);
+		int ret = cfa_recv(fd, (void*)it, count, 0, CFA_IO_LAZY);
 		// int ret = read(fd, (void*)it, count);
 		if(ret == 0 ) return [OK200, true, 0, 0];
@@ -160,6 +160,5 @@
 	ssize_t ret;
 	SPLICE1: while(count > 0) {
-		ret = cfa_splice(ans_fd, &offset, pipe[1], 0p, count, sflags, 0);
-		// ret = splice(ans_fd, &offset, pipe[1], 0p, count, sflags);
+		ret = cfa_splice(ans_fd, &offset, pipe[1], 0p, count, sflags, CFA_IO_LAZY);
 		if( ret < 0 ) {
 			if( errno != EAGAIN && errno != EWOULDBLOCK) continue SPLICE1;
@@ -173,6 +172,5 @@
 		size_t in_pipe = ret;
 		SPLICE2: while(in_pipe > 0) {
-			ret = cfa_splice(pipe[0], 0p, fd, 0p, in_pipe, sflags, 0);
-			// ret = splice(pipe[0], 0p, fd, 0p, in_pipe, sflags);
+			ret = cfa_splice(pipe[0], 0p, fd, 0p, in_pipe, sflags, CFA_IO_LAZY);
 			if( ret < 0 ) {
 				if( errno != EAGAIN && errno != EWOULDBLOCK) continue SPLICE2;
@@ -232,4 +230,5 @@
 		Time now = getTimeNsec();
 		strftime( buff, 100, "%a, %d %b %Y %H:%M:%S %Z", now );
+		sout | "Updated date to '" | buff | "'";
 
 		for(i; KNOWN_CODES) {
@@ -244,4 +243,6 @@
 		this.idx = (this.idx + 1) % 2;
 
+		sout | "Date thread sleeping";
+
 		sleep(1`s);
 	}
