<feed xmlns='http://www.w3.org/2005/Atom'>
<title>talos-obmc-linux/include/linux/sunrpc/xprt.h, branch v5.0</title>
<subtitle>Talos™ II Linux sources for OpenBMC</subtitle>
<id>https://git.raptorcs.com/git/talos-obmc-linux/atom?h=v5.0</id>
<link rel='self' href='https://git.raptorcs.com/git/talos-obmc-linux/atom?h=v5.0'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/'/>
<updated>2018-12-28T02:01:41+00:00</updated>
<entry>
<title>sunrpc: remove unused bc_up operation from rpc_xprt_ops</title>
<updated>2018-12-28T02:01:41+00:00</updated>
<author>
<name>Vasily Averin</name>
<email>vvs@virtuozzo.com</email>
</author>
<published>2018-12-24T11:45:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=4aa5cffefa6f8af8f16490df58b8f0d827911b58'/>
<id>urn:sha1:4aa5cffefa6f8af8f16490df58b8f0d827911b58</id>
<content type='text'>
Signed-off-by: Vasily Averin &lt;vvs@virtuozzo.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Add a bvec array to struct xdr_buf for use with iovec_iter()</title>
<updated>2018-09-30T19:35:16+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-13T16:22:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=9d96acbc7f376dc1ffcedca0c349dd3389187a38'/>
<id>urn:sha1:9d96acbc7f376dc1ffcedca0c349dd3389187a38</id>
<content type='text'>
Add a bvec array to struct xdr_buf, and have the client allocate it
when we need to receive data into pages.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Convert xprt receive queue to use an rbtree</title>
<updated>2018-09-30T19:35:16+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-07T12:35:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=95f7691daa57bbd68caac2bdad79e0b08f4d46c1'/>
<id>urn:sha1:95f7691daa57bbd68caac2bdad79e0b08f4d46c1</id>
<content type='text'>
If the server is slow, we can find ourselves with quite a lot of entries
on the receive queue. Converting the search from an O(n) to O(log(n))
can make a significant difference, particularly since we have to hold
a number of locks while searching.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Cleanup: remove the unused 'task' argument from the request_send()</title>
<updated>2018-09-30T19:35:16+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-04T03:58:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=adfa71446dd0943ba376eff3e05c7c89582f8038'/>
<id>urn:sha1:adfa71446dd0943ba376eff3e05c7c89582f8038</id>
<content type='text'>
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Clean up transport write space handling</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-04T03:39:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=c544577daddb618c7dd5fa7fb98d6a41782f020e'/>
<id>urn:sha1:c544577daddb618c7dd5fa7fb98d6a41782f020e</id>
<content type='text'>
Treat socket write space handling in the same way we now treat transport
congestion: by denying the XPRT_LOCK until the transport signals that it
has free buffer space.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Turn off throttling of RPC slots for TCP sockets</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-03T22:41:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=36bd7de949f41d586ef7794169af75462b67acbc'/>
<id>urn:sha1:36bd7de949f41d586ef7794169af75462b67acbc</id>
<content type='text'>
The theory was that we would need to grab the socket lock anyway, so we
might as well use it to gate the allocation of RPC slots for a TCP
socket.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Support for congestion control when queuing is enabled</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-03T21:37:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=75891f502f5fc70f52a01af5b924384ed4866907'/>
<id>urn:sha1:75891f502f5fc70f52a01af5b924384ed4866907</id>
<content type='text'>
Both RDMA and UDP transports require the request to get a "congestion control"
credit before they can be transmitted. Right now, this is done when
the request locks the socket. We'd like it to happen when a request attempts
to be transmitted for the first time.
In order to support retransmission of requests that already hold such
credits, we also want to ensure that they get queued first, so that we
don't deadlock with requests that have yet to obtain a credit.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Improve latency for interactive tasks</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-09-09T15:37:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=918f3c1fe83c5baa4892b943d3f5ac7191d8fb74'/>
<id>urn:sha1:918f3c1fe83c5baa4892b943d3f5ac7191d8fb74</id>
<content type='text'>
One of the intentions with the priority queues was to ensure that no
single process can hog the transport. The field task-&gt;tk_owner therefore
identifies the RPC call's origin, and is intended to allow the RPC layer
to organise queues for fairness.
This commit therefore modifies the transmit queue to group requests
by task-&gt;tk_owner, and ensures that we round robin among those groups.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Treat the task and request as separate in the xprt_ops-&gt;send_request()</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-08-30T17:27:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=50f484e298218b7271fad8a23bd44c82fb3110e1'/>
<id>urn:sha1:50f484e298218b7271fad8a23bd44c82fb3110e1</id>
<content type='text'>
When we shift to using the transmit queue, then the task that holds the
write lock will not necessarily be the same as the one being transmitted.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Refactor RPC call encoding</title>
<updated>2018-09-30T19:35:15+00:00</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2018-08-24T20:28:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-obmc-linux/commit/?id=762e4e67b356ab7b8fbfc39bc07dc6110121505e'/>
<id>urn:sha1:762e4e67b356ab7b8fbfc39bc07dc6110121505e</id>
<content type='text'>
Move the call encoding so that it occurs before the transport connection
etc.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
</feed>
