Version: 1
-Previous: a510fd0c2287dec2c43eddd02ea5d3fc489d12f1
-Head: eef073f24d4ab14fc963284d7d8e1d1bfc171941
+Previous: 59cbf1934985ba2f24731c128d1ee6e342f00702
+Head: a0d321cdff2a8176172650619686e0e6e0d41b61
Applied:
transpose: 84e0beee0d2d3c217cd9703b9e438d25856cacb6
fork: c86c2d8e7d556ae2d94b3181939473a50337e550
rstream-fork: 9f5d60f8ea3e5eee69fc66b0c167b693242a0f4b
- dbg: 86be1e3b4d4c85da92727f1da39afce483992311
- refresh-temp: eef073f24d4ab14fc963284d7d8e1d1bfc171941
+ dbg: a0d321cdff2a8176172650619686e0e6e0d41b61
Unapplied:
waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8
rs-1sge: 8ec392829399dec7ed5c608b8697a482e5faa2de
Bottom: a625ed79a630be511a10aa72ac56ee50cd156f44
-Top: a625ed79a630be511a10aa72ac56ee50cd156f44
+Top: 4f509e4d5734c0779509a899a2a333341d675ac7
Author: Sean Hefty <sean.hefty@intel.com>
Date: 2012-07-18 09:01:43 -0700
---
-
+diff --git a/src/preload.c b/src/preload.c
+index 6cc0d72..9d217e9 100644
+--- a/src/preload.c
++++ b/src/preload.c
+@@ -463,18 +463,22 @@ static int connect_fork(int socket, const struct sockaddr *addr, socklen_t addrl
+ int fd, ret;
+ uint32_t msg;
+
++ printf("connect_fork\n");
+ fd = fd_getd(socket);
+ ret = real.connect(fd, addr, addrlen);
++ printf("connect_fork - real connect %d\n", ret);
+ if (ret)
+ return ret;
+
+- ret = real.read(fd, &msg, sizeof msg);
++ ret = real.recv(fd, &msg, sizeof msg, MSG_PEEK);
++ printf("connect_fork - real recv %d msg %d\n", ret, msg);
+ if ((ret != sizeof msg) || msg) {
+ fd_store(socket, fd, fd_normal);
+ return 0;
+ }
+
+ ret = transpose_socket(socket, fd_rsocket);
++ printf("connect_fork - transpose socket %d\n", ret);
+ if (ret < 0)
+ return ret;
+
+@@ -827,11 +831,14 @@ pid_t fork(void)
+ uint32_t msg;
+
+ init_preload();
++ printf("fork\n");
+ pid = real.fork();
++ printf("fork - pid %d\n", pid);
+ if (pid || !fork_support || (last_accept < 0) ||
+ (fd_get(last_accept, &sfd) != fd_fork))
+ goto out;
+
++ printf("fork - switching to rsocket\n");
+ len = sizeof sin6;
+ ret = real.getsockname(sfd, (struct sockaddr *) &sin6, &len);
+ if (ret)
+@@ -840,10 +847,12 @@ pid_t fork(void)
+ memset(&sin6.sin6_addr, 0, sizeof sin6.sin6_addr);
+
+ sem = sem_open("/rsocket_fork", O_CREAT, 0644, 1);
++ printf("fork - sem_open %d\n", sem);
+ if (sem == SEM_FAILED)
+ goto out;
+
+ lfd = rsocket(sin6.sin6_family, SOCK_STREAM, 0);
++ printf("fork - rsocket %d\n", ldf);
+ if (lfd < 0)
+ goto sclose;
+
+@@ -852,14 +861,17 @@ pid_t fork(void)
+
+ sem_wait(sem);
+ ret = rbind(lfd, (struct sockaddr *) &sin6, sizeof sin6);
++ printf("fork - rbind %d\n", ret);
+ if (ret)
+ goto lclose;
+
+ ret = rlisten(lfd, 1);
++ printf("fork - rlisten %d\n", ret);
+ if (ret)
+ goto lclose;
+
+ dfd = raccept(lfd, NULL, NULL);
++ printf("fork - raccept %d\n", dfd);
+ if (dfd < 0)
+ goto lclose;
+
+@@ -869,6 +881,7 @@ pid_t fork(void)
+
+ msg = 0;
+ ret = real.write(sfd, &msg, sizeof msg);
++ printf("fork - real write %d\n", ret);
+ if (ret != sizeof msg) {
+ rclose(dfd);
+ goto lclose;
+++ /dev/null
-Bottom: a625ed79a630be511a10aa72ac56ee50cd156f44
-Top: 4f509e4d5734c0779509a899a2a333341d675ac7
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2012-07-18 09:08:58 -0700
-
-Refresh of dbg
-
----
-
-diff --git a/src/preload.c b/src/preload.c
-index 6cc0d72..9d217e9 100644
---- a/src/preload.c
-+++ b/src/preload.c
-@@ -463,18 +463,22 @@ static int connect_fork(int socket, const struct sockaddr *addr, socklen_t addrl
- int fd, ret;
- uint32_t msg;
-
-+ printf("connect_fork\n");
- fd = fd_getd(socket);
- ret = real.connect(fd, addr, addrlen);
-+ printf("connect_fork - real connect %d\n", ret);
- if (ret)
- return ret;
-
-- ret = real.read(fd, &msg, sizeof msg);
-+ ret = real.recv(fd, &msg, sizeof msg, MSG_PEEK);
-+ printf("connect_fork - real recv %d msg %d\n", ret, msg);
- if ((ret != sizeof msg) || msg) {
- fd_store(socket, fd, fd_normal);
- return 0;
- }
-
- ret = transpose_socket(socket, fd_rsocket);
-+ printf("connect_fork - transpose socket %d\n", ret);
- if (ret < 0)
- return ret;
-
-@@ -827,11 +831,14 @@ pid_t fork(void)
- uint32_t msg;
-
- init_preload();
-+ printf("fork\n");
- pid = real.fork();
-+ printf("fork - pid %d\n", pid);
- if (pid || !fork_support || (last_accept < 0) ||
- (fd_get(last_accept, &sfd) != fd_fork))
- goto out;
-
-+ printf("fork - switching to rsocket\n");
- len = sizeof sin6;
- ret = real.getsockname(sfd, (struct sockaddr *) &sin6, &len);
- if (ret)
-@@ -840,10 +847,12 @@ pid_t fork(void)
- memset(&sin6.sin6_addr, 0, sizeof sin6.sin6_addr);
-
- sem = sem_open("/rsocket_fork", O_CREAT, 0644, 1);
-+ printf("fork - sem_open %d\n", sem);
- if (sem == SEM_FAILED)
- goto out;
-
- lfd = rsocket(sin6.sin6_family, SOCK_STREAM, 0);
-+ printf("fork - rsocket %d\n", ldf);
- if (lfd < 0)
- goto sclose;
-
-@@ -852,14 +861,17 @@ pid_t fork(void)
-
- sem_wait(sem);
- ret = rbind(lfd, (struct sockaddr *) &sin6, sizeof sin6);
-+ printf("fork - rbind %d\n", ret);
- if (ret)
- goto lclose;
-
- ret = rlisten(lfd, 1);
-+ printf("fork - rlisten %d\n", ret);
- if (ret)
- goto lclose;
-
- dfd = raccept(lfd, NULL, NULL);
-+ printf("fork - raccept %d\n", dfd);
- if (dfd < 0)
- goto lclose;
-
-@@ -869,6 +881,7 @@ pid_t fork(void)
-
- msg = 0;
- ret = real.write(sfd, &msg, sizeof msg);
-+ printf("fork - real write %d\n", ret);
- if (ret != sizeof msg) {
- rclose(dfd);
- goto lclose;