]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
refresh
authorSean Hefty <sean.hefty@intel.com>
Sat, 8 Dec 2012 01:01:28 +0000 (17:01 -0800)
committerSean Hefty <sean.hefty@intel.com>
Sat, 8 Dec 2012 01:01:28 +0000 (17:01 -0800)
meta
patches/dsocket
patches/refresh-temp [deleted file]

diff --git a/meta b/meta
index cdc57738885aaa4f6c68a031caba76f15cc1b490..941359e8908d846186b64a981f9c3d0ff7524f69 100644 (file)
--- a/meta
+++ b/meta
@@ -1,9 +1,8 @@
 Version: 1
-Previous: 603b52016b4c0417d17ba16b28f2fb228862b144
-Head: 2b744849213f057983fe1a297b924cd5461abd87
+Previous: 0dbe6dda77562850e0f9968a9d9fc17a9b817d53
+Head: 017c83e85700bb3411fe7abd46eeeae229ac6012
 Applied:
-  dsocket: ad3be3a08de1c984c85f2f44d953894f30d279f6
-  refresh-temp: 2b744849213f057983fe1a297b924cd5461abd87
+  dsocket: 017c83e85700bb3411fe7abd46eeeae229ac6012
 Unapplied:
   udpong: 87e18a2dc15e31fa2ef06b729a0142c1c7354e4a
   test-udp: f6c78ad2a26f452cf166aff1baa7b76160bd8bf7
index eb3cadc17cca07e6737949f1b4a872896c31a30c..e435f2237644ccab3be4ab89702eb998bfcaa400 100644 (file)
@@ -1,5 +1,5 @@
 Bottom: 1fa07c62817ac4b6cb8d9c5e327ea2cdc75dbd21
-Top:    ae4df7b46b3d1c519383a31cb018c70f3e4e8201
+Top:    a927494883404a78f78c17da5df3f0065d13f8cb
 Author: Sean Hefty <sean.hefty@intel.com>
 Date:   2012-11-09 10:26:38 -0800
 
@@ -112,7 +112,7 @@ index 0a0370e..7135a61 100644
  {
        errno = err;
 diff --git a/src/rsocket.c b/src/rsocket.c
-index a060f66..9996d33 100644
+index a060f66..f35abeb 100644
 --- a/src/rsocket.c
 +++ b/src/rsocket.c
 @@ -47,6 +47,8 @@
@@ -374,12 +374,12 @@ index a060f66..9996d33 100644
 -      void             *target_buffer_list;
 -      volatile struct rs_sge    *target_sgl;
 -      struct rs_iomap  *target_iomap;
-+#define DS_UDP_TAG 0x55555555
+-
 -      uint32_t          rbuf_size;
 -      struct ibv_mr    *rmr;
 -      uint8_t           *rbuf;
--
++#define DS_UDP_TAG 0x55555555
 -      uint32_t          sbuf_size;
 -      struct ibv_mr    *smr;
 -      struct ibv_sge    ssgl[2];
@@ -521,19 +521,43 @@ index a060f66..9996d33 100644
  {
        struct rsocket *rs;
  
-@@ -330,7 +552,11 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs)
+@@ -330,29 +552,39 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs)
        if (!rs)
                return NULL;
  
 +      rs->type = type;
        rs->index = -1;
-+      rs->udp_sock = -1;
-+      rs->epfd = -1;
++      if (type == SOCK_DGRAM) {
++              rs->udp_sock = -1;
++              rs->epfd = -1;
++      }
 +
        if (inherited_rs) {
                rs->sbuf_size = inherited_rs->sbuf_size;
                rs->rbuf_size = inherited_rs->rbuf_size;
-@@ -352,7 +578,7 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs)
+               rs->sq_inline = inherited_rs->sq_inline;
+               rs->sq_size = inherited_rs->sq_size;
+               rs->rq_size = inherited_rs->rq_size;
+-              rs->ctrl_avail = inherited_rs->ctrl_avail;
+-              rs->target_iomap_size = inherited_rs->target_iomap_size;
++              if (type == SOCK_STREAM) {
++                      rs->ctrl_avail = inherited_rs->ctrl_avail;
++                      rs->target_iomap_size = inherited_rs->target_iomap_size;
++              }
+       } else {
+               rs->sbuf_size = def_wmem;
+               rs->rbuf_size = def_mem;
+               rs->sq_inline = def_inline;
+               rs->sq_size = def_sqsize;
+               rs->rq_size = def_rqsize;
+-              rs->ctrl_avail = RS_QP_CTRL_SIZE;
+-              rs->target_iomap_size = def_iomap_size;
++              if (type == SOCK_STREAM) {
++                      rs->ctrl_avail = RS_QP_CTRL_SIZE;
++                      rs->target_iomap_size = def_iomap_size;
++              }
+       }
+       fastlock_init(&rs->slock);
        fastlock_init(&rs->rlock);
        fastlock_init(&rs->cq_lock);
        fastlock_init(&rs->cq_wait_lock);
@@ -542,7 +566,7 @@ index a060f66..9996d33 100644
        dlist_init(&rs->iomap_list);
        dlist_init(&rs->iomap_queue);
        return rs;
-@@ -360,13 +586,27 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs)
+@@ -360,13 +592,27 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs)
  
  static int rs_set_nonblocking(struct rsocket *rs, long arg)
  {
@@ -574,7 +598,7 @@ index a060f66..9996d33 100644
  
        return ret;
  }
-@@ -390,17 +630,39 @@ static void rs_set_qp_size(struct rsocket *rs)
+@@ -390,17 +636,39 @@ static void rs_set_qp_size(struct rsocket *rs)
                rs->rq_size = 2;
  }
  
@@ -616,7 +640,7 @@ index a060f66..9996d33 100644
  
        rs->smr = rdma_reg_msgs(rs->cm_id, rs->sbuf, rs->sbuf_size);
        if (!rs->smr)
-@@ -410,7 +672,7 @@ static int rs_init_bufs(struct rsocket *rs)
+@@ -410,7 +678,7 @@ static int rs_init_bufs(struct rsocket *rs)
              sizeof(*rs->target_iomap) * rs->target_iomap_size;
        rs->target_buffer_list = malloc(len);
        if (!rs->target_buffer_list)
@@ -625,7 +649,7 @@ index a060f66..9996d33 100644
  
        rs->target_mr = rdma_reg_write(rs->cm_id, rs->target_buffer_list, len);
        if (!rs->target_mr)
-@@ -423,7 +685,7 @@ static int rs_init_bufs(struct rsocket *rs)
+@@ -423,7 +691,7 @@ static int rs_init_bufs(struct rsocket *rs)
  
        rs->rbuf = calloc(rs->rbuf_size, sizeof(*rs->rbuf));
        if (!rs->rbuf)
@@ -634,7 +658,7 @@ index a060f66..9996d33 100644
  
        rs->rmr = rdma_reg_write(rs->cm_id, rs->rbuf, rs->rbuf_size);
        if (!rs->rmr)
-@@ -440,15 +702,32 @@ static int rs_init_bufs(struct rsocket *rs)
+@@ -440,15 +708,32 @@ static int rs_init_bufs(struct rsocket *rs)
        return 0;
  }
  
@@ -673,7 +697,7 @@ index a060f66..9996d33 100644
                goto err1;
  
        if (rs->fd_flags & O_NONBLOCK) {
-@@ -456,21 +735,20 @@ static int rs_create_cq(struct rsocket *rs)
+@@ -456,21 +741,20 @@ static int rs_create_cq(struct rsocket *rs)
                        goto err2;
        }
  
@@ -702,7 +726,7 @@ index a060f66..9996d33 100644
  {
        struct ibv_recv_wr wr, *bad;
  
-@@ -482,6 +760,23 @@ rs_post_recv(struct rsocket *rs)
+@@ -482,6 +766,23 @@ rs_post_recv(struct rsocket *rs)
        return rdma_seterrno(ibv_post_recv(rs->cm_id->qp, &wr, &bad));
  }
  
@@ -726,7 +750,7 @@ index a060f66..9996d33 100644
  static int rs_create_ep(struct rsocket *rs)
  {
        struct ibv_qp_init_attr qp_attr;
-@@ -492,7 +787,7 @@ static int rs_create_ep(struct rsocket *rs)
+@@ -492,7 +793,7 @@ static int rs_create_ep(struct rsocket *rs)
        if (ret)
                return ret;
  
@@ -735,7 +759,7 @@ index a060f66..9996d33 100644
        if (ret)
                return ret;
  
-@@ -549,8 +844,74 @@ static void rs_free_iomappings(struct rsocket *rs)
+@@ -549,8 +850,74 @@ static void rs_free_iomappings(struct rsocket *rs)
        }
  }
  
@@ -810,7 +834,7 @@ index a060f66..9996d33 100644
        if (rs->index >= 0)
                rs_remove(rs);
  
-@@ -582,7 +943,7 @@ static void rs_free(struct rsocket *rs)
+@@ -582,7 +949,7 @@ static void rs_free(struct rsocket *rs)
                rdma_destroy_id(rs->cm_id);
        }
  
@@ -819,7 +843,7 @@ index a060f66..9996d33 100644
        fastlock_destroy(&rs->cq_wait_lock);
        fastlock_destroy(&rs->cq_lock);
        fastlock_destroy(&rs->rlock);
-@@ -636,29 +997,54 @@ static void rs_save_conn_data(struct rsocket *rs, struct rs_conn_data *conn)
+@@ -636,29 +1003,54 @@ static void rs_save_conn_data(struct rsocket *rs, struct rs_conn_data *conn)
        rs->sseq_comp = ntohs(conn->credits);
  }
  
@@ -862,7 +886,8 @@ index a060f66..9996d33 100644
 +              ret = rdma_create_id(NULL, &rs->cm_id, rs, RDMA_PS_TCP);
 +              if (ret)
 +                      goto err;
-+
+-      ret = rs_insert(rs);
 +              rs->cm_id->route.addr.src_addr.sa_family = domain;
 +              index = rs->cm_id->channel->fd;
 +      } else {
@@ -872,8 +897,7 @@ index a060f66..9996d33 100644
 +
 +              index = rs->udp_sock;
 +      }
--      ret = rs_insert(rs);
++
 +      ret = rs_insert(rs, index);
        if (ret < 0)
                goto err;
@@ -882,7 +906,7 @@ index a060f66..9996d33 100644
        return rs->index;
  
  err:
-@@ -672,9 +1058,18 @@ int rbind(int socket, const struct sockaddr *addr, socklen_t addrlen)
+@@ -672,9 +1064,18 @@ int rbind(int socket, const struct sockaddr *addr, socklen_t addrlen)
        int ret;
  
        rs = idm_at(&idm, socket);
@@ -904,7 +928,7 @@ index a060f66..9996d33 100644
        return ret;
  }
  
-@@ -710,7 +1105,7 @@ int raccept(int socket, struct sockaddr *addr, socklen_t *addrlen)
+@@ -710,7 +1111,7 @@ int raccept(int socket, struct sockaddr *addr, socklen_t *addrlen)
        int ret;
  
        rs = idm_at(&idm, socket);
@@ -913,7 +937,7 @@ index a060f66..9996d33 100644
        if (!new_rs)
                return ERR(ENOMEM);
  
-@@ -718,7 +1113,7 @@ int raccept(int socket, struct sockaddr *addr, socklen_t *addrlen)
+@@ -718,7 +1119,7 @@ int raccept(int socket, struct sockaddr *addr, socklen_t *addrlen)
        if (ret)
                goto err;
  
@@ -922,7 +946,7 @@ index a060f66..9996d33 100644
        if (ret < 0)
                goto err;
  
-@@ -855,13 +1250,268 @@ connected:
+@@ -855,13 +1256,268 @@ connected:
        return ret;
  }
  
@@ -1193,7 +1217,7 @@ index a060f66..9996d33 100644
  }
  
  static int rs_post_write_msg(struct rsocket *rs,
-@@ -903,6 +1553,24 @@ static int rs_post_write(struct rsocket *rs,
+@@ -903,6 +1559,24 @@ static int rs_post_write(struct rsocket *rs,
        return rdma_seterrno(ibv_post_send(rs->cm_id->qp, &wr, &bad));
  }
  
@@ -1218,7 +1242,7 @@ index a060f66..9996d33 100644
  /*
   * Update target SGE before sending data.  Otherwise the remote side may
   * update the entry before we do.
-@@ -1046,7 +1714,7 @@ static int rs_poll_cq(struct rsocket *rs)
+@@ -1046,7 +1720,7 @@ static int rs_poll_cq(struct rsocket *rs)
                                        rs->state = rs_disconnected;
                                        return 0;
                                } else if (rs_msg_data(imm_data) == RS_CTRL_SHUTDOWN) {
@@ -1227,7 +1251,7 @@ index a060f66..9996d33 100644
                                }
                                break;
                        case RS_OP_WRITE:
-@@ -1133,46 +1801,205 @@ static int rs_get_cq_event(struct rsocket *rs)
+@@ -1133,46 +1807,205 @@ static int rs_get_cq_event(struct rsocket *rs)
   */
  static int rs_process_cq(struct rsocket *rs, int nonblock, int (*test)(struct rsocket *rs))
  {
@@ -1443,7 +1467,7 @@ index a060f66..9996d33 100644
                if (!ret || nonblock || errno != EWOULDBLOCK)
                        return ret;
  
-@@ -1184,7 +2011,7 @@ static int rs_get_comp(struct rsocket *rs, int nonblock, int (*test)(struct rsoc
+@@ -1184,7 +2017,7 @@ static int rs_get_comp(struct rsocket *rs, int nonblock, int (*test)(struct rsoc
                            (e.tv_usec - s.tv_usec) + 1;
        } while (poll_time <= polling_time);
  
@@ -1452,7 +1476,7 @@ index a060f66..9996d33 100644
        return ret;
  }
  
-@@ -1219,9 +2046,19 @@ static int rs_can_send(struct rsocket *rs)
+@@ -1219,9 +2052,19 @@ static int rs_can_send(struct rsocket *rs)
               (rs->target_sgl[rs->target_sge].length != 0);
  }
  
@@ -1473,7 +1497,7 @@ index a060f66..9996d33 100644
  }
  
  static int rs_conn_can_send_ctrl(struct rsocket *rs)
-@@ -1236,7 +2073,7 @@ static int rs_have_rdata(struct rsocket *rs)
+@@ -1236,7 +2079,7 @@ static int rs_have_rdata(struct rsocket *rs)
  
  static int rs_conn_have_rdata(struct rsocket *rs)
  {
@@ -1482,7 +1506,7 @@ index a060f66..9996d33 100644
  }
  
  static int rs_conn_all_sends_done(struct rsocket *rs)
-@@ -1245,6 +2082,66 @@ static int rs_conn_all_sends_done(struct rsocket *rs)
+@@ -1245,6 +2088,66 @@ static int rs_conn_all_sends_done(struct rsocket *rs)
               !(rs->state & rs_connected);
  }
  
@@ -1549,7 +1573,7 @@ index a060f66..9996d33 100644
  static ssize_t rs_peek(struct rsocket *rs, void *buf, size_t len)
  {
        size_t left = len;
-@@ -1290,6 +2187,13 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+@@ -1290,6 +2193,13 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
        int ret;
  
        rs = idm_at(&idm, socket);
@@ -1563,7 +1587,7 @@ index a060f66..9996d33 100644
        if (rs->state & rs_opening) {
                ret = rs_do_connect(rs);
                if (ret) {
-@@ -1339,7 +2243,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+@@ -1339,7 +2249,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
                        rs->rbuf_bytes_avail += rsize;
                }
  
@@ -1572,7 +1596,7 @@ index a060f66..9996d33 100644
  
        fastlock_release(&rs->rlock);
        return ret ? ret : len - left;
-@@ -1348,8 +2252,17 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+@@ -1348,8 +2258,17 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
  ssize_t rrecvfrom(int socket, void *buf, size_t len, int flags,
                  struct sockaddr *src_addr, socklen_t *addrlen)
  {
@@ -1590,7 +1614,7 @@ index a060f66..9996d33 100644
        ret = rrecv(socket, buf, len, flags);
        if (ret > 0 && src_addr)
                rgetpeername(socket, src_addr, addrlen);
-@@ -1391,14 +2304,14 @@ static int rs_send_iomaps(struct rsocket *rs, int flags)
+@@ -1391,14 +2310,14 @@ static int rs_send_iomaps(struct rsocket *rs, int flags)
        struct rs_iomap iom;
        int ret;
  
@@ -1607,7 +1631,7 @@ index a060f66..9996d33 100644
                                ret = ERR(ECONNRESET);
                                break;
                        }
-@@ -1447,10 +2360,90 @@ static int rs_send_iomaps(struct rsocket *rs, int flags)
+@@ -1447,10 +2366,90 @@ static int rs_send_iomaps(struct rsocket *rs, int flags)
        }
  
        rs->iomap_pending = !dlist_empty(&rs->iomap_queue);
@@ -1699,7 +1723,7 @@ index a060f66..9996d33 100644
  /*
   * We overlap sending the data, by posting a small work request immediately,
   * then increasing the size of the send on each iteration.
-@@ -1464,6 +2457,13 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
+@@ -1464,6 +2463,13 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
        int ret = 0;
  
        rs = idm_at(&idm, socket);
@@ -1713,7 +1737,7 @@ index a060f66..9996d33 100644
        if (rs->state & rs_opening) {
                ret = rs_do_connect(rs);
                if (ret) {
-@@ -1485,7 +2485,7 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
+@@ -1485,7 +2491,7 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
                                          rs_conn_can_send);
                        if (ret)
                                break;
@@ -1722,7 +1746,7 @@ index a060f66..9996d33 100644
                                ret = ERR(ECONNRESET);
                                break;
                        }
-@@ -1538,10 +2538,27 @@ out:
+@@ -1538,10 +2544,27 @@ out:
  ssize_t rsendto(int socket, const void *buf, size_t len, int flags,
                const struct sockaddr *dest_addr, socklen_t addrlen)
  {
@@ -1753,7 +1777,7 @@ index a060f66..9996d33 100644
  }
  
  static void rs_copy_iov(void *dst, const struct iovec **iov, size_t *offset, size_t len)
-@@ -1600,7 +2617,7 @@ static ssize_t rsendv(int socket, const struct iovec *iov, int iovcnt, int flags
+@@ -1600,7 +2623,7 @@ static ssize_t rsendv(int socket, const struct iovec *iov, int iovcnt, int flags
                                          rs_conn_can_send);
                        if (ret)
                                break;
@@ -1762,7 +1786,7 @@ index a060f66..9996d33 100644
                                ret = ERR(ECONNRESET);
                                break;
                        }
-@@ -1653,7 +2670,7 @@ ssize_t rsendmsg(int socket, const struct msghdr *msg, int flags)
+@@ -1653,7 +2676,7 @@ ssize_t rsendmsg(int socket, const struct msghdr *msg, int flags)
        if (msg->msg_control && msg->msg_controllen)
                return ERR(ENOTSUP);
  
@@ -1771,7 +1795,7 @@ index a060f66..9996d33 100644
  }
  
  ssize_t rwrite(int socket, const void *buf, size_t count)
-@@ -1690,8 +2707,8 @@ static int rs_poll_rs(struct rsocket *rs, int events,
+@@ -1690,8 +2713,8 @@ static int rs_poll_rs(struct rsocket *rs, int events,
        int ret;
  
  check_cq:
@@ -1782,7 +1806,7 @@ index a060f66..9996d33 100644
                rs_process_cq(rs, nonblock, test);
  
                revents = 0;
-@@ -1707,6 +2724,16 @@ check_cq:
+@@ -1707,6 +2730,16 @@ check_cq:
                }
  
                return revents;
@@ -1799,7 +1823,7 @@ index a060f66..9996d33 100644
        }
  
        if (rs->state == rs_listening) {
-@@ -1766,11 +2793,14 @@ static int rs_poll_arm(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
+@@ -1766,11 +2799,14 @@ static int rs_poll_arm(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
                        if (fds[i].revents)
                                return 1;
  
@@ -1819,7 +1843,7 @@ index a060f66..9996d33 100644
                        rfds[i].events = POLLIN;
                } else {
                        rfds[i].fd = fds[i].fd;
-@@ -1793,7 +2823,10 @@ static int rs_poll_events(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
+@@ -1793,7 +2829,10 @@ static int rs_poll_events(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
  
                rs = idm_lookup(&idm, fds[i].fd);
                if (rs) {
@@ -1831,7 +1855,7 @@ index a060f66..9996d33 100644
                        fds[i].revents = rs_poll_rs(rs, fds[i].events, 1, rs_poll_all);
                } else {
                        fds[i].revents = rfds[i].revents;
-@@ -1949,7 +2982,7 @@ int rshutdown(int socket, int how)
+@@ -1949,7 +2988,7 @@ int rshutdown(int socket, int how)
  
        rs = idm_at(&idm, socket);
        if (how == SHUT_RD) {
@@ -1840,7 +1864,7 @@ index a060f66..9996d33 100644
                return 0;
        }
  
-@@ -1959,10 +2992,10 @@ int rshutdown(int socket, int how)
+@@ -1959,10 +2998,10 @@ int rshutdown(int socket, int how)
        if (rs->state & rs_connected) {
                if (how == SHUT_RDWR) {
                        ctrl = RS_CTRL_DISCONNECT;
@@ -1854,7 +1878,7 @@ index a060f66..9996d33 100644
                                RS_CTRL_SHUTDOWN : RS_CTRL_DISCONNECT;
                }
                if (!rs->ctrl_avail) {
-@@ -1987,13 +3020,29 @@ int rshutdown(int socket, int how)
+@@ -1987,13 +3026,29 @@ int rshutdown(int socket, int how)
        return 0;
  }
  
@@ -1886,7 +1910,7 @@ index a060f66..9996d33 100644
  
        rs_free(rs);
        return 0;
-@@ -2018,8 +3067,12 @@ int rgetpeername(int socket, struct sockaddr *addr, socklen_t *addrlen)
+@@ -2018,8 +3073,12 @@ int rgetpeername(int socket, struct sockaddr *addr, socklen_t *addrlen)
        struct rsocket *rs;
  
        rs = idm_at(&idm, socket);
@@ -1901,7 +1925,7 @@ index a060f66..9996d33 100644
  }
  
  int rgetsockname(int socket, struct sockaddr *addr, socklen_t *addrlen)
-@@ -2027,8 +3080,12 @@ int rgetsockname(int socket, struct sockaddr *addr, socklen_t *addrlen)
+@@ -2027,8 +3086,12 @@ int rgetsockname(int socket, struct sockaddr *addr, socklen_t *addrlen)
        struct rsocket *rs;
  
        rs = idm_at(&idm, socket);
@@ -1916,7 +1940,7 @@ index a060f66..9996d33 100644
  }
  
  int rsetsockopt(int socket, int level, int optname,
-@@ -2040,18 +3097,26 @@ int rsetsockopt(int socket, int level, int optname,
+@@ -2040,18 +3103,26 @@ int rsetsockopt(int socket, int level, int optname,
  
        ret = ERR(ENOTSUP);
        rs = idm_at(&idm, socket);
@@ -1950,7 +1974,7 @@ index a060f66..9996d33 100644
                        opt_on = *(int *) optval;
                        break;
                case SO_RCVBUF:
-@@ -2101,9 +3166,11 @@ int rsetsockopt(int socket, int level, int optname,
+@@ -2101,9 +3172,11 @@ int rsetsockopt(int socket, int level, int optname,
                opts = &rs->ipv6_opts;
                switch (optname) {
                case IPV6_V6ONLY:
@@ -1965,7 +1989,7 @@ index a060f66..9996d33 100644
                        opt_on = *(int *) optval;
                        break;
                default:
-@@ -2315,7 +3382,7 @@ off_t riomap(int socket, void *buf, size_t len, int prot, int flags, off_t offse
+@@ -2315,7 +3388,7 @@ off_t riomap(int socket, void *buf, size_t len, int prot, int flags, off_t offse
        if (!rs->cm_id->pd || (prot & ~(PROT_WRITE | PROT_NONE)))
                return ERR(EINVAL);
  
@@ -1974,7 +1998,7 @@ index a060f66..9996d33 100644
        if (prot & PROT_WRITE) {
                iomr = rs_get_iomap_mr(rs);
                access |= IBV_ACCESS_REMOTE_WRITE;
-@@ -2349,7 +3416,7 @@ off_t riomap(int socket, void *buf, size_t len, int prot, int flags, off_t offse
+@@ -2349,7 +3422,7 @@ off_t riomap(int socket, void *buf, size_t len, int prot, int flags, off_t offse
                dlist_insert_tail(&iomr->entry, &rs->iomap_list);
        }
  out:
@@ -1983,7 +2007,7 @@ index a060f66..9996d33 100644
        return offset;
  }
  
-@@ -2361,7 +3428,7 @@ int riounmap(int socket, void *buf, size_t len)
+@@ -2361,7 +3434,7 @@ int riounmap(int socket, void *buf, size_t len)
        int ret = 0;
  
        rs = idm_at(&idm, socket);
@@ -1992,7 +2016,7 @@ index a060f66..9996d33 100644
  
        for (entry = rs->iomap_list.next; entry != &rs->iomap_list;
             entry = entry->next) {
-@@ -2382,7 +3449,7 @@ int riounmap(int socket, void *buf, size_t len)
+@@ -2382,7 +3455,7 @@ int riounmap(int socket, void *buf, size_t len)
        }
        ret = ERR(EINVAL);
  out:
@@ -2001,7 +2025,7 @@ index a060f66..9996d33 100644
        return ret;
  }
  
-@@ -2426,7 +3493,7 @@ size_t riowrite(int socket, const void *buf, size_t count, off_t offset, int fla
+@@ -2426,7 +3499,7 @@ size_t riowrite(int socket, const void *buf, size_t count, off_t offset, int fla
                                          rs_conn_can_send);
                        if (ret)
                                break;
@@ -2010,7 +2034,7 @@ index a060f66..9996d33 100644
                                ret = ERR(ECONNRESET);
                                break;
                        }
-@@ -2476,3 +3543,269 @@ out:
+@@ -2476,3 +3549,269 @@ out:
  
        return (ret && left == count) ? ret : count - left;
  }
diff --git a/patches/refresh-temp b/patches/refresh-temp
deleted file mode 100644 (file)
index 51cbadd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-Bottom: ae4df7b46b3d1c519383a31cb018c70f3e4e8201
-Top:    a927494883404a78f78c17da5df3f0065d13f8cb
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2012-12-07 17:01:27 -0800
-
-Refresh of dsocket
-
----
-
-diff --git a/src/rsocket.c b/src/rsocket.c
-index 9996d33..f35abeb 100644
---- a/src/rsocket.c
-+++ b/src/rsocket.c
-@@ -554,8 +554,10 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs, int type)
-       rs->type = type;
-       rs->index = -1;
--      rs->udp_sock = -1;
--      rs->epfd = -1;
-+      if (type == SOCK_DGRAM) {
-+              rs->udp_sock = -1;
-+              rs->epfd = -1;
-+      }
-       if (inherited_rs) {
-               rs->sbuf_size = inherited_rs->sbuf_size;
-@@ -563,16 +565,20 @@ static struct rsocket *rs_alloc(struct rsocket *inherited_rs, int type)
-               rs->sq_inline = inherited_rs->sq_inline;
-               rs->sq_size = inherited_rs->sq_size;
-               rs->rq_size = inherited_rs->rq_size;
--              rs->ctrl_avail = inherited_rs->ctrl_avail;
--              rs->target_iomap_size = inherited_rs->target_iomap_size;
-+              if (type == SOCK_STREAM) {
-+                      rs->ctrl_avail = inherited_rs->ctrl_avail;
-+                      rs->target_iomap_size = inherited_rs->target_iomap_size;
-+              }
-       } else {
-               rs->sbuf_size = def_wmem;
-               rs->rbuf_size = def_mem;
-               rs->sq_inline = def_inline;
-               rs->sq_size = def_sqsize;
-               rs->rq_size = def_rqsize;
--              rs->ctrl_avail = RS_QP_CTRL_SIZE;
--              rs->target_iomap_size = def_iomap_size;
-+              if (type == SOCK_STREAM) {
-+                      rs->ctrl_avail = RS_QP_CTRL_SIZE;
-+                      rs->target_iomap_size = def_iomap_size;
-+              }
-       }
-       fastlock_init(&rs->slock);
-       fastlock_init(&rs->rlock);