<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sunrpc/auth_unix.c, branch linux-5.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2022-03-22T19:52:55Z</updated>
<entry>
<title>SUNRPC: Fix unx_lookup_cred() allocation</title>
<updated>2022-03-22T19:52:55Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2022-03-21T21:46:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=059ee82b6462028ebace435bc94f5b082be0632a'/>
<id>urn:sha1:059ee82b6462028ebace435bc94f5b082be0632a</id>
<content type='text'>
Default to the same mempool allocation strategy as for rpc_malloc().

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC/auth: async tasks mustn't block waiting for memory</title>
<updated>2022-03-13T16:59:35Z</updated>
<author>
<name>NeilBrown</name>
</author>
<published>2022-03-06T23:41:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a41b05edfedb939440e83666f23de3ef9af33acf'/>
<id>urn:sha1:a41b05edfedb939440e83666f23de3ef9af33acf</id>
<content type='text'>
When memory is short, new worker threads cannot be created and we depend
on the minimum one rpciod thread to be able to handle everything.  So it
must not block waiting for memory.

mempools are particularly a problem as memory can only be released back
to the mempool by an async rpc task running.  If all available workqueue
threads are waiting on the mempool, no thread is available to return
anything.

lookup_cred() can block on a mempool or kmalloc - and this can cause
deadlocks.  So add a new RPCAUTH_LOOKUP flag for async lookups and don't
block on memory.  If the -ENOMEM gets back to call_refreshresult(), wait
a short while and try again.  HZ&gt;&gt;4 is chosen as it is used elsewhere
for -ENOMEM retries.

Signed-off-by: NeilBrown &lt;neilb@suse.de&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Convert GFP_NOFS to GFP_KERNEL</title>
<updated>2022-02-25T23:50:12Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2022-01-29T17:49:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0adc87940618648b3dcccc819c20068bd6b4ec93'/>
<id>urn:sha1:0adc87940618648b3dcccc819c20068bd6b4ec93</id>
<content type='text'>
The sections which should not re-enter the filesystem are already
protected with memalloc_nofs_save/restore calls, so it is better to use
GFP_KERNEL in these calls to allow better performance for synchronous
RPC calls.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Use the client user namespace when encoding creds</title>
<updated>2019-04-26T20:24:32Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2019-04-24T21:46:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=283ebe3ec4157c5cdc2581ed7e5c3764137f8fe5'/>
<id>urn:sha1:283ebe3ec4157c5cdc2581ed7e5c3764137f8fe5</id>
<content type='text'>
When encoding AUTH_UNIX creds and AUTH_GSS upcalls, use the user namespace
of the process that created the rpc client.

Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
Signed-off-by: Anna Schumaker &lt;Anna.Schumaker@Netapp.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs</title>
<updated>2019-02-25T14:35:49Z</updated>
<author>
<name>Trond Myklebust</name>
</author>
<published>2019-02-25T13:39:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=06b5fc3ad94eebf25d5abc07f84e16b8b33dcf8c'/>
<id>urn:sha1:06b5fc3ad94eebf25d5abc07f84e16b8b33dcf8c</id>
<content type='text'>
NFSoRDMA client updates for 5.1

New features:
- Convert rpc auth layer to use xdr_streams
- Config option to disable insecure enctypes
- Reduce size of RPC receive buffers

Bugfixes and cleanups:
- Fix sparse warnings
- Check inline size before providing a write chunk
- Reduce the receive doorbell rate
- Various tracepoint improvements

[Trond: Fix up merge conflicts]
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: remove pointless test in unx_match()</title>
<updated>2019-02-20T22:33:55Z</updated>
<author>
<name>NeilBrown</name>
</author>
<published>2019-01-07T06:53:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e3735c89985415f4fb509c67963e3d05969fbdb1'/>
<id>urn:sha1:e3735c89985415f4fb509c67963e3d05969fbdb1</id>
<content type='text'>
As reported by Dan Carpenter, this test for acred-&gt;cred being set is
inconsistent with the dereference of the pointer a few lines earlier.

An 'auth_cred' *always* has -&gt;cred set - every place that creates one
initializes this field, often as the first thing done.

So remove this test.

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: NeilBrown &lt;neilb@suse.com&gt;
Signed-off-by: Trond Myklebust &lt;trond.myklebust@hammerspace.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Add rpc_auth::au_ralign field</title>
<updated>2019-02-14T16:48:36Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2019-02-11T16:25:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=35e77d21baa04b554bf3dc9a08dfa7e569286e51'/>
<id>urn:sha1:35e77d21baa04b554bf3dc9a08dfa7e569286e51</id>
<content type='text'>
Currently rpc_inline_rcv_pages() uses au_rslack to estimate the
size of the upper layer reply header. This is fine for auth flavors
where au_verfsize == au_rslack.

However, some auth flavors have more going on. krb5i for example has
two more words after the verifier, and another blob following the
RPC message. The calculation involving au_rslack pushes the upper
layer reply header too far into the rcv_buf.

au_rslack is still valuable: it's the amount of buffer space needed
for the reply, and is used when allocating the reply buffer. We'll
keep that.

But, add a new field that can be used to properly estimate the
location of the upper layer header in each RPC reply, based on the
auth flavor in use.

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Anna Schumaker &lt;Anna.Schumaker@Netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize</title>
<updated>2019-02-14T16:17:47Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2019-02-11T16:25:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a00275baa68e1ee226cc659f54dc3a571f3ad600'/>
<id>urn:sha1:a00275baa68e1ee226cc659f54dc3a571f3ad600</id>
<content type='text'>
au_verfsize will be needed for a non-flavor-specific computation
in a subsequent patch.

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Anna Schumaker &lt;Anna.Schumaker@Netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Use struct xdr_stream when decoding RPC Reply header</title>
<updated>2019-02-14T14:11:18Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2019-02-11T16:24:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a0584ee9aed805446b044ce855e67264f0dc619e'/>
<id>urn:sha1:a0584ee9aed805446b044ce855e67264f0dc619e</id>
<content type='text'>
Modernize and harden the code path that parses an RPC Reply
message.

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Anna Schumaker &lt;Anna.Schumaker@Netapp.com&gt;
</content>
</entry>
<entry>
<title>SUNRPC: Use struct xdr_stream when constructing RPC Call header</title>
<updated>2019-02-13T18:45:17Z</updated>
<author>
<name>Chuck Lever</name>
</author>
<published>2019-02-11T16:24:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e8680a24a269bd6dcb533f4e4a5faba9ae58925c'/>
<id>urn:sha1:e8680a24a269bd6dcb533f4e4a5faba9ae58925c</id>
<content type='text'>
Modernize and harden the code path that constructs each RPC Call
message.

Signed-off-by: Chuck Lever &lt;chuck.lever@oracle.com&gt;
Signed-off-by: Anna Schumaker &lt;Anna.Schumaker@Netapp.com&gt;
</content>
</entry>
</feed>
