From: Paolo Abeni <pabeni@redhat.com>
To: David Howells <dhowells@redhat.com>, netdev@vger.kernel.org
Cc: Marc Dionne <marc.dionne@auristor.com>,
Jakub Kicinski <kuba@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Simon Horman <horms@kernel.org>,
linux-afs@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net v8 00/12] rxrpc: Fix CHALLENGE packet handling
Date: Thu, 27 Aug 2026 15:19:28 +0200 [thread overview]
Message-ID: <a0563aec-0ac2-47da-b03e-2e991a2aeabb@redhat.com> (raw)
In-Reply-To: <20260824091645.415423-1-dhowells@redhat.com>
On 8/24/26 11:16 AM, David Howells wrote:
> Here's a fix for AF_RXRPC's CHALLENGE packet handling, addressing an issue
> raised by Sashiko[1], plus some miscellaneous fixes found in the process of
> fixing this, plus a number of things raised by Sashiko[2-8].
>
> Firstly, the miscellaneous patches:
>
> (1) Fix rxrpc_sendmsg so that it doesn't return an error if it queued the
> last packet of a call. After that point, the error will be returned
> by recvmsg() and returned it twice in two different places may
> complicate userspace cleaning up its own structures.
>
> (2) Fix the use of len vs msg->msg_iter.count in rxrpc_send_data().
>
> (3) Fix error handling in rxrpc_send_data() for if ->secure_packet()
> returns an error.
>
> (4) Fix the update of call->pending in rxrpc_send_data() in paths when the
> call lock has been dropped.
>
> (5) Fix double IRQ enablement in __rxrpc_notify_socket() when called
> indirectly from rxrpc_end_rx_phase().
>
> (6) Fix the generation of notifications from rxrpc after call completion.
>
> And then there are the patches to fix CHALLENGE packet overqueuing and
> simplify RESPONSE packet generation by pre-creating the RxGK application
> data up front and passing it in a user key (thereby allowing userspace to
> partake). This is split into five patches:
>
> (7) Expand the abort trace enum to be larger than a signed char as the
> number of elements will exceed 128.
>
> (8) Add a refcount to the user key payload.
>
> (9) Make the AFS filesystem generate per-server appdata keys.
>
> (10) Pass the appdata from AFS (or userspace) to rxrpc.
>
> (11) Change over to using the appdata key to supply the appdata.
>
> (12) Remove all the OOB stuff.
>
> [!] Note that this entails a significant change in the UAPI for AF_RXRPC,
> with the CMSG types and sockopt to support the OOB queuing being removed
> and replaced with a new single CMSG type that conveys the user key ID. I
> don't think it likely anyone is using this outside of my kafs-utils
> package.
>
> This also involves a change to the user-defined key type, making the
> payload refcounted so that it can be accessed and the length read, then a
> buffer allocated that will hold it and other data, and then the content
> copied. The problem is that the user is perfectly at liberty to change the
> content of a user-defined key (which will RCU-replace the content of the
> key), so the length might change when we drop the RCU read lock in order to
> allocate. This could be got around by locking the key->rwsem sharedly, but
> that might be able to deadlock part of the rxrpc protocol engine if memory
> reclaim occurs.
>
> David
>
> The patches can be found here also:
>
> http://git.kernel.org/cgit/linux/kernel/git/dhowells/linux-fs.git/log/?h=rxrpc-fixes
It looks like some of the comment raised by sashiko are new,
especially on patch 9/12:
https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260812110129.979970-1-dhowells%40redhat.com
Do you think later follow-ups (i.e. in another series) would be ok?
/P
next prev parent reply other threads:[~2026-08-27 13:19 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-24 9:16 [PATCH net v8 00/12] rxrpc: Fix CHALLENGE packet handling David Howells
2026-08-24 9:16 ` [PATCH net v8 01/12] rxrpc: Fix sendmsg to not return an error if last packet queued David Howells
2026-08-24 9:16 ` [PATCH net v8 02/12] rxrpc: Fix sendmsg length David Howells
2026-08-24 9:16 ` [PATCH net v8 03/12] rxrpc: Fix packet encryption error handling David Howells
2026-08-24 9:16 ` [PATCH net v8 04/12] rxrpc: Fix update of call->tx_pending without holding lock David Howells
2026-08-24 9:16 ` [PATCH net v8 05/12] rxrpc: Fix double IRQ enablement David Howells
2026-08-24 9:16 ` [PATCH net v8 06/12] rxrpc: Fix generation of notifications after call completion David Howells
2026-08-24 9:16 ` [PATCH net v8 07/12] rxrpc: Expand abort trace enum David Howells
2026-08-24 9:16 ` [PATCH net v8 08/12] keys: Add refcounting to user-defined key type payload David Howells
2026-08-24 9:16 ` [PATCH net v8 09/12] afs: Create a server appdata key David Howells
2026-08-24 9:16 ` [PATCH net v8 10/12] rxrpc: Pass appdata key to rxrpc_call and thence to rxrpc_bundle David Howells
2026-08-24 9:16 ` [PATCH net v8 11/12] rxrpc: Fix CHALLENGE packet overqueuing and simplify RESPONSE generation David Howells
2026-08-24 9:16 ` [PATCH net v8 12/12] rxrpc: Remove OOB challenge/response code David Howells
2026-08-27 13:19 ` Paolo Abeni [this message]
2026-08-27 20:52 ` [PATCH net v8 00/12] rxrpc: Fix CHALLENGE packet handling David Howells
2026-08-27 22:08 ` David Howells
2026-08-28 7:12 ` David Howells
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a0563aec-0ac2-47da-b03e-2e991a2aeabb@redhat.com \
--to=pabeni@redhat.com \
--cc=davem@davemloft.net \
--cc=dhowells@redhat.com \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-afs@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marc.dionne@auristor.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.