<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/nfs/filelayout/filelayoutdev.c, branch linux-4.4.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-01-19T19:17:22Z</updated>
<entry>
<title>NFSv4.1: nfs4_fl_prepare_ds must be careful about reporting success.</title>
<updated>2017-01-19T19:17:22Z</updated>
<author>
<name>NeilBrown</name>
</author>
<published>2016-12-19T00:19:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=33ebdfe913fd6dd3dc8522a6ab4bb5719df5efde'/>
<id>urn:sha1:33ebdfe913fd6dd3dc8522a6ab4bb5719df5efde</id>
<content type='text'>
commit cfd278c280f997cf2fe4662e0acab0fe465f637b upstream.

Various places assume that if nfs4_fl_prepare_ds() turns a non-NULL 'ds',
then ds-&gt;ds_clp will also be non-NULL.

This is not necessasrily true in the case when the process received a fatal signal
while nfs4_pnfs_ds_connect is waiting in nfs4_wait_ds_connect().
In that case -&gt;ds_clp may not be set, and the devid may not recently have been marked
unavailable.

So add a test for ds_clp == NULL and return NULL in that case.

Fixes: c23266d532b4 ("NFS4.1 Fix data server connection race")
Signed-off-by: NeilBrown &lt;neilb@suse.com&gt;
Acked-by: Olga Kornievskaia &lt;aglo@umich.edu&gt;
Acked-by: Adamson, Andy &lt;William.Adamson@netapp.com&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>NFSv4.1: Convert pNFS deviceid to use kfree_rcu()</title>
<updated>2015-03-27T16:32:24Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2015-03-09T19:23:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=84a80f62f71beac20a426709c04b49f2bd352291'/>
<id>urn:sha1:84a80f62f71beac20a426709c04b49f2bd352291</id>
<content type='text'>
Use of synchronize_rcu() when unmounting and potentially freeing a lot
of deviceids is problematic. There really is no reason why we can't just
use kfree_rcu() here.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs41: allow LD to choose DS connection version/minor_version</title>
<updated>2015-02-03T19:06:34Z</updated>
<author>
<name>Peng Tao</name>
</author>
<published>2014-05-30T10:15:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=30626f9c32f0ad5e2c4173f10fb4b1358bbba6ec'/>
<id>urn:sha1:30626f9c32f0ad5e2c4173f10fb4b1358bbba6ec</id>
<content type='text'>
flexfile layout may need to set such when making DS connections.

Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;Thomas.Haynes@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs41: allow LD to choose DS connection auth flavor</title>
<updated>2015-02-03T19:06:33Z</updated>
<author>
<name>Peng Tao</name>
</author>
<published>2014-05-29T13:07:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=064172f3459a914277aa309b2afd3bd5d1c3289a'/>
<id>urn:sha1:064172f3459a914277aa309b2afd3bd5d1c3289a</id>
<content type='text'>
flexfile layout may use different auth flavor as specified by MDS.

Reviewed-by: Jeff Layton &lt;jlayton@primarydata.com&gt;
Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;Thomas.Haynes@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs41: pull nfs4_ds_connect from file layout to generic pnfs</title>
<updated>2015-02-03T19:06:32Z</updated>
<author>
<name>Peng Tao</name>
</author>
<published>2014-05-29T13:06:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7405f9e195aab95e147cc225f203d11fa74b65a8'/>
<id>urn:sha1:7405f9e195aab95e147cc225f203d11fa74b65a8</id>
<content type='text'>
It can be reused by flexfiles layout client.

Reviewed-by: Jeff Layton &lt;jlayton@primarydata.com&gt;
Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;Thomas.Haynes@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs41: pull decode_ds_addr from file layout to generic pnfs</title>
<updated>2015-02-03T19:06:32Z</updated>
<author>
<name>Peng Tao</name>
</author>
<published>2014-05-29T13:06:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6b7f3cf96364eaf597940cb5c68a682894829915'/>
<id>urn:sha1:6b7f3cf96364eaf597940cb5c68a682894829915</id>
<content type='text'>
It can be reused by flexfile layout.

Reviewed-by: Jeff Layton &lt;jlayton@primarydata.com&gt;
Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;Thomas.Haynes@primarydata.com&gt;
</content>
</entry>
<entry>
<title>nfs41: pull data server cache from file layout to generic pnfs</title>
<updated>2015-02-03T19:06:32Z</updated>
<author>
<name>Peng Tao</name>
</author>
<published>2014-05-29T13:06:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=875ae0694be48f3e3bdddd435b79abf52b680299'/>
<id>urn:sha1:875ae0694be48f3e3bdddd435b79abf52b680299</id>
<content type='text'>
Also pull nfs4_pnfs_ds_addr and nfs4_pnfs_ds to generic pnfs.

They can all be reused by flexfile layout as well.

Reviewed-by: Jeff Layton &lt;jlayton@primarydata.com&gt;
Signed-off-by: Peng Tao &lt;tao.peng@primarydata.com&gt;
Signed-off-by: Tom Haynes &lt;Thomas.Haynes@primarydata.com&gt;
</content>
</entry>
<entry>
<title>pnfs: Prepare for flexfiles by pulling out common code</title>
<updated>2015-02-03T19:06:31Z</updated>
<author>
<name>Tom Haynes</name>
</author>
<published>2014-12-11T20:34:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f54bcf2ecee982da47c2baf8bd87fd9ad9984651'/>
<id>urn:sha1:f54bcf2ecee982da47c2baf8bd87fd9ad9984651</id>
<content type='text'>
The flexfilelayout driver will share some common code
with the filelayout driver. This set of changes refactors
that common code out to avoid any module depenencies.

Signed-off-by: Tom Haynes &lt;loghyr@primarydata.com&gt;
</content>
</entry>
<entry>
<title>NFS: Deletion of unnecessary checks before the function call "nfs_put_client"</title>
<updated>2014-11-25T01:07:27Z</updated>
<author>
<name>Markus Elfring</name>
</author>
<published>2014-11-18T12:23:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fe0bf1185ddf7e9d193cfe397ed1414d91526e19'/>
<id>urn:sha1:fe0bf1185ddf7e9d193cfe397ed1414d91526e19</id>
<content type='text'>
The nfs_put_client() function tests whether its argument is NULL and then
returns immediately. Thus the test around the call is not needed.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring &lt;elfring@users.sourceforge.net&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
</content>
</entry>
<entry>
<title>pnfs: factor GETDEVICEINFO implementations</title>
<updated>2014-09-10T19:47:03Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2014-09-03T04:27:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=661373b13d0490ff410a2133d4a7a117f2dd037e'/>
<id>urn:sha1:661373b13d0490ff410a2133d4a7a117f2dd037e</id>
<content type='text'>
Add support to the common pNFS core to issue GETDEVICEINFO calls on
a device ID cache miss.  The code is taken from the well debugged
file layout implementation and calls out to the layoutdriver through
a new alloc_deviceid_node method.  The calling conventions for
nfs4_find_get_deviceid are changed so that all information needed to
send a GETDEVICEINFO request is passed to the common code.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@primarydata.com&gt;
</content>
</entry>
</feed>
