{"action":"created","issue":{"url":"https://api.github.com/repos/accelio/accelio/issues/67","labels_url":"https://api.github.com/repos/accelio/accelio/issues/67/labels{/name}","comments_url":"https://api.github.com/repos/accelio/accelio/issues/67/comments","events_url":"https://api.github.com/repos/accelio/accelio/issues/67/events","html_url":"https://github.com/accelio/accelio/issues/67","id":105806010,"number":67,"title":"tcp and XIO_SGL_TYPE_IOV only support  first iov element","user":{"login":"skypexu","id":8241337,"avatar_url":"https://avatars.githubusercontent.com/u/8241337?v=3","gravatar_id":"","url":"https://api.github.com/users/skypexu","html_url":"https://github.com/skypexu","followers_url":"https://api.github.com/users/skypexu/followers","following_url":"https://api.github.com/users/skypexu/following{/other_user}","gists_url":"https://api.github.com/users/skypexu/gists{/gist_id}","starred_url":"https://api.github.com/users/skypexu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypexu/subscriptions","organizations_url":"https://api.github.com/users/skypexu/orgs","repos_url":"https://api.github.com/users/skypexu/repos","events_url":"https://api.github.com/users/skypexu/events{/privacy}","received_events_url":"https://api.github.com/users/skypexu/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-09-10T13:28:08Z","updated_at":"2015-09-10T14:06:33Z","closed_at":null,"body":"Why does XIO_SGL_TYPE_IOV for tcp transport only support first element in output vector?\r\nI changed hello_word example to send two elements, but xio_server only sees \r\nfirst element in its in vector.\r\n```\r\ndiff --git a/examples/usr/hello_world/xio_client.c b/examples/usr/hello_world/xio_client.c\r\nindex 33934b2..ac52998 100644\r\n--- a/examples/usr/hello_world/xio_client.c\r\n+++ b/examples/usr/hello_world/xio_client.c\r\n@@ -239,7 +239,15 @@ int main(int argc, char *argv[])\r\n \t\t\t  req->out.data_iov.sglist[0].iov_base)\r\n \t\t\t   + 1;\r\n \r\n-\t\treq->out.data_iov.nents = 1;\r\n+\t\treq->out.data_iov.sglist[1].iov_base =\r\n+\t\t\tstrdup(\"hello world data request 2\");\r\n+\r\n+\t\treq->out.data_iov.sglist[1].iov_len =\r\n+\t\t\tstrlen((const char *)\r\n+\t\t\t  req->out.data_iov.sglist[1].iov_base)\r\n+\t\t\t   + 1;\r\n+\r\n+\t\treq->out.data_iov.nents = 2;\r\n \t\treq++;\r\n \t}\r\n \t/* send first message */\r\n==========================\r\n\r\nand xio_server only print first element:\r\n\r\nlibrdmacm: couldn't read ABI version.\r\nlibrdmacm: assuming: 4\r\nCMA: unable to get RDMA device list\r\nlibrdmacm: couldn't read ABI version.\r\nlibrdmacm: assuming: 4\r\nCMA: unable to get RDMA device list\r\n[2015/09/10-21:24:35.577572] xio_rdma_management.c:758    [ERROR] - Failed to get IB devices list\r\n[2015/09/10-21:24:35.577666] xio_rdma_management.c:3289   [ERROR] - Failed to initialize device list\r\nlisten to tcp://127.0.0.1:8008\r\nnew session event. session:0x2321f40\r\nsession event: new connection. session:0x2321f40, connection:0x2322140, reason: Success\r\nmessage header : [4000000] - hello world header request\r\nmessage data: [4000000][0][52] - hello world data request\r\nmessage header : [8000000] - hello world header request\r\nmessage data: [8000000][0][52] - hello world data request\r\nmessage header : [12000000] - hello world header request\r\nmessage data: [12000000][0][52] - hello world data request\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/accelio/accelio/issues/comments/139245218","html_url":"https://github.com/accelio/accelio/issues/67#issuecomment-139245218","issue_url":"https://api.github.com/repos/accelio/accelio/issues/67","id":139245218,"user":{"login":"skypexu","id":8241337,"avatar_url":"https://avatars.githubusercontent.com/u/8241337?v=3","gravatar_id":"","url":"https://api.github.com/users/skypexu","html_url":"https://github.com/skypexu","followers_url":"https://api.github.com/users/skypexu/followers","following_url":"https://api.github.com/users/skypexu/following{/other_user}","gists_url":"https://api.github.com/users/skypexu/gists{/gist_id}","starred_url":"https://api.github.com/users/skypexu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypexu/subscriptions","organizations_url":"https://api.github.com/users/skypexu/orgs","repos_url":"https://api.github.com/users/skypexu/repos","events_url":"https://api.github.com/users/skypexu/events{/privacy}","received_events_url":"https://api.github.com/users/skypexu/received_events","type":"User","site_admin":false},"created_at":"2015-09-10T14:06:33Z","updated_at":"2015-09-10T14:06:33Z","body":"ok, scatter-gather is fine. But I found it prints error messages, this only happens when using two iovec \r\nelements.\r\n\r\n```\r\nmessage: [12000000] - hello world header response\r\nmessage: [12000000] - hello world data response\r\nmessage: [16000000] - hello world header response\r\nmessage: [16000000] - hello world data response\r\nmessage: [20000000] - hello world header response\r\nmessage: [20000000] - hello world data response\r\n[2015/09/10-22:02:31.961348] xio_tcp_datapath.c:882       [ERROR] - not found but removed 64 type:0x4004\r\n[2015/09/10-22:02:31.961465] xio_tcp_datapath.c:882       [ERROR] - not found but removed 64 type:0x12\r\n[2015/09/10-22:02:31.961561] xio_tcp_datapath.c:882       [ERROR] - not found but removed 64 type:0x12\r\nmessage: [24000000] - hello world header response\r\n\r\n```"}}