From patchwork Wed Apr 5 05:47:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79451 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp82638vqo; Tue, 4 Apr 2023 23:03:13 -0700 (PDT) X-Google-Smtp-Source: AKy350YTnxu8bGG5MBHY4EZ36wVeYCIKEjgR3fnMC/CpES+NhYHWCjHI8ETiberpE1/rB88uDT3l X-Received: by 2002:a17:90b:4b87:b0:234:31f3:e00f with SMTP id lr7-20020a17090b4b8700b0023431f3e00fmr5442195pjb.43.1680674593337; Tue, 04 Apr 2023 23:03:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674593; cv=none; d=google.com; s=arc-20160816; b=CNbcse1uM/RVp/Kc3ua+JOURV36xsDxR6iJQz8N0N7u4pWtD6AjIunVVGXI7yUHFZJ jEdkYecmJMOOprqFhpUI0CiFp2iRAuPEP/XRnilpPIsX0xVmLyBBCZiJPMdYlnVtCsxJ MCChC3c8hkF4U3r/2DdDCdRhILMRmkfhyawWOJcHr7beK0Td6SmcErOg4DogcK+ypY8L uZAxSTVaJ7vFJry+Hl3oGtmQfkrwjYpE86A5KV6kVlJQ/T/e/lwuyqyutiS7TWhj97lY gSwa8nZq7fo7vZBoW1rb/tvSJiZTLHowYS7viYcndsyk3+LgZff9TZg05I8LmGRucTjA Y8QQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dkim-signature; bh=eaofLLxNrKLouJpv9xBZNno2aDJjC1A6uNHxejf6/ws=; b=cCrmXrubQHGE8dfC4l6S6NBmgqv+3Ka5UyLZ0p7uccTFBl/O1sfepWtFWCZnK6u7fg uEclGa6tZlMk/cvOjqQXIwaHKiwquvTESuKgRWYGjgvNvfl/WC2aQ/LtvxU47mLmDfa0 mPks3Slzr86Xd1ymZLOF3svQzIiWiEMVpH4oqhOEMtIF5zcDI7qr1X6HLX/58iZPAX1m ziTfSlYNHtX9k1xIug82kUH2K+rCsN1ExtPIRkOwtCaWTYUBMFAfh6POMaVKYPmcpezD zAwEZ5ePa2IRhfrBBBPLUXcUWRZK8BaQAy3dzPGptY5doV+TSVcFYfnqGfEQ0kBI2A5i QTag== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="e8Ukaa/H"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ds16-20020a17090b08d000b0023fa810c06asi765593pjb.97.2023.04.04.23.03.01; Tue, 04 Apr 2023 23:03:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="e8Ukaa/H"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236997AbjDEFu1 (ORCPT + 99 others); Wed, 5 Apr 2023 01:50:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236956AbjDEFuW (ORCPT ); Wed, 5 Apr 2023 01:50:22 -0400 X-Greylist: delayed 74 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Tue, 04 Apr 2023 22:49:55 PDT Received: from mta-65-226.siemens.flowmailer.net (mta-65-226.siemens.flowmailer.net [185.136.65.226]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 78AF21BEF for ; Tue, 4 Apr 2023 22:49:55 -0700 (PDT) Received: by mta-65-226.siemens.flowmailer.net with ESMTPSA id 202304050548380861f07e5c4f7ec6b0 for ; Wed, 05 Apr 2023 07:48:38 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc; bh=eaofLLxNrKLouJpv9xBZNno2aDJjC1A6uNHxejf6/ws=; b=e8Ukaa/HzGzvXcqtUvbQdG5KcX2P/0y9PDnqTdEYsORtJQFZfi2xjCxy4xYFM2/JcGc9YL Sxg5qzx/0dY36h77qkhpOEEGSY9bw9Q6dJoKxArmeSzf+PLcVLYdoPiZohXvjsn5JV/u1Aiv HvsXzSDLzKV8vIeqY1oqSxkd9t3AI=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 1/9] tty: n_gsm: fix redundant assignment of gsm->encoding Date: Wed, 5 Apr 2023 07:47:22 +0200 Message-Id: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315042427779631?= X-GMAIL-MSGID: =?utf-8?q?1762315042427779631?= From: Daniel Starke The function gsmld_open() contains a redundant assignment of gsm->encoding. The same value of GSM_ADV_OPT is already assigned to it during the initialization of the struct in gsm_alloc_mux() a few lines earlier. Fix this by removing the redundant second assignment of gsm->encoding in gsmld_open(). Fixes: e1eaea46bb40 ("tty: n_gsm line discipline") Signed-off-by: Daniel Starke Reviewed-by: Ilpo Järvinen --- drivers/tty/n_gsm.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index b7e1369a035c..c42c8b89fd46 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -3585,7 +3585,6 @@ static int gsmld_open(struct tty_struct *tty) tty->receive_room = 65536; /* Attach the initial passive connection */ - gsm->encoding = GSM_ADV_OPT; gsmld_attach_gsm(tty, gsm); /* The mux will not be activated yet, we wait for correct From patchwork Wed Apr 5 05:47:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79450 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp82636vqo; Tue, 4 Apr 2023 23:03:13 -0700 (PDT) X-Google-Smtp-Source: AKy350ZY//s1MkxxrBJkdCyOnBiE1vNcgo9QyK3LuaAXRdo7M6DlM1vxpJgqjlSdvA/9wfay6XiK X-Received: by 2002:a17:902:f54c:b0:1a2:7d:8a74 with SMTP id h12-20020a170902f54c00b001a2007d8a74mr5672148plf.66.1680674593139; Tue, 04 Apr 2023 23:03:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674593; cv=none; d=google.com; s=arc-20160816; b=JB397eKk4jddVqVw1LOHSl55Xtl0+YqhyfWJFs0Qvc5S1DLCrXHHUYJiyhIg34izx1 uWXYTlQzzgNAzvW6rq6x/+7e9K0Fi43r+4g8K6mL3bkHDDQxx33rzE66KfSnQWO52wtm YB/KDoX96mAHxN2Xapkmf+tpF3WkmAlYOtWf4lMu0sjaffEoO0BuVYB0TWaS4fM4wf74 q00t2GNizlE3SenXThIAiUuByss3O3WhYeTGUwtJhfhZluTtoHtgzbzyK7qZMpbz18e1 QjgeTtpLkzk+HsKA2TgeegTrCGPURvxgT74ap0BBCB+ggtlLegaXXRvGpYgaF6tcQ3E4 JgOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=ZZodDRkXqq0iQNzy33siPn3qaIHVSbRPvOjhmOeVTa0=; b=JwO8Qf2Z9/Vj2t0bYNSNpYQUB26Vui34k7HjcYuLQRfIZl5K7rPzb+WCEz/Ln7u0hp bNRJvpUfTvafUV3MNWF0K9I26Gh8qqPH6A0TwVYJ4PmTiHT1kUqWXQ1HaBc/fAN5LCsS 87XEKjlTJhsfweCCY2oxTvfqfokPJ3DA+JuBzyPrwCTHcmHRXfl+uVP4wR2yLabEhmw5 zLG7kuiQGEJVry346VlSIqaZEC/omvVhcquwwCBOQloS1TU5N9kjkH66ax8XTlfz39l0 SFxz9WQ+Z9hokjd5k/GGJj5VLAxO2PEvXGH7EIr2fvtgATp3d1G1q9kzK32AmT4Ip9Xa u/mw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=lFQQfj4l; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q17-20020a17090311d100b001949b544e31si12092707plh.601.2023.04.04.23.03.00; Tue, 04 Apr 2023 23:03:13 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=lFQQfj4l; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236937AbjDEFs6 (ORCPT + 99 others); Wed, 5 Apr 2023 01:48:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41680 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236735AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net [185.136.64.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B5F1E1BEF for ; Tue, 4 Apr 2023 22:48:41 -0700 (PDT) Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 20230405054839e9c625e952698256ce for ; Wed, 05 Apr 2023 07:48:39 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=ZZodDRkXqq0iQNzy33siPn3qaIHVSbRPvOjhmOeVTa0=; b=lFQQfj4lewHoxx+lI6O1kuUGOobSOUipsM/mYj3qcWIiVrX0aJAE3JrJ8pulX0V42uVYdg 41Ybov0vat2WYmTo9yBP96stiguRpSub/ye7ROYyxyoZpon0vkTqX2PX6qg0u2Guq2UBIvDx efsHKt8EDzzMjpnbUYPGYLNDvFP+g=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 2/9] tty: n_gsm: add restart parameter to DLC specific ioctl config Date: Wed, 5 Apr 2023 07:47:23 +0200 Message-Id: <20230405054730.3850-2-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315041985661486?= X-GMAIL-MSGID: =?utf-8?q?1762315041985661486?= From: Daniel Starke 'gsm_config_ext' already allows to force a link reset via 'restart' parameter. An equivalent parameter for an forced channel reset is still missing in 'gsm_dlci_config'. Therefore, the user has no means to perform an automatic channel reset after parameter configuration for non-conflicting changes. Conflicting changes automatically reset the channel already in the current implementation. Add the parameter 'restart' to 'gsm_dlci_config' to force a channel reset after ioctl setting regardless of whether the changes made require this or not. Note that the parameter is limited to the values 0 and 1 to allow future additions here. Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 4 ++++ include/uapi/linux/gsmmux.h | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index c42c8b89fd46..eb21ca583642 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -2531,6 +2531,8 @@ static int gsm_dlci_config(struct gsm_dlci *dlci, struct gsm_dlci_config *dc, in return -EINVAL; if (dc->k > 7) return -EINVAL; + if (dc->restart > 1) /* allow future extensions */ + return -EINVAL; /* * See what is needed for reconfiguration @@ -2545,6 +2547,8 @@ static int gsm_dlci_config(struct gsm_dlci *dlci, struct gsm_dlci_config *dc, in /* Requires care */ if (dc->priority != dlci->prio) need_restart = true; + if (dc->restart) + need_restart = true; if ((open && gsm->wait_config) || need_restart) need_open = true; diff --git a/include/uapi/linux/gsmmux.h b/include/uapi/linux/gsmmux.h index eb67884e5f38..33ee7b857c52 100644 --- a/include/uapi/linux/gsmmux.h +++ b/include/uapi/linux/gsmmux.h @@ -58,7 +58,8 @@ struct gsm_dlci_config { __u32 priority; /* Priority (0 for default value) */ __u32 i; /* Frame type (1 = UIH, 2 = UI) */ __u32 k; /* Window size (0 for default value) */ - __u32 reserved[8]; /* For future use, must be initialized to zero */ + __u32 restart; /* Force DLCI channel reset? */ + __u32 reserved[7]; /* For future use, must be initialized to zero */ }; #define GSMIOC_GETCONF_DLCI _IOWR('G', 7, struct gsm_dlci_config) From patchwork Wed Apr 5 05:47:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79455 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp85334vqo; Tue, 4 Apr 2023 23:09:14 -0700 (PDT) X-Google-Smtp-Source: AKy350YIWsz75ZBVkY5I8fcIV8JEwHZHRVrSZ+88cU34Ul80KtQsiddgTo1VfFwo3P3DJLkRta5P X-Received: by 2002:a17:903:42c5:b0:19e:8688:86fe with SMTP id jy5-20020a17090342c500b0019e868886femr4738292plb.42.1680674954651; Tue, 04 Apr 2023 23:09:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674954; cv=none; d=google.com; s=arc-20160816; b=GOdK5F8Laf0dPkgv793NizY7sAylKfksVL4tnhYpG7JIPD/G1H9a+rh12vVJgjgbvV kIlWX2AYuguv+95SKvX75WK4QmNDSipZlExK/r5AJgcVy2YoadiSZ5O297NprCRp0Yvj 9V5EIBjX2tj7rhEKs7GcDIEzuEs/GeFZ69bt0K+lJmjfnq/Ldo1Kr0+12D3a0gjYvGMY 6ig/xBm6ks6yq/10+wUDVP1qYHHKCviw9jIr666z90yblpD4nw7AsoaOMEvAh7Vg26ra 2RpvEodpAa49Sfj13sHfqjKnJp0EhQkSKrDPkYrlx2I1SVu7BI1d/6fGMa7epzhyqM+K rLhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=4HQ/5t4h1V7LJfN8OsbuPnPZmtymnOtNckgYd4DfAxE=; b=HGS+TsUFyhrnqAxqyDwWLk8BbeQTwUt4o7fja34ug3ZYZMevEH66mrZCLJZ4IHbW/m e5ES9wHiE/L4zqIW/wPdxAiVlKJgqHUkb/GhMDVcLnBV8AQcIM256W5dxe+ZkE+O0Kju u8TukNghpxSZ5sMgl0ST6IuKeuTz9GrwuIzsBhC2GLExEri8jbHihVAjHIdBNSLbqCjT lzUwh4uRMRHgC+oW+HtVqTDYC2rBvq2NzLJu07iS206iLwulcnknll72f7XdmCzZbhDS sc8n6ErPZIDOMz4APrSDFGNeP8M4ZOe39Rw0EXvNkc9REF5Och5C0abYqzlAv3IZBMcN d+gQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=T4gOJLO0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bf4-20020a170902b90400b001a05bb13953si11543331plb.422.2023.04.04.23.09.03; Tue, 04 Apr 2023 23:09:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=T4gOJLO0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236923AbjDEFsx (ORCPT + 99 others); Wed, 5 Apr 2023 01:48:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41700 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229542AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net [185.136.65.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CCC081FEC for ; Tue, 4 Apr 2023 22:48:41 -0700 (PDT) Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 20230405054839879abfdb55a9e8ffe0 for ; Wed, 05 Apr 2023 07:48:39 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=4HQ/5t4h1V7LJfN8OsbuPnPZmtymnOtNckgYd4DfAxE=; b=T4gOJLO0EONRcJ/JhF17g7thnU5wmgZ1MRfNRjRSe8lb5VDGp8sMWH+UBGvu67yrB49PXW gk1Hyi7XvA8pCFnPFfeoWTO2CWsV0QrYazyVvzAiymXj3By/y7doeRDKQ+uzGlxq+hVDgO8f AYBP/QQs4W4/B5TigMY06Pnw9iWIk=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 3/9] tty: n_gsm: add missing description to gsm_config Date: Wed, 5 Apr 2023 07:47:24 +0200 Message-Id: <20230405054730.3850-3-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315420953516552?= X-GMAIL-MSGID: =?utf-8?q?1762315420953516552?= From: Daniel Starke Currently, all available structure fields in gsmmux.h except those for gsm_config are commented. Fix this by adding appropriate comments to the not commented fields. Signed-off-by: Daniel Starke --- include/uapi/linux/gsmmux.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/include/uapi/linux/gsmmux.h b/include/uapi/linux/gsmmux.h index 33ee7b857c52..422a52e184b3 100644 --- a/include/uapi/linux/gsmmux.h +++ b/include/uapi/linux/gsmmux.h @@ -8,17 +8,17 @@ struct gsm_config { - unsigned int adaption; - unsigned int encapsulation; - unsigned int initiator; - unsigned int t1; - unsigned int t2; - unsigned int t3; - unsigned int n2; - unsigned int mru; - unsigned int mtu; - unsigned int k; - unsigned int i; + unsigned int adaption; /* Convergence layer type */ + unsigned int encapsulation; /* Framing (0 = basic option, 1 = advanced option) */ + unsigned int initiator; /* Initiator or responder */ + unsigned int t1; /* Acknowledgment timer */ + unsigned int t2; /* Response timer for multiplexer control channel */ + unsigned int t3; /* Response timer for wake-up procedure */ + unsigned int n2; /* Maximum number of retransmissions */ + unsigned int mru; /* Maximum incoming frame payload size */ + unsigned int mtu; /* Maximum outgoing frame payload size */ + unsigned int k; /* Window size */ + unsigned int i; /* Frame type (1 = UIH, 2 = UI) */ unsigned int unused[8]; /* Can not be used */ }; From patchwork Wed Apr 5 05:47:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79457 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp85422vqo; Tue, 4 Apr 2023 23:09:29 -0700 (PDT) X-Google-Smtp-Source: AKy350aSsfBQsEGNx3GOVYAM+kpDuU/NWpNxds6PtFcnF/ViL60QuivUiuFBepC7oxKvVHA3N1HX X-Received: by 2002:a17:902:e549:b0:1a0:67ef:dc61 with SMTP id n9-20020a170902e54900b001a067efdc61mr6107416plf.17.1680674968736; Tue, 04 Apr 2023 23:09:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674968; cv=none; d=google.com; s=arc-20160816; b=UrBgRzmIyITZFa0K0a8v26yROQvIpQWvSdnQVj3sM0vVwQtYo5ZrUmbbc+QEU7yjKY do7LioapuawIssuAholIc7xMsCpiRxpdqeekR6LfRPgVJIVHoOBdUjp2mjeVUDF8y+lT x00msnKMXreMWk2Z6+okFv5+FkebilhqPM1/slNmXj2PCpOoe4Ha08E04fV7N7XeAp0i PRteKUF2GIRAwTOC9wDC+jwOOefl4LepXi+NxV4ZYwaDLyPEZuIH+/dKCoE4Efz/wM6J gj+lgsYGuzMjXokbjsNRUGLluSn/PCkttpIHrLnqaNsQYcNops8t7vZbgl4or3yxmqSy YFjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=xxgQqLsGOzLe4pCbEfkz/EaZ+wxQSNX7N39w6RgURFA=; b=yotuDck2Xnzm61HxGp2FziKatbygStWKaTbFKoRs4PQYQR3mIRjXQamZu+IyAKYmZv 0U3ZZf6SI+hQ12VP3wbqKEKOrOw4NX5m8HaNWUrQRuyrhh1pdCmpn/SiRo1RDMn9TaqP ORiHewAQJdkgeENKPWZgWaG7w2xYpcOoyBsgTAvjOKfJ37WcfhWDUg/QZYbQrdk3HZNe 1/wVq2r5nYqJl+C+x2YPu/atvMmmRKwuBZZ0ZdHpBGMbpJ4P+PraHa6qJyhgrIqC2n2h BUTaMAi4n7uwerLCzmrt+LISzQZ4W/twQ5W/f8YKfqfCSWr0uocqz0YU+lH240YKrxix dMzw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=eZ3I4zrv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id kb8-20020a170903338800b001a19b69c7ebsi11447169plb.345.2023.04.04.23.09.16; Tue, 04 Apr 2023 23:09:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=eZ3I4zrv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236933AbjDEFs5 (ORCPT + 99 others); Wed, 5 Apr 2023 01:48:57 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41682 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236791AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net [185.136.65.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 163FE1FF9 for ; Tue, 4 Apr 2023 22:48:41 -0700 (PDT) Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 2023040505484057848010262370f28e for ; Wed, 05 Apr 2023 07:48:40 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=xxgQqLsGOzLe4pCbEfkz/EaZ+wxQSNX7N39w6RgURFA=; b=eZ3I4zrvFPqu1M2TRu3krk2dat6R4RsYQhkGqaGoZg8Dz6mJCvbWnek5gvnvQgcjpjAr2r bTRBnWepQHm+WBIGdWQ4PLzvhZn31PC0F9cp62IHtxLXazhDtRCbaI7ueuveVH6am0Qj7Hi+ s6ni7+kz2sNpWRjDVWYpZGbw0OQ4I=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 4/9] tty: n_gsm: fix unneeded initialization of ret in gsm_dlci_config Date: Wed, 5 Apr 2023 07:47:25 +0200 Message-Id: <20230405054730.3850-4-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315436278457778?= X-GMAIL-MSGID: =?utf-8?q?1762315436278457778?= From: Daniel Starke The variable 'ret' is not used before assignment from gsm_activate_mux(). Still it gets initialized to zero at declaration. Fix this as remarked in the link below by removing the initialization. Fixes: edd5f60c3400 ("tty: n_gsm: fix mux activation issues in gsm_config()") Link: https://lore.kernel.org/all/b42bc4d1-cc9d-d115-c981-aaa053bdc59f@kernel.org/ Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index eb21ca583642..d42b92cbae88 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -3276,7 +3276,7 @@ static void gsm_copy_config_values(struct gsm_mux *gsm, static int gsm_config(struct gsm_mux *gsm, struct gsm_config *c) { - int ret = 0; + int ret; int need_close = 0; int need_restart = 0; From patchwork Wed Apr 5 05:47:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79456 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp85338vqo; Tue, 4 Apr 2023 23:09:15 -0700 (PDT) X-Google-Smtp-Source: AKy350bFB9QYxqbsGystTQpcRFnGj3nhVZaba/mY+mpl5VklxDRAuoSX2bgS9lL9rntOGK2itB/8 X-Received: by 2002:a17:903:74c:b0:19f:30be:ea0d with SMTP id kl12-20020a170903074c00b0019f30beea0dmr4807604plb.62.1680674955039; Tue, 04 Apr 2023 23:09:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674955; cv=none; d=google.com; s=arc-20160816; b=fmqrDZb/PjrW/tx+Qdul0zU1NO2cL/1GdDNeQfGqbcIkwQv0/es6uPmP+ZNDUPiUlM MQp+1rM6BlFKA1DlpWOGWRAoJMoCk6BVjAM1SyWhxYqapQOfGvnu1SmJFOfF15t1fl4T W97DYb5eOMRwJZ8TyXGhf2m9KkH5104EbKzaMia6/gXWlZbsK7Bmg/i0VGSK8un0PB2+ P7KF9iRAza6KOYTO7vHIiijn2wg7Co8NjO0VpmwEiGrovkgK7kBLcP0iQfrLOnZyzTCs SJJ5zaGKrf7nDr3dIAi52Q8Tnyq+19bYymfgZcbJ1KJcSF3lZciK2479KIMc0Uf6YPlj PhIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Zt+CBmSJELOiEDRewmYEmnsb90fmgUF3XjBBaB7lybI=; b=Ax5MVkgiPG131T2ibsUS87DCzSzegYG0AcwuYfwzFq83nsm3GP+uBQRQZKn0s/BFBC 8FCaEt5vkK9z6EQVIl/AogmL2ERF4RYG5QhVaEQrpvBB3FcymXS9UiqquWIb6Kf5iBBE sW+2JG2myTKmIn2hRCOwB4BMjemKlMLeaxEOgyMUyKl9rB3J0/EClmqo+Y4fQPl8Leu9 uI287wuc4mDw+r385yZjmH9aXRUWsjYjToN564yMTx93Q2mQxenRDgNTzbYYitDQ9RMi ul857J89GhJ1+mTj7HbG3BQmZ+SjW1jVAd4Wp+/g3jnKXK9aL61Ut4QMJdyFQTGg9Azz 6Wzw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=ZLwSkHl7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e17-20020a17090301d100b001a24efe1f14si12053562plh.78.2023.04.04.23.09.03; Tue, 04 Apr 2023 23:09:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=ZLwSkHl7; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236940AbjDEFtD (ORCPT + 99 others); Wed, 5 Apr 2023 01:49:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41744 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236913AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net [185.136.65.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6E5E1273F for ; Tue, 4 Apr 2023 22:48:42 -0700 (PDT) Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 20230405054840887ac844a56bd988a8 for ; Wed, 05 Apr 2023 07:48:40 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=Zt+CBmSJELOiEDRewmYEmnsb90fmgUF3XjBBaB7lybI=; b=ZLwSkHl7t6441wzo0AjhjdUIRi7ulepI+nyh8xze81f3d75+5vGxkGjmyK13z8/pFqDDqk nw1PzS6U3fOJzY9nKMt8MUeELtOIbXFWv7/CfzAglp4ijzSmJcbCFGDEmrFMuiudeexOxxxx 1ztS4+2ixXR+dR0il1FOln+hDKpJw=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 5/9] tty: n_gsm: add open_error counter to gsm_mux Date: Wed, 5 Apr 2023 07:47:26 +0200 Message-Id: <20230405054730.3850-5-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315421866452486?= X-GMAIL-MSGID: =?utf-8?q?1762315421866452486?= From: Daniel Starke Extend the n_gsm link statistics by a failed link open counter in preparation for an upcoming patch which will expose these. This counter is increased whenever an attempt to open the control channel failed. Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index d42b92cbae88..9f6669686c59 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -338,6 +338,7 @@ struct gsm_mux { unsigned long bad_fcs; unsigned long malformed; unsigned long io_error; + unsigned long open_error; unsigned long bad_size; unsigned long unsupported; }; @@ -1729,25 +1730,32 @@ static void gsm_control_negotiation(struct gsm_mux *gsm, unsigned int cr, struct gsm_dlci *dlci; struct gsm_dlci_param_bits *params; - if (dlen < sizeof(struct gsm_dlci_param_bits)) + if (dlen < sizeof(struct gsm_dlci_param_bits)) { + gsm->open_error++; return; + } /* Invalid DLCI? */ params = (struct gsm_dlci_param_bits *)data; addr = FIELD_GET(PN_D_FIELD_DLCI, params->d_bits); - if (addr == 0 || addr >= NUM_DLCI || !gsm->dlci[addr]) + if (addr == 0 || addr >= NUM_DLCI || !gsm->dlci[addr]) { + gsm->open_error++; return; + } dlci = gsm->dlci[addr]; /* Too late for parameter negotiation? */ - if ((!cr && dlci->state == DLCI_OPENING) || dlci->state == DLCI_OPEN) + if ((!cr && dlci->state == DLCI_OPENING) || dlci->state == DLCI_OPEN) { + gsm->open_error++; return; + } /* Process the received parameters */ if (gsm_process_negotiation(gsm, addr, cr, params) != 0) { /* Negotiation failed. Close the link. */ if (debug & DBG_ERRORS) pr_info("%s PN failed\n", __func__); + gsm->open_error++; gsm_dlci_close(dlci); return; } @@ -1767,6 +1775,7 @@ static void gsm_control_negotiation(struct gsm_mux *gsm, unsigned int cr, } else { if (debug & DBG_ERRORS) pr_info("%s PN in invalid state\n", __func__); + gsm->open_error++; } } @@ -2220,6 +2229,7 @@ static void gsm_dlci_t1(struct timer_list *t) dlci->retries--; mod_timer(&dlci->t1, jiffies + gsm->t1 * HZ / 100); } else { + gsm->open_error++; gsm_dlci_begin_close(dlci); /* prevent half open link */ } break; @@ -2235,6 +2245,7 @@ static void gsm_dlci_t1(struct timer_list *t) dlci->mode = DLCI_MODE_ADM; gsm_dlci_open(dlci); } else { + gsm->open_error++; gsm_dlci_begin_close(dlci); /* prevent half open link */ } @@ -2756,12 +2767,16 @@ static void gsm_queue(struct gsm_mux *gsm) switch (gsm->control) { case SABM|PF: - if (cr == 1) + if (cr == 1) { + gsm->open_error++; goto invalid; + } if (dlci == NULL) dlci = gsm_dlci_alloc(gsm, address); - if (dlci == NULL) + if (dlci == NULL) { + gsm->open_error++; return; + } if (dlci->dead) gsm_response(gsm, address, DM|PF); else { @@ -3754,8 +3769,10 @@ static int gsmld_ioctl(struct tty_struct *tty, unsigned int cmd, dlci = gsm->dlci[dc.channel]; if (!dlci) { dlci = gsm_dlci_alloc(gsm, dc.channel); - if (!dlci) + if (!dlci) { + gsm->open_error++; return -ENOMEM; + } } gsm_dlci_copy_config_values(dlci, &dc); if (copy_to_user((void __user *)arg, &dc, sizeof(dc))) @@ -3769,8 +3786,10 @@ static int gsmld_ioctl(struct tty_struct *tty, unsigned int cmd, dlci = gsm->dlci[dc.channel]; if (!dlci) { dlci = gsm_dlci_alloc(gsm, dc.channel); - if (!dlci) + if (!dlci) { + gsm->open_error++; return -ENOMEM; + } } return gsm_dlci_config(dlci, &dc, 0); default: From patchwork Wed Apr 5 05:47:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79452 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp84522vqo; Tue, 4 Apr 2023 23:07:27 -0700 (PDT) X-Google-Smtp-Source: AKy350YOdUyhJELZzmph9PerFDO665YmMZLRaNfCR14DMbC6q2ZvNxW46Q8qbuS5WegPSd9J5m9Z X-Received: by 2002:a05:6a20:3148:b0:d9:e45d:95cd with SMTP id 8-20020a056a20314800b000d9e45d95cdmr3892103pzk.17.1680674847047; Tue, 04 Apr 2023 23:07:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674847; cv=none; d=google.com; s=arc-20160816; b=hFpMjzhr+TB149K1q4IZ5YMPBcGHsLUPUVeEn2+lHAucQa74ANQEcjkWkLrjG2qeR4 V2B2TjZnVTicZolql8AQ+mZCWK5VZXWhvk3UvFmeFT9PKFmvrdPZU6ZhEzUgVELYnJel apNUKbfuEYmyPIiQ8pq2yGNlyzJw7wK94jzDU/R5VtPItCaeTE3y8dCxDvy1jthCTXSP 9fMQtEcKVBOs/pHDogcoos8o1x8sof3hF9o2cGo5l0cGOmejnBQwfoRFu/XoB6jvHw0w 1/gJtxw1r8aK+kMWB6hJzigjABYwX4creNUwzlzmbwG8m7sI0nV3naJ/v+SgagN47tM8 LxgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=uJwl9+ZDqP0Gge7uLTPceewqkWgzi1mhsOlMd09/Rek=; b=Y3PpfEb4VHwvAb1Hdt1771HAr5hM3MXUBrILtD8kWUry8tAn04tyDKx8tsyXaBxFAO xSpirkQ/HnfZSSPSVgkPPvoxmQ6Q51l3DMrk7b7J2dQE4D7f0DDzDtf8m2IZyjJhhmsj VrJEf1qckFiaoPN+2IPCBz2HRvFth3n0/uYqp/TBlI5SgivrHkam7b0zLb3Zzzq4aN9N y0oFyY6xbgIAN3jngSyk/N/8ASPrsyfBaiuOjVmJJ0RZpOEhudx7/wR04X0DjMc1tb9y ffbwQ+4rfGYHL6/nC3iX+Bop+2YCudOxKmhVAHdZZRwIWMKHEyBQAtZ5db20e/qJfMAr DQeQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=JXWjQW5q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i3-20020a63b303000000b004fbc70b72cesi5910000pgf.771.2023.04.04.23.07.13; Tue, 04 Apr 2023 23:07:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=JXWjQW5q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236967AbjDEFtF (ORCPT + 99 others); Wed, 5 Apr 2023 01:49:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41752 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236914AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net [185.136.64.226]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1A5FA4209 for ; Tue, 4 Apr 2023 22:48:44 -0700 (PDT) Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 202304050548413b6f5576ae346ac24b for ; Wed, 05 Apr 2023 07:48:41 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=uJwl9+ZDqP0Gge7uLTPceewqkWgzi1mhsOlMd09/Rek=; b=JXWjQW5q8OoaEBEhqWxkx7OVJ7Uguem4duDJb8hts9xh1cc6h93WGQ4UqYil6K0aCTayT9 3BFKIU+j93dhtYG+VlHMyb5eDS40h/C7D5GAponp1aBSXlrD1jPDD6zCYEA7wxY30bVlvDM4 1p5h2cWc+zQQnWHH8DjbO+/kLC+I4=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 6/9] tty: n_gsm: increase malformed counter for malformed control frames Date: Wed, 5 Apr 2023 07:47:27 +0200 Message-Id: <20230405054730.3850-6-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315308445797410?= X-GMAIL-MSGID: =?utf-8?q?1762315308445797410?= From: Daniel Starke The malformed counter in gsm_mux is already increased in case of errors detected in gsm_queue() and gsm1_receive(). gsm_dlci_command() also detects a case for a malformed frame but does not increase the malformed counter yet. Fix this by also increasing the gsm_mux malformed counter in case of a malformed frame in gsm_dlci_command(). Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 9f6669686c59..317aa67ed169 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -2454,8 +2454,10 @@ static void gsm_dlci_command(struct gsm_dlci *dlci, const u8 *data, int len) data += dlen; /* Malformed command? */ - if (clen > len) + if (clen > len) { + dlci->gsm->malformed++; return; + } if (command & 1) gsm_control_message(dlci->gsm, command, data, clen); From patchwork Wed Apr 5 05:47:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79448 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp77768vqo; Tue, 4 Apr 2023 22:50:32 -0700 (PDT) X-Google-Smtp-Source: AKy350b7v7bCO6c7mQahgAy93aWDIxAInUV8eq0S7bZK05t1bsUutO709NuYr4vtPIG1bdNlPhOu X-Received: by 2002:aa7:d516:0:b0:4fa:8aa4:8d8b with SMTP id y22-20020aa7d516000000b004fa8aa48d8bmr725886edq.7.1680673832515; Tue, 04 Apr 2023 22:50:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680673832; cv=none; d=google.com; s=arc-20160816; b=eOMCewn9UKcuQfW2gIOdmsniSRG3EAFiuCPem/nOFfYWPysPIRKSugBn9gFvcZkJdU PWl5G+7uxD+V2eUr0niWENcFh6M3aKtVKLQ/yPQGg8JJNBh8yZFO04Hf4StOIidqH90H 01OyOJSUOx+A/f69+riiETqht4SDoUTPilq+JXehyLv8cJjjijRyrOcIWrlzLtdmTZ+/ YQf3p9jBH/1874T7pa/W+liVtOCTe8qOOm9zMkVyX29zy9Z+AmUpeVCH2Xj4+2KM6zQe RIy20f1hRw6vFkh+B5J1mDa6gFnG26DyyMs7qtfdzl6HQf1ZywmETj1XtviPIuHbds+u hRkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=TFt+C5BrvavywiqvORD4lxZZuzc6pzPiidKcYuSljTk=; b=Lhh8IFfnC7yzvZZlv864AQ/t4WcO8iwgqdgyxy4gU/DJ//d3vdVpp7MoHdXVPqzggE yCDJgPYPJzsa29Eu/XUpAFkTQIjJQnGWLmWYP7MpLw0hSrlB2Op1CsJlh4gbTg/7JqU1 wf22uO/dSPNRB8MYtb+oq/OA8NhT20W2jTk/wVuZg6etP/q83TTCdYjhujChYQ158yDG 7u99/cDkIyfV6J4D+PtBvr10h+yLTbfoUbjS7sGABWrC2nmyHOsITGWZo3tdP2aLk1nR UIBL2Kiu/UlHrulA5mzspKjvEwmyLDPmfLiT89ph1CA+a7JWLnIl4MCWrOco5r+u7Te2 6nXw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="EDHpM/HF"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d11-20020a056402516b00b005024c85f879si4107116ede.481.2023.04.04.22.50.08; Tue, 04 Apr 2023 22:50:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b="EDHpM/HF"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236950AbjDEFtA (ORCPT + 99 others); Wed, 5 Apr 2023 01:49:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41748 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236919AbjDEFsp (ORCPT ); Wed, 5 Apr 2023 01:48:45 -0400 Received: from mta-64-228.siemens.flowmailer.net (mta-64-228.siemens.flowmailer.net [185.136.64.228]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BDD1240EE for ; Tue, 4 Apr 2023 22:48:43 -0700 (PDT) Received: by mta-64-228.siemens.flowmailer.net with ESMTPSA id 20230405054841f3cf610f578aa093fb for ; Wed, 05 Apr 2023 07:48:41 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=TFt+C5BrvavywiqvORD4lxZZuzc6pzPiidKcYuSljTk=; b=EDHpM/HFdWDdIOOLBJ3jyOja5SOVbRjyjQSYWoGey9yxeuKEBClaUkgtsFO59Lw0AeItvp r9F+CL2KaF68LsI9cHYPpuVXmtP+gPPeu2c7kdCtluhztqxDWJmaoqo2DCREz1xyjVZPsHmq V8wuN4RRXPNzDKqYEY22kCvSW5dRc=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 7/9] tty: n_gsm: increase gsm_mux unsupported counted where appropriate Date: Wed, 5 Apr 2023 07:47:28 +0200 Message-Id: <20230405054730.3850-7-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762314244805640992?= X-GMAIL-MSGID: =?utf-8?q?1762314244805640992?= From: Daniel Starke The structure gsm_mux contains the 'unsupported' field. However, there is currently no place in the code which increases this counter. Increase the 'unsupported' statistics counter in the following case: - an unsupported frame type has been requested by the peer via parameter negotiation - a control frame with an unsupported but known command has been received Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 317aa67ed169..49cb2dbfa233 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -1589,6 +1589,7 @@ static int gsm_process_negotiation(struct gsm_mux *gsm, unsigned int addr, if (debug & DBG_ERRORS) pr_info("%s unsupported I frame request in PN\n", __func__); + gsm->unsupported++; return -EINVAL; default: if (debug & DBG_ERRORS) @@ -1896,6 +1897,8 @@ static void gsm_control_message(struct gsm_mux *gsm, unsigned int command, /* Optional unsupported commands */ case CMD_RPN: /* Remote port negotiation */ case CMD_SNC: /* Service negotiation command */ + gsm->unsupported++; + fallthrough; default: /* Reply to bad commands with an NSC */ buf[0] = command; From patchwork Wed Apr 5 05:47:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79454 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp84900vqo; Tue, 4 Apr 2023 23:08:17 -0700 (PDT) X-Google-Smtp-Source: AKy350ZGNKeTYiPdE7AOexMU6ilYkE+SCaN5TKcRofdC20y+OFCZjsPJ98bNJYH83Kko56P7Gbxu X-Received: by 2002:a17:90b:d87:b0:234:67ef:304b with SMTP id bg7-20020a17090b0d8700b0023467ef304bmr5669529pjb.37.1680674896795; Tue, 04 Apr 2023 23:08:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674896; cv=none; d=google.com; s=arc-20160816; b=dCh05npT/iWEtRL9qcCycl4+cibT58iBe40AeI9WBveqQLA2u4Nkr1PSEcGOHCNJ19 Uns1ci1CFJ4G86GgPLPX3HcEEf7n1u++ItRu6tW3xEYqAB89xJMJpzkzIPvIN/ejUFjm KQGk4hzUfKmu9SuepYD9bARTGN9IclJoJv2jR+w1vo+iJB33zBaYQSSrLyc9ZMQmHpz7 RdiO5NOXR0Ihx43+3CzFhAdIZWD1yeMMMdCfIbsKtUhGtofjij6Ak3dJo/i/m5e6RYFt fWUS9E0m5ArxOg5Ak9DBWfFDqH8YU6aBR2eelifcKFDnFU37lc/J5JIViF98U77EfmGY 55Sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=lIFBSLziB/EDCfodaoQXEaZEnI8/9GXyz3jkwj8YkEw=; b=SDEb1dzAyagWchcFwDwtQohU0RbepEzlqGSVtzRyFDRDTc04j+0uEVR2pTdb+i5Mdw 3lckTRDz32JLYmBI69KlQIpOZcTPBcP0njyBYji1JtbgBo9D6DjcllHl5UfwcNKdm/E7 LGwj0J4N3EjnPIOrpDQYM+pZnpNDYYC600IZt2IUBVHPFu99CJeIr5OJWC3PjPWlmTik eXPJxSYhIzdcyDiyJ3tlc12VRRx7CsVIwKtZLWM7jqu5FJWDFHlkB/FPi7ygQmhQO5g0 PmxRm1cc/A3m+Sn3gJWs1Z+Zrz3UmL9S1nKXmKsQqnhMuMKxC25FzzYlMpO2xPtj+UzX 0gDw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=pbc5yB8p; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ms11-20020a17090b234b00b0023747b030e7si771532pjb.105.2023.04.04.23.08.04; Tue, 04 Apr 2023 23:08:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=pbc5yB8p; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236986AbjDEFua (ORCPT + 99 others); Wed, 5 Apr 2023 01:50:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44988 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236970AbjDEFuY (ORCPT ); Wed, 5 Apr 2023 01:50:24 -0400 X-Greylist: delayed 72 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Tue, 04 Apr 2023 22:49:56 PDT Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net [185.136.64.225]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A81D21FF9 for ; Tue, 4 Apr 2023 22:49:56 -0700 (PDT) Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 2023040505484232e1a29472174f0976 for ; Wed, 05 Apr 2023 07:48:42 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=lIFBSLziB/EDCfodaoQXEaZEnI8/9GXyz3jkwj8YkEw=; b=pbc5yB8pE+GCO3pUf+8d5AbLtbu1Xf85ojZhCLQIgW8VcU5fGYIscrknhGJin/Cq4gbq9R uv0l5XN8o23yGO3vDwsWWvRTSbkzkUmaOIC162iNXzuuMNFW49h+g4F7YAhnvaldwUsgnvTc vrOxgFrpC59XaVSFQcglrksBjiRYs=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 8/9] tty: n_gsm: add DLCI specific rx/tx statistics Date: Wed, 5 Apr 2023 07:47:29 +0200 Message-Id: <20230405054730.3850-8-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762315360478280554?= X-GMAIL-MSGID: =?utf-8?q?1762315360478280554?= From: Daniel Starke Add counters for the number of data bytes received/transmitted per DLCI in for preparation for an upcoming patch which will expose these values to the user. Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 49cb2dbfa233..61f9825fde3c 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -185,6 +185,9 @@ struct gsm_dlci { void (*data)(struct gsm_dlci *dlci, const u8 *data, int len); void (*prev_data)(struct gsm_dlci *dlci, const u8 *data, int len); struct net_device *net; /* network interface, if created */ + /* Statistics (not currently exposed) */ + u64 tx; /* Data bytes sent on this DLCI */ + u64 rx; /* Data bytes received on this DLCI */ }; /* @@ -1215,6 +1218,7 @@ static int gsm_dlci_data_output(struct gsm_mux *gsm, struct gsm_dlci *dlci) tty_port_tty_wakeup(&dlci->port); __gsm_data_queue(dlci, msg); + dlci->tx += len; /* Bytes of data we used up */ return size; } @@ -1459,6 +1463,7 @@ static int gsm_control_command(struct gsm_mux *gsm, int cmd, const u8 *data, msg->data[1] = (dlen << 1) | EA; memcpy(msg->data + 2, data, dlen); gsm_data_queue(gsm->dlci[0], msg); + gsm->dlci[0]->tx += dlen; return 0; } @@ -1485,6 +1490,7 @@ static void gsm_control_reply(struct gsm_mux *gsm, int cmd, const u8 *data, msg->data[1] = (dlen << 1) | EA; memcpy(msg->data + 2, data, dlen); gsm_data_queue(gsm->dlci[0], msg); + gsm->dlci[0]->tx += dlen; } /** @@ -1849,10 +1855,13 @@ static void gsm_control_message(struct gsm_mux *gsm, unsigned int command, const u8 *data, int clen) { u8 buf[1]; + struct gsm_dlci *dlci = gsm->dlci[0]; + + if (dlci) + dlci->rx += clen; switch (command) { case CMD_CLD: { - struct gsm_dlci *dlci = gsm->dlci[0]; /* Modem wishes to close down */ if (dlci) { dlci->dead = true; @@ -1931,6 +1940,8 @@ static void gsm_control_response(struct gsm_mux *gsm, unsigned int command, ctrl = gsm->pending_cmd; dlci = gsm->dlci[0]; + if (dlci) + dlci->rx += clen; command |= 1; /* Does the reply match our command */ if (ctrl != NULL && (command == ctrl->cmd || command == CMD_NSC)) { @@ -2295,6 +2306,9 @@ static void gsm_dlci_begin_open(struct gsm_dlci *dlci) need_pn = true; } + dlci->tx = 0; + dlci->rx = 0; + switch (dlci->state) { case DLCI_CLOSED: case DLCI_WAITING_CONFIG: @@ -2327,6 +2341,9 @@ static void gsm_dlci_begin_open(struct gsm_dlci *dlci) */ static void gsm_dlci_set_opening(struct gsm_dlci *dlci) { + dlci->tx = 0; + dlci->rx = 0; + switch (dlci->state) { case DLCI_CLOSED: case DLCI_WAITING_CONFIG: @@ -2346,6 +2363,9 @@ static void gsm_dlci_set_opening(struct gsm_dlci *dlci) */ static void gsm_dlci_set_wait_config(struct gsm_dlci *dlci) { + dlci->tx = 0; + dlci->rx = 0; + switch (dlci->state) { case DLCI_CLOSED: case DLCI_CLOSING: @@ -2422,6 +2442,7 @@ static void gsm_dlci_data(struct gsm_dlci *dlci, const u8 *data, int clen) fallthrough; case 1: /* Line state will go via DLCI 0 controls only */ default: + dlci->rx += clen; tty_insert_flip_string(port, data, clen); tty_flip_buffer_push(port); } @@ -2782,6 +2803,7 @@ static void gsm_queue(struct gsm_mux *gsm) gsm->open_error++; return; } + dlci->rx += gsm->len; if (dlci->dead) gsm_response(gsm, address, DM|PF); else { From patchwork Wed Apr 5 05:47:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "D. Starke" X-Patchwork-Id: 79449 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp79803vqo; Tue, 4 Apr 2023 22:56:56 -0700 (PDT) X-Google-Smtp-Source: AKy350Z/QHlUPlVcmbQchSYJerJegnVLYwqAhkc/9FyJN9EcLRgOrRkuS1o8azQS8eRojb5qnW4J X-Received: by 2002:a17:907:7f0b:b0:93f:f70:b2e6 with SMTP id qf11-20020a1709077f0b00b0093f0f70b2e6mr2420583ejc.0.1680674216557; Tue, 04 Apr 2023 22:56:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680674216; cv=none; d=google.com; s=arc-20160816; b=JbqGFe1yVmfdCSHLKdprKfVXWJwyZhEtWmQSU18tAMGvoezmQb3nYQtD9kvPZEOLbi ct70roHAwqKTVV03eCu2NeCX2o98RugG5HwLXs7yhJTOW7HqY6zw0Kx0QCQDWSqS4F2J yyl2pqf2cA961XV9tN9Ym+HfDGSbCB7AbyofSQphHly241LsDHPt+0BANPXjBaK5L3Uh EaGuV/zKnZ4k94WHMFvdJm9GbJRf5Dwd3LhsKVc50wLxKUmqmyQ+e3Wo/jfkrR2UzFJv gn0thUi5BUPVHd21+8Lgt1NiVgfZx/N+uyZgIerKjIcsi9ONsPJISHTAKwoNuJT2qixm 7Zjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=1GS25vop8sxUpd2Jcu2/YctKoWgcop6YP071C0g8f7A=; b=dym3wvWfWFxhh/VSPbbzpGhK7fjP2P55BK5VgstZb6rkJ35wTQnpktwm846KXoxl5V jnw7BIXljkfShXFZjGD2R7NgoTQgFlvOFpm+u/numY4aM9smS950eR5D9FAqhdQbJgGe mjXthEBdf8L9kTtcccx/ZVfS37KlsM5lPqvuEpcIGZrVABKA5iWyDY93WglhvtnwXjm5 0icjaHXReA5YIl+WmcYTmCJKbzWk1aFx9WUM6ynPKrhR1+L34NcTNm/9fX9kDSHnmxu9 IDy79EPDMuR1hIHBWMB0UV82hyPBCJUFu0vv2Hvd+bXqNs2GszqlQiLCjZV1Yk2XyGM6 fAaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=p6+pVTkh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id fj14-20020a1709069c8e00b009492273178esi677816ejc.220.2023.04.04.22.56.17; Tue, 04 Apr 2023 22:56:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=p6+pVTkh; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236974AbjDEFuf (ORCPT + 99 others); Wed, 5 Apr 2023 01:50:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44870 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236973AbjDEFuZ (ORCPT ); Wed, 5 Apr 2023 01:50:25 -0400 X-Greylist: delayed 72 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Tue, 04 Apr 2023 22:49:56 PDT Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net [185.136.64.225]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B1FD54EFD for ; Tue, 4 Apr 2023 22:49:56 -0700 (PDT) Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 20230405054842a1eb5d27e0917391df for ; Wed, 05 Apr 2023 07:48:43 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=daniel.starke@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=1GS25vop8sxUpd2Jcu2/YctKoWgcop6YP071C0g8f7A=; b=p6+pVTkhM5dHMuDtxJ+UH1KIS+NvwW2qr4P8FNd+9AGfmKO28kGyEBq5/TmDeEiWqCnu4m O5rkj9Fe9FQWAWMW5I8aqd3auG9IzOWyRyWQLJ02CZoakX90NaVvKJ51z5tgXnF2S9c99myN XIndyBEAlHk73sljUrYeW/eSiD8yo=; From: "D. Starke" To: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: linux-kernel@vger.kernel.org, Daniel Starke Subject: [PATCH 9/9] tty: n_gsm: cleanup gsm_control_command and gsm_control_reply Date: Wed, 5 Apr 2023 07:47:30 +0200 Message-Id: <20230405054730.3850-9-daniel.starke@siemens.com> In-Reply-To: <20230405054730.3850-1-daniel.starke@siemens.com> References: <20230405054730.3850-1-daniel.starke@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-314044:519-21489:flowmailer X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762314647548166265?= X-GMAIL-MSGID: =?utf-8?q?1762314647548166265?= From: Daniel Starke There are multiple places in gsm_control_command and gsm_control_reply that derive the specific DLCI handle directly out of the DLCI table in gsm. Add a local variable which holds this handle and use it instead to improve code readability. Signed-off-by: Daniel Starke --- drivers/tty/n_gsm.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c index 61f9825fde3c..87720ebc38d7 100644 --- a/drivers/tty/n_gsm.c +++ b/drivers/tty/n_gsm.c @@ -1454,16 +1454,17 @@ static int gsm_control_command(struct gsm_mux *gsm, int cmd, const u8 *data, int dlen) { struct gsm_msg *msg; + struct gsm_dlci *dlci = gsm->dlci[0]; - msg = gsm_data_alloc(gsm, 0, dlen + 2, gsm->dlci[0]->ftype); + msg = gsm_data_alloc(gsm, 0, dlen + 2, dlci->ftype); if (msg == NULL) return -ENOMEM; msg->data[0] = (cmd << 1) | CR | EA; /* Set C/R */ msg->data[1] = (dlen << 1) | EA; memcpy(msg->data + 2, data, dlen); - gsm_data_queue(gsm->dlci[0], msg); - gsm->dlci[0]->tx += dlen; + gsm_data_queue(dlci, msg); + dlci->tx += dlen; return 0; } @@ -1482,15 +1483,16 @@ static void gsm_control_reply(struct gsm_mux *gsm, int cmd, const u8 *data, int dlen) { struct gsm_msg *msg; + struct gsm_dlci *dlci = gsm->dlci[0]; - msg = gsm_data_alloc(gsm, 0, dlen + 2, gsm->dlci[0]->ftype); + msg = gsm_data_alloc(gsm, 0, dlen + 2, dlci->ftype); if (msg == NULL) return; msg->data[0] = (cmd & 0xFE) << 1 | EA; /* Clear C/R */ msg->data[1] = (dlen << 1) | EA; memcpy(msg->data + 2, data, dlen); - gsm_data_queue(gsm->dlci[0], msg); - gsm->dlci[0]->tx += dlen; + gsm_data_queue(dlci, msg); + dlci->tx += dlen; } /**