From patchwork Fri May 20 16:45:54 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Howells X-Patchwork-Id: 12856996 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B1D4C433EF for ; Fri, 20 May 2022 16:46:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351800AbiETQqG (ORCPT ); Fri, 20 May 2022 12:46:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51028 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351829AbiETQqB (ORCPT ); Fri, 20 May 2022 12:46:01 -0400 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 339FA25598 for ; Fri, 20 May 2022 09:45:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1653065157; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=37YTECylfYJKjIR6L09Y/2cjGQ9dGSPVwV6PJ3XmXKE=; b=Ailikk4GhhE/QuwsZKa3CHIGoIhauCejPV9aHaPEoYVxWQxDkUg8dZk29qnsABQIm2Y6Ll q0M1m08tnGyRpHkYPUFaFevQAnRzLKfJMOfwEwvy8FIv0IUBxlsr9LpA3iWQhtzhaSBj0a mD5vteKHgvcsSqD1Vv1EHNK7ze/5Dgw= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-673-CJ-uakelPyGYdQRg34zvCA-1; Fri, 20 May 2022 12:45:55 -0400 X-MC-Unique: CJ-uakelPyGYdQRg34zvCA-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 6DA9285A5AA; Fri, 20 May 2022 16:45:55 +0000 (UTC) Received: from warthog.procyon.org.uk (unknown [10.33.36.8]) by smtp.corp.redhat.com (Postfix) with ESMTP id D272EC53360; Fri, 20 May 2022 16:45:54 +0000 (UTC) Subject: [PATCH net-next 0/7] rxrpc: Miscellaneous changes From: David Howells To: netdev@vger.kernel.org Cc: dhowells@redhat.com, linux-afs@lists.infradead.org, linux-kernel@vger.kernel.org Date: Fri, 20 May 2022 17:45:54 +0100 Message-ID: <165306515409.34989.4713077338482294594.stgit@warthog.procyon.org.uk> User-Agent: StGit/1.4 MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.8 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org X-Patchwork-Delegate: kuba@kernel.org Here are some miscellaneous changes for AF_RXRPC: (1) Allow the list of local endpoints to be viewed through /proc. (2) Switch to using refcount_t for refcounting. (3) Fix a locking issue found by lockdep. (4) Autogenerate tracing symbol enums from symbol->string maps to make it easier to keep them in sync. (5) Return an error to sendmsg() if a call it tried to set up failed. Because it failed at this point, no notification will be generated for recvmsg to pick up - but userspace still needs to know about the failure. (6) Fix the selection of abort codes generated by internal events. In particular, rxrpc and kafs shouldn't be generating RX_USER_ABORT unless it's because userspace did something to cancel a call. (7) Adjust the interpretation and handling of certain ACK types to try and detect NAT changes causing a call to seem to start mid-flow from a different peer. The patches are tagged here: git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git rxrpc-next-20220520 and can also be found on the following branch: http://git.kernel.org/cgit/linux/kernel/git/dhowells/linux-fs.git/log/?h=rxrpc-next Tested-by: kafs-testing+fedora34_64checkkafs-build-493@auristor.com David --- David Howells (7): rxrpc: Allow list of in-use local UDP endpoints to be viewed in /proc rxrpc: Use refcount_t rather than atomic_t rxrpc: Fix locking issue rxrpc: Automatically generate trace tag enums rxrpc: Return an error to sendmsg if call failed rxrpc, afs: Fix selection of abort codes afs: Adjust ACK interpretation to try and cope with NAT fs/afs/misc.c | 5 +- fs/afs/rotate.c | 4 + fs/afs/rxrpc.c | 8 +- fs/afs/write.c | 1 + fs/seq_file.c | 32 +++++ include/linux/list.h | 10 ++ include/linux/seq_file.h | 4 + include/trace/events/rxrpc.h | 263 ++++++----------------------------- net/rxrpc/af_rxrpc.c | 2 +- net/rxrpc/ar-internal.h | 25 ++-- net/rxrpc/call_accept.c | 10 +- net/rxrpc/call_event.c | 4 +- net/rxrpc/call_object.c | 62 +++++---- net/rxrpc/conn_client.c | 30 ++-- net/rxrpc/conn_object.c | 51 +++---- net/rxrpc/conn_service.c | 8 +- net/rxrpc/input.c | 31 ++++- net/rxrpc/local_object.c | 68 ++++----- net/rxrpc/net_ns.c | 7 +- net/rxrpc/peer_object.c | 40 +++--- net/rxrpc/proc.c | 85 +++++++++-- net/rxrpc/sendmsg.c | 6 + net/rxrpc/skbuff.c | 1 - 23 files changed, 366 insertions(+), 391 deletions(-)