Re: [PATCH] rxrpc: Simplify connect() implementation and simplify sendmsg() op

From: David Miller
Date: Fri Jun 10 2016 - 02:30:32 EST


From: David Howells <dhowells@xxxxxxxxxx>
Date: Thu, 09 Jun 2016 23:02:51 +0100

> Simplify the RxRPC connect() implementation. It will just note the
> destination address it is given, and if a sendmsg() comes along with no
> address, this will be assigned as the address. No transport struct will be
> held internally, which will allow us to remove this later.
>
> Simplify sendmsg() also. Whilst a call is active, userspace refers to it
> by a private unique user ID specified in a control message. When sendmsg()
> sees a user ID that doesn't map to an extant call, it creates a new call
> for that user ID and attempts to add it. If, when we try to add it, the
> user ID is now registered, we now reject the message with -EEXIST. We
> should never see this situation unless two threads are racing, trying to
> create a call with the same ID - which would be an error.
>
> It also isn't required to provide sendmsg() with an address - provided the
> control message data holds a user ID that maps to a currently active call.
>
> Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

Applied to net-next, thanks.