Version: 1
-Previous: 0da4cffa00bf95588b2bdb551a8658ca2d165744
+Previous: bf9f20e91ff2a3e88c761839615d25e997128a8d
Head: e2940be2ceb62a8d2765a10656e98152ef8b3707
Applied:
real-close: 3409f8d6af187d25c63a5d1f8ee8bff5f14555e2
dup2: ca5813e7cf95dee5933fc417e4a34d26f2b01824
fstat: 07e07a6ee41d57eb20b3b71b1d8098408fc1de03
- support-for-debug-prints: e2940be2ceb62a8d2765a10656e98152ef8b3707
+ dbg-out: e2940be2ceb62a8d2765a10656e98152ef8b3707
Unapplied:
dbg: 0c269855776d3001e37da8c8afe283c20e1d6cd6
waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8
--- /dev/null
+Bottom: 8706747d8841cecefce6c394ef08bec016dd0348
+Top: fe2c4b1a23430f617f17d00c91c3e49a74ede2d0
+Author: Sean Hefty <sean.hefty@intel.com>
+Date: 2012-08-07 21:30:48 -0700
+
+support for debug prints
+
+---
+
+diff --git a/src/preload.c b/src/preload.c
+index 53f8543..4379bfc 100644
+--- a/src/preload.c
++++ b/src/preload.c
+@@ -48,6 +48,8 @@
+ #include <netinet/tcp.h>
+ #include <unistd.h>
+ #include <semaphore.h>
++#include <stdio.h>
++#include <sys/syscall.h>
+
+ #include <rdma/rdma_cma.h>
+ #include <rdma/rdma_verbs.h>
+@@ -98,6 +100,8 @@ static int rq_size;
+ static int sq_inline;
+ static int fork_support;
+
++static FILE *fout;
++
+ enum fd_type {
+ fd_normal,
+ fd_rsocket,
+@@ -286,6 +290,7 @@ static void init_preload(void)
+ rs.getsockopt = dlsym(RTLD_DEFAULT, "rgetsockopt");
+ rs.fcntl = dlsym(RTLD_DEFAULT, "rfcntl");
+
++ fout = fopen("rs-out.txt", "w+");
+ getenv_options();
+ init = 1;
+ out:
+@@ -391,6 +396,8 @@ int socket(int domain, int type, int protocol)
+ if (index < 0)
+ return index;
+
++ fprintf(fout, "%d socket - %d\n", syscall(SYS_gettid), index);
++ fflush(fout);
+ recursive = 1;
+ ret = rsocket(domain, type, protocol);
+ recursive = 0;
+@@ -405,6 +412,9 @@ int socket(int domain, int type, int protocol)
+ fd_store(index, ret, fd_rsocket);
+ set_rsocket_options(ret);
+ }
++ fprintf(fout, "%d socket - %d fd %d type %d\n",
++ syscall(SYS_gettid), index, ret, fd_gett(index));
++ fflush(fout);
+ return index;
+ }
+ fd_close(index, &ret);
+@@ -465,6 +475,8 @@ static int fork_active(int socket, const struct sockaddr *addr, socklen_t addrle
+ long flags;
+
+ fd = fd_getd(socket);
++ fprintf(fout, "%d fork_active - %d fd %d\n", syscall(SYS_gettid), socket, fd);
++ fflush(fout);
+ flags = real.fcntl(fd, F_GETFL);
+ real.fcntl(fd, F_SETFL, 0);
+ ret = real.connect(fd, addr, addrlen);
+@@ -495,6 +507,8 @@ static void fork_passive(int socket)
+ uint32_t msg;
+
+ fd_get(socket, &sfd);
++ fprintf(fout, "%d fork_passive - %d fd %d\n", syscall(SYS_gettid), socket, sfd);
++ fflush(fout);
+
+ len = sizeof sin6;
+ ret = real.getsockname(sfd, (struct sockaddr *) &sin6, &len);
+@@ -527,11 +541,17 @@ static void fork_passive(int socket)
+ ret = rlisten(lfd, 1);
+ if (ret)
+ goto lclose;
++ fprintf(fout, "%d fork_passive - %d listening for fork\n", syscall(SYS_gettid), socket);
++ fflush(fout);
+
+ msg = 0;
+ len = real.write(sfd, &msg, sizeof msg);
+ if (len != sizeof msg)
++ {
++ fprintf(fout, "%d fork_passive - %d write failed\n", syscall(SYS_gettid), socket);
++ fflush(fout);
+ goto lclose;
++ }
+
+ dfd = raccept(lfd, NULL, NULL);
+ if (dfd < 0) {
+@@ -547,6 +567,8 @@ static void fork_passive(int socket)
+ real.shutdown(sfd, SHUT_RDWR);
+ real.close(sfd);
+ fd_store(socket, dfd, fd_rsocket);
++ fprintf(fout, "%d fork_passive success - %d new fd %d\n", syscall(SYS_gettid), socket, dfd);
++ fflush(fout);
+
+ lclose:
+ rclose(lfd);
+@@ -924,6 +946,7 @@ int dup2(int oldfd, int newfd)
+ int ret;
+
+ init_preload();
++ fprintf(fout, "%d dup2 %d -> %d\n", syscall(SYS_gettid), oldfd, newfd);
+ oldfdi = idm_lookup(&idm, oldfd);
+ if (oldfdi && oldfdi->type == fd_fork)
+ fork_passive(oldfd);
+@@ -968,12 +991,18 @@ int __fxstat64(int ver, int socket, struct stat64 *buf)
+ {
+ int fd, ret;
+
++ init_preload();
++ fprintf(fout, "%d fxstat64 socket %d - fd %d type %d\n",
++ syscall(SYS_gettid), socket, fd_getd(socket), fd_gett(socket));
+ if (fd_get(socket, &fd) == fd_rsocket) {
+ ret = real.fxstat64(ver, socket, buf);
++ fprintf(fout, "%d fxstat64 - rsocket %d\n", syscall(SYS_gettid), ret);
+ if (!ret)
+ buf->st_mode = (buf->st_mode & ~S_IFMT) | __S_IFSOCK;
+ } else {
+ ret = real.fxstat64(ver, fd, buf);
++ fprintf(fout, "%d fxstat64 - normal %d\n", syscall(SYS_gettid), ret);
+ }
++ fflush(fout);
+ return ret;
+ }
+++ /dev/null
-Bottom: 8706747d8841cecefce6c394ef08bec016dd0348
-Top: fe2c4b1a23430f617f17d00c91c3e49a74ede2d0
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2012-08-07 21:30:48 -0700
-
-support for debug prints
-
----
-
-diff --git a/src/preload.c b/src/preload.c
-index 53f8543..4379bfc 100644
---- a/src/preload.c
-+++ b/src/preload.c
-@@ -48,6 +48,8 @@
- #include <netinet/tcp.h>
- #include <unistd.h>
- #include <semaphore.h>
-+#include <stdio.h>
-+#include <sys/syscall.h>
-
- #include <rdma/rdma_cma.h>
- #include <rdma/rdma_verbs.h>
-@@ -98,6 +100,8 @@ static int rq_size;
- static int sq_inline;
- static int fork_support;
-
-+static FILE *fout;
-+
- enum fd_type {
- fd_normal,
- fd_rsocket,
-@@ -286,6 +290,7 @@ static void init_preload(void)
- rs.getsockopt = dlsym(RTLD_DEFAULT, "rgetsockopt");
- rs.fcntl = dlsym(RTLD_DEFAULT, "rfcntl");
-
-+ fout = fopen("rs-out.txt", "w+");
- getenv_options();
- init = 1;
- out:
-@@ -391,6 +396,8 @@ int socket(int domain, int type, int protocol)
- if (index < 0)
- return index;
-
-+ fprintf(fout, "%d socket - %d\n", syscall(SYS_gettid), index);
-+ fflush(fout);
- recursive = 1;
- ret = rsocket(domain, type, protocol);
- recursive = 0;
-@@ -405,6 +412,9 @@ int socket(int domain, int type, int protocol)
- fd_store(index, ret, fd_rsocket);
- set_rsocket_options(ret);
- }
-+ fprintf(fout, "%d socket - %d fd %d type %d\n",
-+ syscall(SYS_gettid), index, ret, fd_gett(index));
-+ fflush(fout);
- return index;
- }
- fd_close(index, &ret);
-@@ -465,6 +475,8 @@ static int fork_active(int socket, const struct sockaddr *addr, socklen_t addrle
- long flags;
-
- fd = fd_getd(socket);
-+ fprintf(fout, "%d fork_active - %d fd %d\n", syscall(SYS_gettid), socket, fd);
-+ fflush(fout);
- flags = real.fcntl(fd, F_GETFL);
- real.fcntl(fd, F_SETFL, 0);
- ret = real.connect(fd, addr, addrlen);
-@@ -495,6 +507,8 @@ static void fork_passive(int socket)
- uint32_t msg;
-
- fd_get(socket, &sfd);
-+ fprintf(fout, "%d fork_passive - %d fd %d\n", syscall(SYS_gettid), socket, sfd);
-+ fflush(fout);
-
- len = sizeof sin6;
- ret = real.getsockname(sfd, (struct sockaddr *) &sin6, &len);
-@@ -527,11 +541,17 @@ static void fork_passive(int socket)
- ret = rlisten(lfd, 1);
- if (ret)
- goto lclose;
-+ fprintf(fout, "%d fork_passive - %d listening for fork\n", syscall(SYS_gettid), socket);
-+ fflush(fout);
-
- msg = 0;
- len = real.write(sfd, &msg, sizeof msg);
- if (len != sizeof msg)
-+ {
-+ fprintf(fout, "%d fork_passive - %d write failed\n", syscall(SYS_gettid), socket);
-+ fflush(fout);
- goto lclose;
-+ }
-
- dfd = raccept(lfd, NULL, NULL);
- if (dfd < 0) {
-@@ -547,6 +567,8 @@ static void fork_passive(int socket)
- real.shutdown(sfd, SHUT_RDWR);
- real.close(sfd);
- fd_store(socket, dfd, fd_rsocket);
-+ fprintf(fout, "%d fork_passive success - %d new fd %d\n", syscall(SYS_gettid), socket, dfd);
-+ fflush(fout);
-
- lclose:
- rclose(lfd);
-@@ -924,6 +946,7 @@ int dup2(int oldfd, int newfd)
- int ret;
-
- init_preload();
-+ fprintf(fout, "%d dup2 %d -> %d\n", syscall(SYS_gettid), oldfd, newfd);
- oldfdi = idm_lookup(&idm, oldfd);
- if (oldfdi && oldfdi->type == fd_fork)
- fork_passive(oldfd);
-@@ -968,12 +991,18 @@ int __fxstat64(int ver, int socket, struct stat64 *buf)
- {
- int fd, ret;
-
-+ init_preload();
-+ fprintf(fout, "%d fxstat64 socket %d - fd %d type %d\n",
-+ syscall(SYS_gettid), socket, fd_getd(socket), fd_gett(socket));
- if (fd_get(socket, &fd) == fd_rsocket) {
- ret = real.fxstat64(ver, socket, buf);
-+ fprintf(fout, "%d fxstat64 - rsocket %d\n", syscall(SYS_gettid), ret);
- if (!ret)
- buf->st_mode = (buf->st_mode & ~S_IFMT) | __S_IFSOCK;
- } else {
- ret = real.fxstat64(ver, fd, buf);
-+ fprintf(fout, "%d fxstat64 - normal %d\n", syscall(SYS_gettid), ret);
- }
-+ fflush(fout);
- return ret;
- }