From bae499c3451bfa8158b0d211bfe4a546442702e8 Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Wed, 18 Jul 2012 09:08:58 -0700 Subject: [PATCH] refresh (create temporary patch) --- meta | 5 ++- patches/refresh-temp | 91 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+), 2 deletions(-) create mode 100644 patches/refresh-temp diff --git a/meta b/meta index 72c2c7bb..78d2f207 100644 --- a/meta +++ b/meta @@ -1,11 +1,12 @@ Version: 1 -Previous: 0521a93a79dd258f6442a4f0cbbc9b78ead98b22 -Head: 86be1e3b4d4c85da92727f1da39afce483992311 +Previous: a510fd0c2287dec2c43eddd02ea5d3fc489d12f1 +Head: eef073f24d4ab14fc963284d7d8e1d1bfc171941 Applied: transpose: 84e0beee0d2d3c217cd9703b9e438d25856cacb6 fork: c86c2d8e7d556ae2d94b3181939473a50337e550 rstream-fork: 9f5d60f8ea3e5eee69fc66b0c167b693242a0f4b dbg: 86be1e3b4d4c85da92727f1da39afce483992311 + refresh-temp: eef073f24d4ab14fc963284d7d8e1d1bfc171941 Unapplied: waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8 rs-1sge: 8ec392829399dec7ed5c608b8697a482e5faa2de diff --git a/patches/refresh-temp b/patches/refresh-temp new file mode 100644 index 00000000..0b121ba2 --- /dev/null +++ b/patches/refresh-temp @@ -0,0 +1,91 @@ +Bottom: a625ed79a630be511a10aa72ac56ee50cd156f44 +Top: 4f509e4d5734c0779509a899a2a333341d675ac7 +Author: Sean Hefty +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; -- 2.41.0