From nobody Tue Jun 30 11:09:41 2026 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 42C85C433EF for ; Wed, 19 Jan 2022 07:53:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352210AbiASHxJ (ORCPT ); Wed, 19 Jan 2022 02:53:09 -0500 Received: from smtp-relay-internal-0.canonical.com ([185.125.188.122]:38478 "EHLO smtp-relay-internal-0.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352159AbiASHxH (ORCPT ); Wed, 19 Jan 2022 02:53:07 -0500 Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 1D4623F313 for ; Wed, 19 Jan 2022 07:53:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578786; bh=5w/EAxi3BWNa4bEEDcXXXFqwUZVzXL/jpIlNMT11cAw=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=OSpdxSV//4TUVCUjNrLDf3cDGIXeu+DXjAGJv8zQKBJKGS1Bf0Ko8WQhQKBqn/x1Z r3KSdBAvyL2vLSkknnIRHqb+YJ9ONX+1xKKyf1l+5bUUcesKeiFIfVzGedROqA/2pX bDINgAaNkDr9kCzRm2sTmR7JCJxiYytoMZIBuwgKXlEiILYKk0QwJX5cimOwV/g+DL XTtx8rtloKtqMDXpRc04BL4cIlB6kzfiFHWHWahRQj1fWWUu/dy6nPWXLpbRrpmUd8 7HlrAyahEutkcPfYar+a6zJiG5Yh04+iiu3qlK60FyRbqwElxwJFQhq03ExoXyqh1A orBk+Bwt/e+MA== Received: by mail-ed1-f69.google.com with SMTP id o10-20020a056402438a00b00403212b6b1aso1464857edc.13 for ; Tue, 18 Jan 2022 23:53:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=5w/EAxi3BWNa4bEEDcXXXFqwUZVzXL/jpIlNMT11cAw=; b=yJ0VX4td4epx6BWNNaHRg0vfghKD3SP+rVUrk/lKjnZEbMjoIr+cf9fLQrM/cBVPDt T3SAyErnmcplN04tQ2f8mh9n3JpzR1hV4WPg2i0NLDtdL0FtMkkp/soaKNKE82QI+ED8 yOKjsuTUgTKNkipgErSP3ry4lX0rmr2my5Nc5MdTZlNjlUCzCvkNQEdVEYNrB1oroGPK VOxlbVMilOckZS+qcekiJt+5vqItUQaL3vY1UQIuX3wa4LuYjglHHNTX/mV+TU5PA78R UWnLpxsUXIiJJ1dprLbei2+tG187ndrX16gv+r/4fs0Bn9qTILAXrp4vj/qNgaVQQw0u ft8A== X-Gm-Message-State: AOAM530CfzRtP1lmz2JAZtYGM3EdsK7I9zuzGGwf9SDlrGRDBID+otYK bNSBmVyqf9Jfwpr7hAHSA8oZe8ZPaQwCZp2YGmxheDC+XjJZyzKDnd+z9ZTFCGlZrZmzWvAWis3 vdoqCDBestD3U0hZEJUUdFr3JXTYenRFd/oBbtBwLAQ== X-Received: by 2002:a05:6402:4244:: with SMTP id g4mr6483612edb.271.1642578785495; Tue, 18 Jan 2022 23:53:05 -0800 (PST) X-Google-Smtp-Source: ABdhPJxYUDYe5Iu0UOqAPwEgNesa55/g4cd+jnk3TlZFlICHhPfLFfLvKw8cfJ2BVa1of970eRb/Ng== X-Received: by 2002:a05:6402:4244:: with SMTP id g4mr6483602edb.271.1642578785369; Tue, 18 Jan 2022 23:53:05 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:04 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 1/6] nfc: llcp: nullify llcp_sock->dev on connect() error paths Date: Wed, 19 Jan 2022 08:52:56 +0100 Message-Id: <20220119075301.7346-2-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Nullify the llcp_sock->dev on llcp_sock_connect() error paths, symmetrically to the code llcp_sock_bind(). The non-NULL value of llcp_sock->dev is used in a few places to check whether the socket is still valid. There was no particular issue observed with missing NULL assignment in connect() error path, however a similar case - in the bind() error path - was triggereable. That one was fixed in commit 4ac06a1e013c ("nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect"), so the change here seems logical as well. Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp_sock.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/nfc/llcp_sock.c b/net/nfc/llcp_sock.c index 6cfd30fc0798..d951d4f0c87f 100644 --- a/net/nfc/llcp_sock.c +++ b/net/nfc/llcp_sock.c @@ -764,6 +764,7 @@ static int llcp_sock_connect(struct socket *sock, struc= t sockaddr *_addr, llcp_sock->local =3D NULL; =20 put_dev: + llcp_sock->dev =3D NULL; nfc_put_device(dev); =20 error: --=20 2.32.0 From nobody Tue Jun 30 11:09:41 2026 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 E0E64C433EF for ; Wed, 19 Jan 2022 07:53:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352181AbiASHxM (ORCPT ); Wed, 19 Jan 2022 02:53:12 -0500 Received: from smtp-relay-internal-1.canonical.com ([185.125.188.123]:55286 "EHLO smtp-relay-internal-1.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239507AbiASHxI (ORCPT ); Wed, 19 Jan 2022 02:53:08 -0500 Received: from mail-ed1-f69.google.com (mail-ed1-f69.google.com [209.85.208.69]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id D89583F1C9 for ; Wed, 19 Jan 2022 07:53:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578786; bh=hsf4OWBu8gj1asXGvoAW6jPDrjEeTDLfH6tpVV1berI=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=GSCtUKGASfbtRPDVyA0rTmThe+PRyvirX6vXY5JhIv28katS3/EgnYRHgglCJ02Bx z4BF9oY5I9BzsIEEG6tx7HuE1CoHOAjfaA6gWcvFdjRouK3VT+uvcWgQJwY36v4LwT TUjoETmqj18QspSSo4YYsP/TmQ+Mj/0nGf0oUGyUsD2a2Dh+cXRbK5PEA44wLoB0s6 AcorzZcZCdNjP7YtzaNW+uu/Gm6UrkxgfOGxlpm/G5HRjHfcDR/LUhRS0/bfd/DNsN LSLU9tnEVobjpyhSgR7C4i2brOemkDSuy9waimICV8lq7azEb1Rk0VpkuaMHmrf+iF hkzRREogM1h7A== Received: by mail-ed1-f69.google.com with SMTP id h21-20020aa7c955000000b0040390b2bfc5so1470616edt.15 for ; Tue, 18 Jan 2022 23:53:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hsf4OWBu8gj1asXGvoAW6jPDrjEeTDLfH6tpVV1berI=; b=1wCirI97p4MSuddY/85hcve7pqHkolSlZfBe98G7jNr8IGLyRZPfWaHM8qFz1JFZ2c cYqDz5Em/QylVOBHuRUo++Vtkhvtod6TqeEUcsejWrPXD09fVzpmXGBCUtaobQ0BSvql DQtUwg4NLKGPZMUH6FYnLxxmB+Szarxz9fx2dClfwzK6t3NymrU+RB0QJoOF2N0/lDLh xAp8lwZ9JZvtsQmKAoWQBnW/H/X200PcskxzabMyDXoYEyzOBmXZsWj6LB8e2oYt/gbS qi9Bbj0vn/TQhbBKR+rNlzn/rPUMX8SZn0EPEXlHz6qTjWcOWiuuVp01hCNGQwG++205 qUfA== X-Gm-Message-State: AOAM530Oq5kBCl6kiATuoe3nIC7dffko434pC/WDTtPgmIsAIeV83ehh FqeppVtTQNV82GkW02z+uvKFoAGowujGXdKtGoH9CTJyVI9eTqAk8LzDna85feM6AE6O57ZXTC/ I6qsuRwp6OP/u93bjXxTKJSVFJaPIzR26Z5xNAHxnVw== X-Received: by 2002:a05:6402:11c9:: with SMTP id j9mr28608487edw.385.1642578786590; Tue, 18 Jan 2022 23:53:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJyns4WRsOdrGoSiLkUgMsRyEIUWZN7UKVXPDT+SQgr4x790RZ4Ep5Cqmw1oA9YvBvJZNQYpwg== X-Received: by 2002:a05:6402:11c9:: with SMTP id j9mr28608483edw.385.1642578786471; Tue, 18 Jan 2022 23:53:06 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:06 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/6] nfc: llcp: simplify llcp_sock_connect() error paths Date: Wed, 19 Jan 2022 08:52:57 +0100 Message-Id: <20220119075301.7346-3-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The llcp_sock_connect() error paths were using a mixed way of central exit (goto) and cleanup Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp_sock.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/nfc/llcp_sock.c b/net/nfc/llcp_sock.c index d951d4f0c87f..a1b245b399f8 100644 --- a/net/nfc/llcp_sock.c +++ b/net/nfc/llcp_sock.c @@ -712,10 +712,8 @@ static int llcp_sock_connect(struct socket *sock, stru= ct sockaddr *_addr, llcp_sock->local =3D nfc_llcp_local_get(local); llcp_sock->ssap =3D nfc_llcp_get_local_ssap(local); if (llcp_sock->ssap =3D=3D LLCP_SAP_MAX) { - nfc_llcp_local_put(llcp_sock->local); - llcp_sock->local =3D NULL; ret =3D -ENOMEM; - goto put_dev; + goto sock_llcp_put_local; } =20 llcp_sock->reserved_ssap =3D llcp_sock->ssap; @@ -760,11 +758,13 @@ static int llcp_sock_connect(struct socket *sock, str= uct sockaddr *_addr, =20 sock_llcp_release: nfc_llcp_put_ssap(local, llcp_sock->ssap); + +sock_llcp_put_local: nfc_llcp_local_put(llcp_sock->local); llcp_sock->local =3D NULL; + llcp_sock->dev =3D NULL; =20 put_dev: - llcp_sock->dev =3D NULL; nfc_put_device(dev); =20 error: --=20 2.32.0 From nobody Tue Jun 30 11:09:41 2026 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 1072FC4332F for ; Wed, 19 Jan 2022 07:53:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352237AbiASHxO (ORCPT ); Wed, 19 Jan 2022 02:53:14 -0500 Received: from smtp-relay-internal-1.canonical.com ([185.125.188.123]:55292 "EHLO smtp-relay-internal-1.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352192AbiASHxJ (ORCPT ); Wed, 19 Jan 2022 02:53:09 -0500 Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id EEB5A40515 for ; Wed, 19 Jan 2022 07:53:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578787; bh=OSgZIsl6KSiVLFhGjCsmJG0C27mMplYwxlAMHo9H3Hk=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=K8R4oEEUAG56UHxcaB7aVa7foTauihQB1qgzuXFsA2TU+FgJIJ8oiE1q9zMPeIoNF 65fthwD/kpgjqAmWD92aZf2tQFBOKvKLydMtw8PaabhFz1Kjtu88zAui4eE79DO/3n il7KRZ/+loFJTicc1ga7H4Wp44aI8JsGRjl5VrxemeITTOoMCssI/StNv0+hk5v+ST ze/g65EpMIYKnK/LDIAtupICDnjWCynMxrHssFm48/bGea1Hh8xFBajE8MHv/4NyJx TcJSGGxD91Ycg3rzHkq6tF8oY4l+1nkG55W14oCuXSAPHuQ6MFwniqFDt8RKBj1OFQ E7/pR40NQsVWA== Received: by mail-ed1-f71.google.com with SMTP id z6-20020a50eb46000000b00403a7687b5bso1500981edp.3 for ; Tue, 18 Jan 2022 23:53:07 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=OSgZIsl6KSiVLFhGjCsmJG0C27mMplYwxlAMHo9H3Hk=; b=5FUxZrvwhy0YCZikddCzwhn/JqH4+5IbIuRPNezUyo3YeRPysTH4IWA4zS5CaS9Ynr l7UVIejiCO32BO8uL5uPFXHXs8g70s/8nmJNuwy+qQmO783EqBI7h5Wnd3Jys1lG/40f n2nbFnEOQBVOWB2SYYMOEVCyscR9q+oH0c0jlROHoSsZjeMseTtz/WZ4xuooFzyb58It CvSsGDy5eqioQDiXmBaCCyw5jnl21s0O8Xf6lPh/+DgnhGGOyTqzEkkwJidGCGTwtKhx Kgwa567rCFEmCG973i+QueuVB6GO6pCA/0f/fvGdWT68gfzTAm7769ZP9ZJ09iE8wRFv LpVQ== X-Gm-Message-State: AOAM533O72qNAUTvmHaQDgY8v6FIiGzxeb2biBk2XbZkgoJWlJHhJ3cg l3unpkwlsBepmR8pISnYOy2LCZDQ9+ZyiPrmizZdHF/5TP5vIZBOeXKkZvURcXIHP1wvLuJ9dJt 4zZ15BqRFhAkRhw9oD48SqjNEcK2iylteLbAT738Jng== X-Received: by 2002:a05:6402:3591:: with SMTP id y17mr29760632edc.386.1642578787481; Tue, 18 Jan 2022 23:53:07 -0800 (PST) X-Google-Smtp-Source: ABdhPJx9+Xw3bqoaTUBpvw/QShf3ZRnJ6GIKmG4TS+FJXRB9XTPyk9rcHOG6g0FjU5rSXoXNUEWc/Q== X-Received: by 2002:a05:6402:3591:: with SMTP id y17mr29760621edc.386.1642578787366; Tue, 18 Jan 2022 23:53:07 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:06 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 3/6] nfc: llcp: use centralized exiting of bind on errors Date: Wed, 19 Jan 2022 08:52:58 +0100 Message-Id: <20220119075301.7346-4-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Coding style encourages centralized exiting of functions, so rewrite llcp_sock_bind() error paths to use such pattern. This reduces the duplicated cleanup code, make success path visually shorter and also cleans up the errors in proper order (in reversed way from initialization). No functional impact expected. Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp_sock.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/net/nfc/llcp_sock.c b/net/nfc/llcp_sock.c index a1b245b399f8..60985d1834a5 100644 --- a/net/nfc/llcp_sock.c +++ b/net/nfc/llcp_sock.c @@ -108,21 +108,13 @@ static int llcp_sock_bind(struct socket *sock, struct= sockaddr *addr, int alen) llcp_sock->service_name_len, GFP_KERNEL); if (!llcp_sock->service_name) { - nfc_llcp_local_put(llcp_sock->local); - llcp_sock->local =3D NULL; - llcp_sock->dev =3D NULL; ret =3D -ENOMEM; - goto put_dev; + goto sock_llcp_put_local; } llcp_sock->ssap =3D nfc_llcp_get_sdp_ssap(local, llcp_sock); if (llcp_sock->ssap =3D=3D LLCP_SAP_MAX) { - nfc_llcp_local_put(llcp_sock->local); - llcp_sock->local =3D NULL; - kfree(llcp_sock->service_name); - llcp_sock->service_name =3D NULL; - llcp_sock->dev =3D NULL; ret =3D -EADDRINUSE; - goto put_dev; + goto free_service_name; } =20 llcp_sock->reserved_ssap =3D llcp_sock->ssap; @@ -132,6 +124,19 @@ static int llcp_sock_bind(struct socket *sock, struct = sockaddr *addr, int alen) pr_debug("Socket bound to SAP %d\n", llcp_sock->ssap); =20 sk->sk_state =3D LLCP_BOUND; + nfc_put_device(dev); + release_sock(sk); + + return 0; + +free_service_name: + kfree(llcp_sock->service_name); + llcp_sock->service_name =3D NULL; + +sock_llcp_put_local: + nfc_llcp_local_put(llcp_sock->local); + llcp_sock->local =3D NULL; + llcp_sock->dev =3D NULL; =20 put_dev: nfc_put_device(dev); --=20 2.32.0 From nobody Tue Jun 30 11:09:41 2026 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 E87F0C433FE for ; Wed, 19 Jan 2022 07:53:19 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352274AbiASHxS (ORCPT ); Wed, 19 Jan 2022 02:53:18 -0500 Received: from smtp-relay-internal-0.canonical.com ([185.125.188.122]:38526 "EHLO smtp-relay-internal-0.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352208AbiASHxK (ORCPT ); Wed, 19 Jan 2022 02:53:10 -0500 Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 14DE33F1E9 for ; Wed, 19 Jan 2022 07:53:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578789; bh=15HOmnObJXsVXxZJ5x/3DtxcDfRhMgZoa5zrHrITnNA=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=AO2MQZdS/ppyjRLhXPH2h3JnRmw5ykCYePVs7I+pVqdPVu0yr1PNzXUmvWuVbq1zJ Hnfb20O2MdWAGTK387bJP/b27WNPOXWtnnPiME+5fOQLn9qzHDrWd7j1JcD/hPL/U9 pVNMqTr9JFY+6pMIryTXjiy0QJ/jAO9iZ/izoreKJKuetPxuzYomLlDcbvYnvfahTu MVKCjuDRjVi4zvGitkwHC6u/9EIW9ZuPuZ2JI+i/R3c2uNPAh5DwBVOMxDN0CBdYri BH/OwsME1A/JBO8u1MHjW6Qg+73/dyS3S+ABbRZA7Wae5LsAovXDnCdCs8G9eOxZOs mKPfnun1HAmEg== Received: by mail-ed1-f72.google.com with SMTP id z6-20020a50eb46000000b00403a7687b5bso1501035edp.3 for ; Tue, 18 Jan 2022 23:53:09 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=15HOmnObJXsVXxZJ5x/3DtxcDfRhMgZoa5zrHrITnNA=; b=uymi8fn72SNV7vjJIsMYGg24/unHQHLWqqSZCzlOUxfoE580cmeJQEbH7VlKafE2sw ZD1nO/kHCgQGW0QouwHlRe9zSmiyCpmQ4hisomjJDt2loTFlTGZsVKgcUePNEvmi3H4n 9gD5R1lMrTCX3C3Ij7nyCxYTmVxl9q8fOiPyPP27gEcmI7WocpVW1ipJxY+/AMhsuBl6 HJ/VlDdqRGfUSuz6b7Ydm7LDHqMl5WtGgj6NWXo38gdL1FDlry+QxqdKDAZIiELCzW0f iRLHzsI6u2qDDjMjTjI0sj6lxfmyf6k3edaroAHAXPd/TwwQdQyP3Nu+NYm/SLSh90ys q4/Q== X-Gm-Message-State: AOAM531SkTwXj5AlWMDQfqlU9axHo5inXRrebkC9+ihvxN1ec7sI6Z0P MIgHiHtbQiXji6HXlxj9pVXfG1i74eF+4+n0SU3vZM+j1HIgjYwH+3+HE/IZuIl2qiOejxb5Qhg qAzBh8Pt3X3cUvvzpOShMGCEdFhkoBTXQBVRF1C38cQ== X-Received: by 2002:a17:906:314f:: with SMTP id e15mr24089113eje.658.1642578788655; Tue, 18 Jan 2022 23:53:08 -0800 (PST) X-Google-Smtp-Source: ABdhPJyvebYbkc+sDSvj+IhZAZlbGMQ8r2BM5qm9B1lRUqpsvTkhNAMQvZayhml1fBn9wG0q6LpOgQ== X-Received: by 2002:a17:906:314f:: with SMTP id e15mr24089106eje.658.1642578788503; Tue, 18 Jan 2022 23:53:08 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:08 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 4/6] nfc: llcp: use test_bit() Date: Wed, 19 Jan 2022 08:52:59 +0100 Message-Id: <20220119075301.7346-5-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Use test_bit() instead of open-coding it, just like in other places touching the bitmap. Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/nfc/llcp_core.c b/net/nfc/llcp_core.c index 5ad5157aa9c5..b70d5042bf74 100644 --- a/net/nfc/llcp_core.c +++ b/net/nfc/llcp_core.c @@ -383,7 +383,7 @@ u8 nfc_llcp_get_sdp_ssap(struct nfc_llcp_local *local, pr_debug("WKS %d\n", ssap); =20 /* This is a WKS, let's check if it's free */ - if (local->local_wks & BIT(ssap)) { + if (test_bit(ssap, &local->local_wks)) { mutex_unlock(&local->sdp_lock); =20 return LLCP_SAP_MAX; --=20 2.32.0 From nobody Tue Jun 30 11:09:41 2026 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 B2C41C433EF for ; Wed, 19 Jan 2022 07:53:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352233AbiASHx0 (ORCPT ); Wed, 19 Jan 2022 02:53:26 -0500 Received: from smtp-relay-internal-1.canonical.com ([185.125.188.123]:55308 "EHLO smtp-relay-internal-1.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352214AbiASHxL (ORCPT ); Wed, 19 Jan 2022 02:53:11 -0500 Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id 66BAE40028 for ; Wed, 19 Jan 2022 07:53:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578790; bh=RM6CEuGCpivOsBpPPs3hkt8u1ijpOzgu/V3oCSO4jiM=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=i5640jDJPxzSuiGDI4gVndNP6EUe++3auAwl/g0RpCSNuJIeoAud63AVIJPy5Vnvy rah3DL8Ahb5Pt7BTxMVsmo6B9m7jMYF/yCMg/oOFs+jvSelTKXTBOPnWmMsyMx6Ruf zdqt/MqmqaRq90CS0Ix6CAzXZN/poo1o1y+6ab6UrWKpywTr8gWldsVQX+NlgXq0iw 85quq8fPSdOZIXhlzHxsYyEcuhG+ms6St5wYTJHxZaCD2YSo/dCRmM7Nq97zVdYCEN sfDqD/oYk8RP5k4tysbbDqVbFcAiAZv/nL/PyXIpgTykYIXvrlhdHGaEUQaB1Y84UH JePBQLS7RYNog== Received: by mail-ed1-f70.google.com with SMTP id c8-20020a05640227c800b003fdc1684cdeso1483893ede.12 for ; Tue, 18 Jan 2022 23:53:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=RM6CEuGCpivOsBpPPs3hkt8u1ijpOzgu/V3oCSO4jiM=; b=RKQ9sktHSLR/fXOSkMVyBPqZKph6d9ltGHiuoB5Pk5JNNjDLctKa5y8SmEFNQwaQxY txFNshVTlIWI/pEoM8ZfFyNBK6iV/xf30xn1M61zT4ck4lWuwP5kZFuxplepngP1bRkP AIozopdBjDmCFewBYJPQdL9za4zDgV9On14YADZbw5vf2s05zw/C2K9fHUzWZ404TakX 2/31EMvMi3qUF5oerl2LcmBDCRkrea3IyyuYlt+J3t0SQegRWX50UMNa0sGMRMwLEPV+ lHnKzt+UAwzsz+NwHHAT2SG7OeophGS8Ewv7UjHaTzpbXRV0yA30/FSdxByAumbFJdXK qtNA== X-Gm-Message-State: AOAM5301tr4WgVA7A/LL7sGMAhpKsgRwd0TAUSzeZLOQmdfD4cBAS90V Bamk16PdSK8DHTKqopWnV+DJrALGs1WK8lOF5HSTEj5kMYUw4GV23wEfiLKO13O2h+nTDxeBl3n hvs2RhWLEOLLYZqI3JEBFrsMj1RYnpW/jvBGwpspX0w== X-Received: by 2002:a17:907:e93:: with SMTP id ho19mr11025874ejc.168.1642578789631; Tue, 18 Jan 2022 23:53:09 -0800 (PST) X-Google-Smtp-Source: ABdhPJzJEcV3S0JFKK4d5B6hmyTEOPZMdJTa8RrL6S17NZ6W29g8Vt3dq4Dv7WMzhmOsFjUA/eVO+g== X-Received: by 2002:a17:907:e93:: with SMTP id ho19mr11025863ejc.168.1642578789450; Tue, 18 Jan 2022 23:53:09 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:08 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 5/6] nfc: llcp: protect nfc_llcp_sock_unlink() calls Date: Wed, 19 Jan 2022 08:53:00 +0100 Message-Id: <20220119075301.7346-6-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" nfc_llcp_sock_link() is called in all paths (bind/connect) as a last action, still protected with lock_sock(). When cleaning up in llcp_sock_release(), call nfc_llcp_sock_unlink() in a mirrored way: earlier and still under the lock_sock(). Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp_sock.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/net/nfc/llcp_sock.c b/net/nfc/llcp_sock.c index 60985d1834a5..2d4cdce88a54 100644 --- a/net/nfc/llcp_sock.c +++ b/net/nfc/llcp_sock.c @@ -631,6 +631,11 @@ static int llcp_sock_release(struct socket *sock) } } =20 + if (sock->type =3D=3D SOCK_RAW) + nfc_llcp_sock_unlink(&local->raw_sockets, sk); + else + nfc_llcp_sock_unlink(&local->sockets, sk); + if (llcp_sock->reserved_ssap < LLCP_SAP_MAX) nfc_llcp_put_ssap(llcp_sock->local, llcp_sock->ssap); =20 @@ -643,11 +648,6 @@ static int llcp_sock_release(struct socket *sock) if (sk->sk_state =3D=3D LLCP_DISCONNECTING) return err; =20 - if (sock->type =3D=3D SOCK_RAW) - nfc_llcp_sock_unlink(&local->raw_sockets, sk); - else - nfc_llcp_sock_unlink(&local->sockets, sk); - out: sock_orphan(sk); sock_put(sk); --=20 2.32.0 From nobody Tue Jun 30 11:09:41 2026 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 88792C433F5 for ; Wed, 19 Jan 2022 07:53:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352270AbiASHxW (ORCPT ); Wed, 19 Jan 2022 02:53:22 -0500 Received: from smtp-relay-internal-0.canonical.com ([185.125.188.122]:38550 "EHLO smtp-relay-internal-0.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1352224AbiASHxM (ORCPT ); Wed, 19 Jan 2022 02:53:12 -0500 Received: from mail-ed1-f70.google.com (mail-ed1-f70.google.com [209.85.208.70]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id E79A23F323 for ; Wed, 19 Jan 2022 07:53:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1642578790; bh=x/F9VAvKkrKoejYalm8chWtX9s0cqmjTeJU4WHXRJwU=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=JKpb4944cZlA4PYTH9/LWoHrEnXq1EUmhagnDfq0P3t6XKPMFE0XwEUm/9G2V+Jbc Rfp0X5zN+mFXBOPWGNgIpQ+LkaW2+oprsLMBPAfiYqpppxqDPEEiQ4FgQbDhbBwnbE X6vsiF3aulCy2pN+sBjEPVFFlf4RLkZ1XB2XQvG1BVNcKxw+xw+iKm19an1r7XiIXS l+JDJ5K1nSpWN1zue5xS1zb7haGd4bgte/hXU3q3is883ZmW84EOmLNuVaA3IKwgJA SeYSwsClxWoxsTfjIrI/mtZ+kf2GXhy/BK4BgWFGtGvanr21hqlb49BmZiVGHqc7NW 58YoVC+Qd2WYw== Received: by mail-ed1-f70.google.com with SMTP id a18-20020aa7d752000000b00403d18712beso1465997eds.17 for ; Tue, 18 Jan 2022 23:53:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=x/F9VAvKkrKoejYalm8chWtX9s0cqmjTeJU4WHXRJwU=; b=VDEz5DRU4HsvvMtXQiQswqWFSu20muvzwoDt/RixsDaRbMjzRaX6/1frjVKtPR+tcO IMMeMo9u4WFouUCxm+ph0mOgVIWsrjqHqiW1ywZwUrZLVcHJOgr26axjK9e6TQY+he94 KQSaxVxGXbLp/Sw28dtWCL8k34ux2KF0H8qT4yOHLOagpwvBPXZwh2jSYC62fo63VgoS U3GzKl95oyyrxskKbVpvz3MDdwNc5epbGbV8wzGiuBtBVN8kjAN2escqqrBEcYJiLviN wvkbLDVHZsLOO/IX4qwy6PCkphsjj2bWB9wiQeBW5IgjowxkaDSVez+Gug1wEQ1biSAX Am2A== X-Gm-Message-State: AOAM533J0PuR1XrWWB6iEszGqycsi+IiM/KZ1tWHjYcrJznzuhPmsomV 7UU68IPLbR5V83ldTaHS+R53YMBJ+eNT51F9y9wOsBQIIxlCBBEv3ZtHYydyl/ffgFqRLXDjZlv aEDyJ7gsC+/P4ygU79/OFRn7swDpR5Ugg+tJd2p9WWQ== X-Received: by 2002:a17:907:1c11:: with SMTP id nc17mr23091258ejc.513.1642578790594; Tue, 18 Jan 2022 23:53:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJwLf3PxsIJN+w6STqoYgFU25Yxbhg0DD3ySt4Ezlf7rmSa4y3Co29oIvpjwl5lROKrswnJnbA== X-Received: by 2002:a17:907:1c11:: with SMTP id nc17mr23091253ejc.513.1642578790409; Tue, 18 Jan 2022 23:53:10 -0800 (PST) Received: from localhost.localdomain (xdsl-188-155-168-84.adslplus.ch. [188.155.168.84]) by smtp.gmail.com with ESMTPSA id w17sm805286edr.68.2022.01.18.23.53.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Jan 2022 23:53:09 -0800 (PST) From: Krzysztof Kozlowski To: Krzysztof Kozlowski , "David S. Miller" , Jakub Kicinski , linux-nfc@lists.01.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 6/6] nfc: llcp: Revert "NFC: Keep socket alive until the DISC PDU is actually sent" Date: Wed, 19 Jan 2022 08:53:01 +0100 Message-Id: <20220119075301.7346-7-krzysztof.kozlowski@canonical.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> References: <20220119075301.7346-1-krzysztof.kozlowski@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" This reverts commit 17f7ae16aef1f58bc4af4c7a16b8778a91a30255. The commit brought a new socket state LLCP_DISCONNECTING, which was never set, only read, so socket could never set to such state. Remove the dead code. Signed-off-by: Krzysztof Kozlowski --- net/nfc/llcp.h | 1 - net/nfc/llcp_core.c | 7 ------- net/nfc/llcp_sock.c | 7 ------- 3 files changed, 15 deletions(-) diff --git a/net/nfc/llcp.h b/net/nfc/llcp.h index d49d4bf2e37c..c1d9be636933 100644 --- a/net/nfc/llcp.h +++ b/net/nfc/llcp.h @@ -6,7 +6,6 @@ enum llcp_state { LLCP_CONNECTED =3D 1, /* wait_for_packet() wants that */ LLCP_CONNECTING, - LLCP_DISCONNECTING, LLCP_CLOSED, LLCP_BOUND, LLCP_LISTEN, diff --git a/net/nfc/llcp_core.c b/net/nfc/llcp_core.c index b70d5042bf74..3364caabef8b 100644 --- a/net/nfc/llcp_core.c +++ b/net/nfc/llcp_core.c @@ -737,13 +737,6 @@ static void nfc_llcp_tx_work(struct work_struct *work) print_hex_dump_debug("LLCP Tx: ", DUMP_PREFIX_OFFSET, 16, 1, skb->data, skb->len, true); =20 - if (ptype =3D=3D LLCP_PDU_DISC && sk !=3D NULL && - sk->sk_state =3D=3D LLCP_DISCONNECTING) { - nfc_llcp_sock_unlink(&local->sockets, sk); - sock_orphan(sk); - sock_put(sk); - } - if (ptype =3D=3D LLCP_PDU_I) copy_skb =3D skb_copy(skb, GFP_ATOMIC); =20 diff --git a/net/nfc/llcp_sock.c b/net/nfc/llcp_sock.c index 2d4cdce88a54..14afed5916d1 100644 --- a/net/nfc/llcp_sock.c +++ b/net/nfc/llcp_sock.c @@ -641,13 +641,6 @@ static int llcp_sock_release(struct socket *sock) =20 release_sock(sk); =20 - /* Keep this sock alive and therefore do not remove it from the sockets - * list until the DISC PDU has been actually sent. Otherwise we would - * reply with DM PDUs before sending the DISC one. - */ - if (sk->sk_state =3D=3D LLCP_DISCONNECTING) - return err; - out: sock_orphan(sk); sock_put(sk); --=20 2.32.0