Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3034455imu; Sun, 9 Dec 2018 15:39:55 -0800 (PST) X-Google-Smtp-Source: AFSGD/Xi9vgEcJ93Y5VX2CCsToxkgk4/PmFEr0ZYFeJcOoAOrtLl3+AiQHCyEm6KAQowVpXbc3aE X-Received: by 2002:a62:e30d:: with SMTP id g13mr10192942pfh.151.1544398795114; Sun, 09 Dec 2018 15:39:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544398795; cv=none; d=google.com; s=arc-20160816; b=xXv9mf614/Jzi9cETqsNfqKeHWgrJ46qsAXHM5BoTV20HsFlgvA3ZXOSd7EVKvOyq1 PoglmPWhQOnb5d8R3Az4oDQAXiZpRdLUF5KUD1BSZf2Jngkmhl+86ZcsTxj6jL4Hligx GtNxY5NTnFew4xl2bhC/xfgOS6KQGAL4Tygr9zZB3BoUZ50bxkdJDsXnwzbsIe4A31RT BZOgbVLnutBgttB27cUQXJNbyP23RVlHzfFIalIOjCq/Ykl6iYbUI7vs8ydgeUcDLaAk 2ELhyPiSIz3MHWQggYcf/IQIbteAaemyfmYXK7veOSV7uahmddaMA1TDr0VHYi4uymYv 8+fA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:subject:message-id:date:cc:to :from:mime-version:content-transfer-encoding:content-disposition; bh=p4tRd2ySEBsgyTy45wEdlLo+pyXgRBnOUGGsZed4H+I=; b=cg9MNyRI8qRfq+UuhTghV4/pjPQaVxu1wupRELpld8yDEk+qACoK5i4HL9n8jZ7Fi7 bQw8ZgT57LgrHn50M/VQQGp5Ez08ExcCYBDsmDZL/JwXfYTd/M9T5t4NouUtARL+nw// bYnALpkC/vrtBRysvtSpcG3Mkj6gGaBc6LFavg6N3D9DrCGSywbQBbUjDQ1i+OjZhTt6 N2L0wSI1R3x35sL2nAQxd6d+TfBT5O5/H8dqZEstdu/x8QkaH5vqyspcmIg00lIyntzs L8ZJ8zPsJ9p1Hg0Tg29OR+0BFrFGWCdrMxuWaObHQq/im+fDO96ns17UnjvCqo6cby7b tuqg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m32si8785272pld.86.2018.12.09.15.39.39; Sun, 09 Dec 2018 15:39:55 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728820AbeLIW1O (ORCPT + 99 others); Sun, 9 Dec 2018 17:27:14 -0500 Received: from shadbolt.e.decadent.org.uk ([88.96.1.126]:34688 "EHLO shadbolt.e.decadent.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726389AbeLIVzM (ORCPT ); Sun, 9 Dec 2018 16:55:12 -0500 Received: from pub.yeoldevic.com ([81.174.156.145] helo=deadeye) by shadbolt.decadent.org.uk with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gW72b-0002ie-Lt; Sun, 09 Dec 2018 21:55:09 +0000 Received: from ben by deadeye with local (Exim 4.91) (envelope-from ) id 1gW72Y-0003Dw-LZ; Sun, 09 Dec 2018 21:55:06 +0000 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 From: Ben Hutchings To: linux-kernel@vger.kernel.org, stable@vger.kernel.org CC: akpm@linux-foundation.org, "Johan Hovold" Date: Sun, 09 Dec 2018 21:50:33 +0000 Message-ID: X-Mailer: LinuxStableQueue (scripts by bwh) X-Patchwork-Hint: ignore Subject: [PATCH 3.16 023/328] USB: serial: kobil_sct: fix modem-status error handling In-Reply-To: X-SA-Exim-Connect-IP: 81.174.156.145 X-SA-Exim-Mail-From: ben@decadent.org.uk X-SA-Exim-Scanned: No (on shadbolt.decadent.org.uk); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.16.62-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: Johan Hovold commit a420b5d939ee58f1d950f0ea782834056520aeaa upstream. Make sure to return -EIO in case of a short modem-status read request. While at it, split the debug message to not include the (zeroed) transfer-buffer content in case of errors. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Johan Hovold Signed-off-by: Ben Hutchings --- drivers/usb/serial/kobil_sct.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) --- a/drivers/usb/serial/kobil_sct.c +++ b/drivers/usb/serial/kobil_sct.c @@ -408,12 +408,20 @@ static int kobil_tiocmget(struct tty_str transfer_buffer_length, KOBIL_TIMEOUT); - dev_dbg(&port->dev, "%s - Send get_status_line_state URB returns: %i. Statusline: %02x\n", - __func__, result, transfer_buffer[0]); + dev_dbg(&port->dev, "Send get_status_line_state URB returns: %i\n", + result); + if (result < 1) { + if (result >= 0) + result = -EIO; + goto out_free; + } + + dev_dbg(&port->dev, "Statusline: %02x\n", transfer_buffer[0]); result = 0; if ((transfer_buffer[0] & SUSBCR_GSL_DSR) != 0) result = TIOCM_DSR; +out_free: kfree(transfer_buffer); return result; }