<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-linux/fs/nfs/flexfilelayout/flexfilelayout.h, branch jd/unified-crypt-queue</title>
<subtitle>WireGuard for the Linux kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-linux/atom/fs/nfs/flexfilelayout/flexfilelayout.h?h=jd%2Funified-crypt-queue</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-linux/atom/fs/nfs/flexfilelayout/flexfilelayout.h?h=jd%2Funified-crypt-queue'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/'/>
<updated>2020-03-26T14:52:04Z</updated>
<entry>
<title>pNFS/flexfiles: Simplify allocation of the mirror array</title>
<updated>2020-03-26T14:52:04Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2020-03-19T14:13:05Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=329651b1f1965cdc0a66df5717d3ac2fccddc740'/>
<id>urn:sha1:329651b1f1965cdc0a66df5717d3ac2fccddc740</id>
<content type='text'>
Just allocate the array at the end of the layout segment structure,
instead of allocating it as a separate array of pointers.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid()</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-28T15:49:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=4cbc8a571c24133a8b645c62188205908ef2ea83'/>
<id>urn:sha1:4cbc8a571c24133a8b645c62188205908ef2ea83</id>
<content type='text'>
Pass in a pointer to the mirror rather than forcing another
array access.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfile: Simplify nfs4_ff_layout_ds_version()</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-28T15:44:15Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=626d48b12cde3ae9740e1da16fc9c1d6d7bbed14'/>
<id>urn:sha1:626d48b12cde3ae9740e1da16fc9c1d6d7bbed14</id>
<content type='text'>
Pass in a pointer to the mirror rather than forcing another
array access.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: Simplify ff_layout_get_ds_cred()</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-28T15:41:57Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=312cd4cb126a7936ad25306d14209fa6fd00f30a'/>
<id>urn:sha1:312cd4cb126a7936ad25306d14209fa6fd00f30a</id>
<content type='text'>
Pass in a pointer to the mirror rather than forcing another
array access.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client()</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-28T15:38:41Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=561d6f8aaffcc9d346e452361a6d80cb8461799d'/>
<id>urn:sha1:561d6f8aaffcc9d346e452361a6d80cb8461799d</id>
<content type='text'>
Pass in a pointer to the mirror rather than forcing another
array access.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh()</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-28T15:34:13Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=749da527b3e7bff92cc76b907bc222ef2df6fcdc'/>
<id>urn:sha1:749da527b3e7bff92cc76b907bc222ef2df6fcdc</id>
<content type='text'>
Pass in a pointer to the mirror rather than having to retrieve it from
the array and then verify the resulting pointer.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive</title>
<updated>2019-03-02T03:37:38Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-26T18:52:50Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=17aaec816751d77e443dee66d11d9e6ac00ac95c'/>
<id>urn:sha1:17aaec816751d77e443dee66d11d9e6ac00ac95c</id>
<content type='text'>
If the DS is unresponsive, we want to just mark it as such, while
reporting the errors. If the server later returns the same deviceid
in a new layout, then we don't want to have to look it up again.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds()</title>
<updated>2019-03-02T03:37:37Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-14T18:45:45Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=2444ff277a686d743b5479dd52d8357c21d5ce13'/>
<id>urn:sha1:2444ff277a686d743b5479dd52d8357c21d5ce13</id>
<content type='text'>
While we may want to skip attempting to connect to a downed mirror
when we're deciding which mirror to select for a read, we do not
want to do so once we've committed to attempting the I/O in
ff_layout_read/write_pagelist(), or ff_layout_initiate_commit()

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads</title>
<updated>2019-03-02T03:37:37Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-11T03:38:43Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=f0922a6c0cdb928d21c2599f9671206237e7e505'/>
<id>urn:sha1:f0922a6c0cdb928d21c2599f9671206237e7e505</id>
<content type='text'>
When a read to the preferred mirror returns an error, the flexfiles
driver records the error in the inode list and currently marks the
layout for return before failing over the attempted read to the next
mirror.
What we actually want to do is fire off a LAYOUTERROR to notify the
MDS that there is an issue with the preferred mirror, then we fail
over. Only once we've failed to read from all mirrors should we
return the layout.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE()</title>
<updated>2019-03-01T21:20:16Z</updated>
<author>
<name>Trond Myklebust</name>
<email>trond.myklebust@hammerspace.com</email>
</author>
<published>2019-02-26T16:19:46Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-linux/commit/?id=108bb4afd351d65826648a47f11fa3104e250d9b'/>
<id>urn:sha1:108bb4afd351d65826648a47f11fa3104e250d9b</id>
<content type='text'>
If the attempt to instantiate the mirror's layout DS pointer failed,
then that pointer may hold a value of type ERR_PTR(), so we need
to check that before we dereference it.

Fixes: 65990d1afbd2d ("pNFS/flexfiles: Fix a deadlock on LAYOUTGET")
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
</feed>
