<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pm24.git/include/linux/sunrpc, branch v3.4-rc3</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.kobert.dev/pm24.git/atom?h=v3.4-rc3</id>
<link rel='self' href='https://git.kobert.dev/pm24.git/atom?h=v3.4-rc3'/>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/'/>
<updated>2012-03-26T15:48:54Z</updated>
<entry>
<title>Merge nfs containerization work from Trond's tree</title>
<updated>2012-03-26T15:48:54Z</updated>
<author>
<name>J. Bruce Fields</name>
<email>bfields@redhat.com</email>
</author>
<published>2012-03-21T20:42:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=1df00640c9111c881633d9b219f18e66c52599ec'/>
<id>urn:sha1:1df00640c9111c881633d9b219f18e66c52599ec</id>
<content type='text'>
The nfs containerization work is a prerequisite for Jeff Layton's reboot
recovery rework.
</content>
</entry>
<entry>
<title>SUNRPC: Kill compiler warning when RPC_DEBUG is unset</title>
<updated>2012-03-21T13:31:31Z</updated>
<author>
<name>Chuck Lever</name>
<email>chuck.lever@oracle.com</email>
</author>
<published>2012-03-20T23:20:53Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=b3b536a1230a14e3ef97e5331ba7ad036c6258a9'/>
<id>urn:sha1:b3b536a1230a14e3ef97e5331ba7ad036c6258a9</id>
<content type='text'>
Loads of these:

linux/net/sunrpc/rpcb_clnt.c:942:2: warning: suggest braces around
  empty body in ‘do’ statement [-Wempty-body]

show up when I unset CONFIG_PROC_SYSCTL.  Seen with

  gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)

Reported-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC/NFS: Add Kbuild dependencies for NFS_DEBUG/RPC_DEBUG</title>
<updated>2012-03-20T17:08:26Z</updated>
<author>
<name>Trond Myklebust</name>
<email>Trond.Myklebust@netapp.com</email>
</author>
<published>2012-03-18T18:07:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=e27d359e9b7e446190362cd5c8fe281d02194896'/>
<id>urn:sha1:e27d359e9b7e446190362cd5c8fe281d02194896</id>
<content type='text'>
This allows us to turn on/off the dprintk() debugging interfaces for
those distributions that don't ship the 'rpcdebug' utility.
It also allows us to add Kbuild dependencies. Specifically, we already
know that dprintk() in general relies on CONFIG_SYSCTL. Now it turns out
that the NFS dprintks depend on CONFIG_CRC32 after we added support
for the filehandle hash.

Reported-by: Paul Gortmaker &lt;paul.gortmaker@windriver.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Fix a few sparse warnings</title>
<updated>2012-03-11T23:30:02Z</updated>
<author>
<name>Trond Myklebust</name>
<email>Trond.Myklebust@netapp.com</email>
</author>
<published>2012-03-11T19:22:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=09acfea5d8de419ebe84be43b08f7b79c965215f'/>
<id>urn:sha1:09acfea5d8de419ebe84be43b08f7b79c965215f</id>
<content type='text'>
net/sunrpc/svcsock.c:412:22: warning: incorrect type in assignment
(different address spaces)
 - svc_partial_recvfrom now takes a struct kvec, so the variable
   save_iovbase needs to be an ordinary (void *)

Make a bunch of variables in net/sunrpc/xprtsock.c static

Fix a couple of "warning: symbol 'foo' was not declared. Should it be
static?" reports.

Fix a couple of conflicting function declarations.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>svcrdma: silence a Sparse warning</title>
<updated>2012-03-06T23:13:33Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2012-02-21T07:28:04Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=1fa9c4440c151c61eb3309579a85aae22c9adb6d'/>
<id>urn:sha1:1fa9c4440c151c61eb3309579a85aae22c9adb6d</id>
<content type='text'>
Sparse complains that the definition function definition and the
implementation aren't anotated the same way.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Acked-by: Tom Tucker &lt;tom@opengridcomputing.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Add API to acquire source address</title>
<updated>2012-03-02T20:36:53Z</updated>
<author>
<name>Chuck Lever</name>
<email>chuck.lever@oracle.com</email>
</author>
<published>2012-03-01T22:01:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=2e738fdce22f9a7edf20281fd2d768ef9785922e'/>
<id>urn:sha1:2e738fdce22f9a7edf20281fd2d768ef9785922e</id>
<content type='text'>
NFSv4.0 clients must send endpoint information for their callback
service to NFSv4.0 servers during their first contact with a server.
Traditionally on Linux, user space provides the callback endpoint IP
address via the "clientaddr=" mount option.

During an NFSv4 migration event, it is possible that an FSID may be
migrated to a destination server that is accessible via a different
source IP address than the source server was.  The client must update
callback endpoint information on the destination server so that it can
maintain leases and allow delegation.

Without a new "clientaddr=" option from user space, however, the
kernel itself must construct an appropriate IP address for the
callback update.  Provide an API in the RPC client for upper layer
RPC consumers to acquire a source address for a remote.

The mechanism used by the mount.nfs command is copied: set up a
connected UDP socket to the designated remote, then scrape the source
address off the socket.  We are careful to select the correct network
namespace when setting up the temporary UDP socket.

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Move clnt-&gt;cl_server into struct rpc_xprt</title>
<updated>2012-03-02T20:36:41Z</updated>
<author>
<name>Trond Myklebust</name>
<email>Trond.Myklebust@netapp.com</email>
</author>
<published>2012-03-01T22:01:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=4e0038b6b246e4145fc4a53dca61a556d17bc52c'/>
<id>urn:sha1:4e0038b6b246e4145fc4a53dca61a556d17bc52c</id>
<content type='text'>
When the cl_xprt field is updated, the cl_server field will also have
to change.  Since the contents of cl_server follow the remote endpoint
of cl_xprt, just move that field to the rpc_xprt.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
[ cel: simplify check_gss_callback_principal(), whitespace changes ]
[ cel: forward ported to 3.4 ]
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Use RCU to dereference the rpc_clnt.cl_xprt field</title>
<updated>2012-03-02T20:36:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>Trond.Myklebust@netapp.com</email>
</author>
<published>2012-03-01T22:00:56Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=2446ab6070861aba2dd9229463ffbc40016a9f33'/>
<id>urn:sha1:2446ab6070861aba2dd9229463ffbc40016a9f33</id>
<content type='text'>
A migration event will replace the rpc_xprt used by an rpc_clnt.  To
ensure this can be done safely, all references to cl_xprt must now use
a form of rcu_dereference().

Special care is taken with rpc_peeraddr2str(), which returns a pointer
to memory whose lifetime is the same as the rpc_xprt.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
[ cel: fix lockdep splats and layering violations ]
[ cel: forward ported to 3.4 ]
[ cel: remove rpc_max_reqs(), add rpc_net_ns() ]
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: move waitq from RPC pipe to RPC inode</title>
<updated>2012-02-27T18:37:48Z</updated>
<author>
<name>Stanislav Kinsbursky</name>
<email>skinsbursky@parallels.com</email>
</author>
<published>2012-02-27T18:05:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=591ad7feaec5417681b4112f8df52fc43bb7c92e'/>
<id>urn:sha1:591ad7feaec5417681b4112f8df52fc43bb7c92e</id>
<content type='text'>
Currently, wait queue, used for polling of RPC pipe changes from user-space,
is a part of RPC pipe. But the pipe data itself can be released on NFS umount
prior to dentry-inode pair, connected to it (is case of this pair is open by
some process).
This is not a problem for almost all pipe users, because all PipeFS file
operations checks pipe reference prior to using it.
Except evenfd. This thing registers itself with "poll" file operation and thus
has a reference to pipe wait queue. This leads to oopses on destroying eventfd
after NFS umount (like rpc_idmapd do) since not pipe data left to the point
already.
The solution is to wait queue from pipe data to internal RPC inode data. This
looks more logical, because this wiat queue used only for user-space processes,
which already holds inode reference.

Note: upcalls have to get pipe-&gt;dentry prior to dereferecing wait queue to make
sure, that mount point won't disappear from underneath us.

Signed-off-by: Stanislav Kinsbursky &lt;skinsbursky@parallels.com&gt;
Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
</content>
</entry>
<entry>
<title>svcrdma: Cleanup sparse warnings in the svcrdma module</title>
<updated>2012-02-17T23:38:50Z</updated>
<author>
<name>Tom Tucker</name>
<email>tom@ogc.us</email>
</author>
<published>2012-02-15T17:30:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kobert.dev/pm24.git/commit/?id=cec56c8ff5e28f58ff13041dca7853738ae577a1'/>
<id>urn:sha1:cec56c8ff5e28f58ff13041dca7853738ae577a1</id>
<content type='text'>
The svcrdma transport was un-marshalling requests in-place. This resulted
in sparse warnings due to __beXX data containing both NBO and HBO data.

The code has been restructured to do byte-swapping as the header is
parsed instead of when the header is validated immediately after receipt.

Also moved extern declarations for the workqueue and memory pools to the
private header file.

Signed-off-by: Tom Tucker &lt;tom@ogc.us&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
</content>
</entry>
</feed>
