<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/include/linux/sunrpc, branch v2.6.25.17</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>nfsd: clean up svc_reserve_auth()</title>
<updated>2008-02-10T23:11:16+00:00</updated>
<author>
<name>J. Bruce Fields</name>
<email>bfields@citi.umich.edu</email>
</author>
<published>2008-02-08T04:10:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fbb7878c1a2ee40a1e983bf20f3dd3a80255dcf2'/>
<id>fbb7878c1a2ee40a1e983bf20f3dd3a80255dcf2</id>
<content type='text'>
This is a void function attempting to return the return value from
another void function, which seems harmless but extremely weird, and
apparently makes some compilers complain.

While we're there, clean up a little (e.g. the switch statement had a
minor style problem and seemed overkill as long as there's only one
case).

Thanks to Trond for noticing this.

Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
Cc: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a void function attempting to return the return value from
another void function, which seems harmless but extremely weird, and
apparently makes some compilers complain.

While we're there, clean up a little (e.g. the switch statement had a
minor style problem and seemed overkill as long as there's only one
case).

Thanks to Trond for noticing this.

Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
Cc: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>SUNRPC: spin svc_rqst initialization to its own function</title>
<updated>2008-02-01T21:42:15+00:00</updated>
<author>
<name>Jeff Layton</name>
<email>jlayton@redhat.com</email>
</author>
<published>2008-01-29T15:30:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0113ab34644649aceaac37ef4b7e5c7d5c183be3'/>
<id>0113ab34644649aceaac37ef4b7e5c7d5c183be3</id>
<content type='text'>
Move the initialzation in __svc_create_thread that happens prior to
thread creation to a new function. Export the function to allow
services to have better control over the svc_rqst structs.

Also rearrange the rqstp initialization to prevent NULL pointer
dereferences in svc_exit_thread in case allocations fail.

Signed-off-by: Jeff Layton &lt;jlayton@redhat.com&gt;
Reviewed-by: NeilBrown &lt;neilb@suse.de&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move the initialzation in __svc_create_thread that happens prior to
thread creation to a new function. Export the function to allow
services to have better control over the svc_rqst structs.

Also rearrange the rqstp initialization to prevent NULL pointer
dereferences in svc_exit_thread in case allocations fail.

Signed-off-by: Jeff Layton &lt;jlayton@redhat.com&gt;
Reviewed-by: NeilBrown &lt;neilb@suse.de&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma: SVCRMDA Header File</title>
<updated>2008-02-01T21:42:14+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-12T22:13:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d21b05f101ae732d9bc322f13eea2f59c0aa60f5'/>
<id>d21b05f101ae732d9bc322f13eea2f59c0aa60f5</id>
<content type='text'>
This file defines the data types used by the SVCRDMA transport module.
The principle data structure is the transport specific extension to
the svcxprt structure.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This file defines the data types used by the SVCRDMA transport module.
The principle data structure is the transport specific extension to
the svcxprt structure.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Add svc_xprt_names service to replace svc_sock_names</title>
<updated>2008-02-01T21:42:14+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9571af18fa1e4a431dc6f6023ddbd87d1112fd5d'/>
<id>9571af18fa1e4a431dc6f6023ddbd87d1112fd5d</id>
<content type='text'>
Create a transport independent version of the svc_sock_names function.

The toclose capability of the svc_sock_names service can be implemented
using the svc_xprt_find and svc_xprt_close services.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create a transport independent version of the svc_sock_names function.

The toclose capability of the svc_sock_names service can be implemented
using the svc_xprt_find and svc_xprt_close services.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Add svc API that queries for a transport instance</title>
<updated>2008-02-01T21:42:13+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7fcb98d58cb4d18af6386f71025fc5192f25fbca'/>
<id>7fcb98d58cb4d18af6386f71025fc5192f25fbca</id>
<content type='text'>
Add a new svc function that allows a service to query whether a
transport instance has already been created. This is used in lockd
to determine whether or not a transport needs to be created when
a lockd instance is brought up.

Specifying 0 for the address family or port is effectively a wild-card,
and will result in matching the first transport in the service's list
that has a matching class name.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a new svc function that allows a service to query whether a
transport instance has already been created. This is used in lockd
to determine whether or not a transport needs to be created when
a lockd instance is brought up.

Specifying 0 for the address family or port is effectively a wild-card,
and will result in matching the first transport in the service's list
that has a matching class name.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Add /proc/sys/sunrpc/transport files</title>
<updated>2008-02-01T21:42:13+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=dc9a16e49dbba3dd042e6aec5d9a7929e099a89b'/>
<id>dc9a16e49dbba3dd042e6aec5d9a7929e099a89b</id>
<content type='text'>
Add a file that when read lists the set of registered svc
transports.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a file that when read lists the set of registered svc
transports.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Add transport hdr size for defer/revisit</title>
<updated>2008-02-01T21:42:13+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=260c1d1298f6703d38fdccd3dd5a310766327340'/>
<id>260c1d1298f6703d38fdccd3dd5a310766327340</id>
<content type='text'>
Some transports have a header in front of the RPC header. The current
defer/revisit processing considers only the iov_len and arg_len to
determine how much to back up when saving the original request
to revisit. Add a field to the rqstp structure to save the size
of the transport header so svc_defer can correctly compute
the start of a request.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some transports have a header in front of the RPC header. The current
defer/revisit processing considers only the iov_len and arg_len to
determine how much to back up when saving the original request
to revisit. Add a field to the rqstp structure to save the size
of the transport header so svc_defer can correctly compute
the start of a request.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Move the xprt independent code to the svc_xprt.c file</title>
<updated>2008-02-01T21:42:13+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0f0257eaa5d29b80f6ab2c40ed21aa65bb4527f6'/>
<id>0f0257eaa5d29b80f6ab2c40ed21aa65bb4527f6</id>
<content type='text'>
This functionally trivial patch moves all of the transport independent
functions from the svcsock.c file to the transport independent svc_xprt.c
file.

In addition the following formatting changes were made:
- White space cleanup
- Function signatures on single line
- The inline directive was removed
- Lines over 80 columns were reformatted
- The term 'socket' was changed to 'transport' in comments
- The SMP comment was moved and updated.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This functionally trivial patch moves all of the transport independent
functions from the svcsock.c file to the transport independent svc_xprt.c
file.

In addition the following formatting changes were made:
- White space cleanup
- Function signatures on single line
- The inline directive was removed
- Lines over 80 columns were reformatted
- The term 'socket' was changed to 'transport' in comments
- The SMP comment was moved and updated.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Removing remaining references to rq_sock in rqstp</title>
<updated>2008-02-01T21:42:13+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=57b1d3babaafea1c395c932914e38c2ff9493001'/>
<id>57b1d3babaafea1c395c932914e38c2ff9493001</id>
<content type='text'>
This functionally empty patch removes rq_sock and unamed union
from rqstp structure.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This functionally empty patch removes rq_sock and unamed union
from rqstp structure.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>svc: Move the sockaddr information to svc_xprt</title>
<updated>2008-02-01T21:42:12+00:00</updated>
<author>
<name>Tom Tucker</name>
<email>tom@opengridcomputing.com</email>
</author>
<published>2007-12-31T03:08:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9dbc240f199c16c3c0859c255ad52a663d8ee51d'/>
<id>9dbc240f199c16c3c0859c255ad52a663d8ee51d</id>
<content type='text'>
This patch moves the transport sockaddr to the svc_xprt
structure.  Convenience functions are added to set and
get the local and remote addresses of a transport from
the transport provider as well as determine the length
of a sockaddr.

A transport is responsible for setting the xpt_local
and xpt_remote addresses in the svc_xprt structure as
part of transport creation and xpo_accept processing. This
cannot be done in a generic way and in fact varies
between TCP, UDP and RDMA. A set of xpo_ functions
(e.g. getlocalname, getremotename) could have been
added but this would have resulted in additional
caching and copying of the addresses around.  Note that
the xpt_local address should also be set on listening
endpoints; for TCP/RDMA this is done as part of
endpoint creation.

For connected transports like TCP and RDMA, the addresses
never change and can be set once and copied into the
rqstp structure for each request. For UDP, however, the
local and remote addresses may change for each request. In
this case, the address information is obtained from the
UDP recvmsg info and copied into the rqstp structure from
there.

A svc_xprt_local_port function was also added that returns
the local port given a transport. This is used by
svc_create_xprt when returning the port associated with
a newly created transport, and later when creating a
generic find transport service to check if a service is
already listening on a given port.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch moves the transport sockaddr to the svc_xprt
structure.  Convenience functions are added to set and
get the local and remote addresses of a transport from
the transport provider as well as determine the length
of a sockaddr.

A transport is responsible for setting the xpt_local
and xpt_remote addresses in the svc_xprt structure as
part of transport creation and xpo_accept processing. This
cannot be done in a generic way and in fact varies
between TCP, UDP and RDMA. A set of xpo_ functions
(e.g. getlocalname, getremotename) could have been
added but this would have resulted in additional
caching and copying of the addresses around.  Note that
the xpt_local address should also be set on listening
endpoints; for TCP/RDMA this is done as part of
endpoint creation.

For connected transports like TCP and RDMA, the addresses
never change and can be set once and copied into the
rqstp structure for each request. For UDP, however, the
local and remote addresses may change for each request. In
this case, the address information is obtained from the
UDP recvmsg info and copied into the rqstp structure from
there.

A svc_xprt_local_port function was also added that returns
the local port given a transport. This is used by
svc_create_xprt when returning the port associated with
a newly created transport, and later when creating a
generic find transport service to check if a service is
already listening on a given port.

Signed-off-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Acked-by: Neil Brown &lt;neilb@suse.de&gt;
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Greg Banks &lt;gnb@sgi.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@citi.umich.edu&gt;
</pre>
</div>
</content>
</entry>
</feed>
