<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/nfsd, branch linux-5.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-07-20T14:02:21Z</updated>
<entry>
<title>nfsd: Reduce contention for the nfsd_file nf_rwsem</title>
<updated>2021-07-20T14:02:21Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2021-06-17T23:26:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d1f295ac1e99b2666c4b7bd77aa7133a9a673898'/>
<id>urn:sha1:d1f295ac1e99b2666c4b7bd77aa7133a9a673898</id>
<content type='text'>
[ Upstream commit 474bc334698df98ce07c890f1898c7e7f389b0c7 ]

When flushing out the unstable file writes as part of a COMMIT call, try
to perform most of of the data writes and waits outside the semaphore.

This means that if the client is sending the COMMIT as part of a memory
reclaim operation, then it can continue performing I/O, with contention
for the lock occurring only once the data sync is finished.

Fixes: 5011af4c698a ("nfsd: Fix stable writes")
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
 Tested-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>NFSD: Fix TP_printk() format specifier in nfsd_clid_class</title>
<updated>2021-07-20T14:02:17Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2021-05-14T19:55:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d6a70c3c429093191e47269c875d1338c2dcab6'/>
<id>urn:sha1:8d6a70c3c429093191e47269c875d1338c2dcab6</id>
<content type='text'>
[ Upstream commit a948b1142cae66785521a389cab2cce74069b547 ]

Since commit 9a6944fee68e ("tracing: Add a verifier to check string
pointers for trace events"), which was merged in v5.13-rc1,
TP_printk() no longer tacitly supports the "%.*s" format specifier.

These are low value tracepoints, so just remove them.

Reported-by: David Wysochanski &lt;dwysocha@redhat.com&gt;
Fixes: dd5e3fbc1f47 ("NFSD: Add tracepoints to the NFSD state management code")
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>nfsd: ensure new clients break delegations</title>
<updated>2021-05-19T08:56:25Z</updated>
<author>
<name>J. Bruce Fields</name>
</author>
<published>2021-04-16T18:00:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=15f103a1ca301a059d1e9ea7f54134bcdfa9a425'/>
<id>urn:sha1:15f103a1ca301a059d1e9ea7f54134bcdfa9a425</id>
<content type='text'>
[ Upstream commit 217fd6f625af591e2866bebb8cda778cf85bea2e ]

If nfsd already has an open file that it plans to use for IO from
another, it may not need to do another vfs open, but it still may need
to break any delegations in case the existing opens are for another
client.

Symptoms are that we may incorrectly fail to break a delegation on a
write open from a different client, when the delegation-holding client
already has a write open.

Fixes: 28df3d1539de ("nfsd: clients don't need to break their own delegations")
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>NFSv4.2: fix copy stateid copying for the async copy</title>
<updated>2021-05-14T08:52:24Z</updated>
<author>
<name>Olga Kornievskaia</name>
</author>
<published>2021-03-30T19:03:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8b37c99d66b45e1828e6ca46d3a2f6a4265169d0'/>
<id>urn:sha1:8b37c99d66b45e1828e6ca46d3a2f6a4265169d0</id>
<content type='text'>
[ Upstream commit e739b12042b6b079a397a3c234f96c09d1de0b40 ]

This patch fixes Dan Carpenter's report that the static checker
found a problem where memcpy() was copying into too small of a buffer.

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Fixes: e0639dc5805a ("NFSD introduce async copy feature")
Signed-off-by: Olga Kornievskaia &lt;kolga@netapp.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Reviewed-by: Dai Ngo &lt;dai.ngo@oracle.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>NFSD: fix error handling in NFSv4.0 callbacks</title>
<updated>2021-03-11T15:58:49Z</updated>
<author>
<name>Olga Kornievskaia</name>
</author>
<published>2021-03-11T15:55:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b4250dd868d1b42c0a65de11ef3afbee67ba5d2f'/>
<id>urn:sha1:b4250dd868d1b42c0a65de11ef3afbee67ba5d2f</id>
<content type='text'>
When the server tries to do a callback and a client fails it due to
authentication problems, we need the server to set callback down
flag in RENEW so that client can recover.

Suggested-by: Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Olga Kornievskaia &lt;kolga@netapp.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Tested-by: Benjamin Coddington &lt;bcodding@redhat.com&gt;
Link: https://lore.kernel.org/linux-nfs/FB84E90A-1A03-48B3-8BF7-D9D10AC2C9FE@oracle.com/T/#t
</content>
</entry>
<entry>
<title>NFSD: fix dest to src mount in inter-server COPY</title>
<updated>2021-03-09T18:26:59Z</updated>
<author>
<name>Olga Kornievskaia</name>
</author>
<published>2021-03-09T14:41:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=614c9750173e412663728215152cc6d12bcb3425'/>
<id>urn:sha1:614c9750173e412663728215152cc6d12bcb3425</id>
<content type='text'>
A cleanup of the inter SSC copy needs to call fput() of the source
file handle to make sure that file structure is freed as well as
drop the reference on the superblock to unmount the source server.

Fixes: 36e1e5ba90fb ("NFSD: Fix use-after-free warning when doing inter-server copy")
Signed-off-by: Olga Kornievskaia &lt;kolga@netapp.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Tested-by: Dai Ngo &lt;dai.ngo@oracle.com&gt;
</content>
</entry>
<entry>
<title>Revert "nfsd4: a client's own opens needn't prevent delegations"</title>
<updated>2021-03-09T15:37:34Z</updated>
<author>
<name>J. Bruce Fields</name>
</author>
<published>2021-03-08T15:52:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6ee65a773096ab3f39d9b00311ac983be5bdeb7c'/>
<id>urn:sha1:6ee65a773096ab3f39d9b00311ac983be5bdeb7c</id>
<content type='text'>
This reverts commit 94415b06eb8aed13481646026dc995f04a3a534a.

That commit claimed to allow a client to get a read delegation when it
was the only writer.  Actually it allowed a client to get a read
delegation when *any* client has a write open!

The main problem is that it's depending on nfs4_clnt_odstate structures
that are actually only maintained for pnfs exports.

This causes clients to miss writes performed by other clients, even when
there have been intervening closes and opens, violating close-to-open
cache consistency.

We can do this a different way, but first we should just revert this.

I've added pynfs 4.1 test DELEG19 to test for this, as I should have
done originally!

Cc: stable@vger.kernel.org
Reported-by: Timo Rothenpieler &lt;timo@rothenpieler.org&gt;
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
</content>
</entry>
<entry>
<title>Revert "nfsd4: remove check_conflicting_opens warning"</title>
<updated>2021-03-09T15:37:34Z</updated>
<author>
<name>J. Bruce Fields</name>
</author>
<published>2021-03-08T15:51:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4aa5e002034f0701c3335379fd6c22d7f3338cce'/>
<id>urn:sha1:4aa5e002034f0701c3335379fd6c22d7f3338cce</id>
<content type='text'>
This reverts commit 50747dd5e47b "nfsd4: remove check_conflicting_opens
warning", as a prerequisite for reverting 94415b06eb8a, which has a
serious bug.

Cc: stable@vger.kernel.org
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
</content>
</entry>
<entry>
<title>nfsd: don't abort copies early</title>
<updated>2021-03-06T21:41:48Z</updated>
<author>
<name>J. Bruce Fields</name>
</author>
<published>2021-02-24T18:39:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bfdd89f232aa2de5a4b3fc985cba894148b830a8'/>
<id>urn:sha1:bfdd89f232aa2de5a4b3fc985cba894148b830a8</id>
<content type='text'>
The typical result of the backwards comparison here is that the source
server in a server-to-server copy will return BAD_STATEID within a few
seconds of the copy starting, instead of giving the copy a full lease
period, so the copy_file_range() call will end up unnecessarily
returning a short read.

Fixes: 624322f1adc5 "NFSD add COPY_NOTIFY operation"
Signed-off-by: J. Bruce Fields &lt;bfields@redhat.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
</content>
</entry>
<entry>
<title>fs: nfsd: fix kconfig dependency warning for NFSD_V4</title>
<updated>2021-03-06T21:41:48Z</updated>
<author>
<name>Julian Braha</name>
</author>
<published>2021-02-19T21:56:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7005227369079963d25fb2d5d736d0feb2c44cf6'/>
<id>urn:sha1:7005227369079963d25fb2d5d736d0feb2c44cf6</id>
<content type='text'>
When NFSD_V4 is enabled and CRYPTO is disabled,
Kbuild gives the following warning:

WARNING: unmet direct dependencies detected for CRYPTO_SHA256
  Depends on [n]: CRYPTO [=n]
  Selected by [y]:
  - NFSD_V4 [=y] &amp;&amp; NETWORK_FILESYSTEMS [=y] &amp;&amp; NFSD [=y] &amp;&amp; PROC_FS [=y]

WARNING: unmet direct dependencies detected for CRYPTO_MD5
  Depends on [n]: CRYPTO [=n]
  Selected by [y]:
  - NFSD_V4 [=y] &amp;&amp; NETWORK_FILESYSTEMS [=y] &amp;&amp; NFSD [=y] &amp;&amp; PROC_FS [=y]

This is because NFSD_V4 selects CRYPTO_MD5 and CRYPTO_SHA256,
without depending on or selecting CRYPTO, despite those config options
being subordinate to CRYPTO.

Signed-off-by: Julian Braha &lt;julianbraha@gmail.com&gt;
Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
</content>
</entry>
</feed>
