#define TARGET_HOSTNAME "localhost"
#define BYTES (128*1024*1024UL)
-#define BUFSIZE (64*1024)
+#define BUFSIZE (64*1024U)
#define NR (BYTES/BUFSIZE)
printf("%Ld cycles/sec\n", cycles_per_sec);
}
-static int child(struct sockaddr *addr, int len)
+static int child(void)
{
static char buffer[BUFSIZE];
int sk;
struct sockaddr_in s_to;
struct hostent *hp;
double r1, r2, r3, r4, r5;
- int i, pipefd[2];
+ unsigned int i;
+ int pipefd[2];
loff_t off = 0;
r1 = r2 = r3 = r4 = r5 = 0;
fprintf(stdout, "BUFSIZE = %d\n", BUFSIZE);
fflush(stdout);
- if (connect(sk, (struct sockaddr *)&s_to, len) < 0)
+ if (connect(sk, (struct sockaddr *)&s_to, sizeof(s_to)) < 0)
return error("connect");
start_timing("Empty buffer");
start_timing("sendfile");
sendfile_again:
sk = socket(PF_INET, SOCK_STREAM, 0);
- if (connect(sk, (struct sockaddr *)&s_to, len) < 0)
+ if (connect(sk, (struct sockaddr *)&s_to, sizeof(s_to)) < 0)
return error("connect");
fd = open("largefile", O_RDONLY);
start_timing("splice-pipe");
splice_pipe_again:
sk = socket(PF_INET, SOCK_STREAM, 0);
- if (connect(sk, (struct sockaddr *)&s_to, len) < 0)
+ if (connect(sk, (struct sockaddr *)&s_to, sizeof(s_to)) < 0)
return error("connect");
fd = open("largefile", O_RDONLY);
start_timing("splice");
splice_again:
sk = socket(PF_INET, SOCK_STREAM, 0);
- if (connect(sk, (struct sockaddr *)&s_to, len) < 0)
+ if (connect(sk, (struct sockaddr *)&s_to, sizeof(s_to)) < 0)
return error("connect");
fd = open("largefile", O_RDONLY);
}
}
-int main(int argc, char **argv)
+int main(__attribute__((__unused__)) int argc, __attribute__((__unused__)) char **argv)
{
- unsigned int sk, len;
- struct sockaddr addr;
pid_t pid;
setup_shared_var();
signal(SIGCHLD, SIG_IGN);
- sk = socket(PF_INET, SOCK_STREAM, 0);
- if (sk < 0) {
- perror("socket");
- exit(1);
- }
- if (listen(sk, 1) < 0) {
- perror("listen");
- exit(1);
- }
- len = sizeof(addr);
- if (getsockname(sk, &addr, &len) < 0) {
- perror("getsockname");
- exit(1);
- }
+
pid = fork();
if (!pid) {
lowprio_cycle_soak_loop();
exit(0);
}
+
nice(-20);
- child(&addr, len);
+ child();
kill(pid, SIGHUP);
exit(0);
}