Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp119401ybf; Wed, 26 Feb 2020 09:53:26 -0800 (PST) X-Google-Smtp-Source: APXvYqyVGy3QNRmdtUOwkX5c3zbsOr9Z2bD5tOv8EywamqpSgzd/KQIwqSLpnNRYi95x5wCQSEm4 X-Received: by 2002:aca:f584:: with SMTP id t126mr152044oih.132.1582739606598; Wed, 26 Feb 2020 09:53:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582739606; cv=none; d=google.com; s=arc-20160816; b=b4mh7fkwevJBujZ9zwyS/xDYT5OI9Vim/WVsQuWShEWAX33iukB5KYRlnQbBNxoCVj qRMZPAbOVgqqQnOmltS6PWUAh431l+RZxJZ90fy1QlY8Agg7WAyGsuGXM4v4cukisFaG SQfbK7aKiM7cokXIAvQhhR8AJ9lD8wikQZhHmUBDcw19i5ZDpVg3ldv45BY2d/VAMp1y ykhm0Pr31B7+YfKQeETCcDKuQORDI5SmYPFPFxSxtVve4Ors+EDP82UHr5muaDNO2Bcl xXUULiErBPiMAgpCEYQhLqeVRL/mxlNQWHKkIVzUaGdIR26YzgbOyfQoX4LL12rkIPoZ UNaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=dowcxCTMSu1KV7TGHl6W2XJU2u2tam9kWD+314ySVGE=; b=iBZlEpTCiQdI6hhE6461TRXp2MtXt8IHLnYyz9oPEnIR20NSfUH15gd/VpmoPR8qOG 83ymaeatScDkZ4OQQ51maBydFj0ryBw9bHEJ841s8M4T8Px6Y3xowffMrJ1ceMp1KNg/ WGkIBl1k4JJ3Uxv+rr4hpvctBSu+3I5K9jGkRlvNtw1X/MWZ00CDRxxYjo/ZnqsC2kuJ XHDiwRsQYLJV0GmrpNCl7cxeRTsyI+zw+JYZW6989KpBnBlqNcrkknASrTFNAhxFisXK w7tEDtfaeYC6qavdJmblISy2Yj/gWqkDFcOMRWb/0O4FSdEMP8Omk2BFTdX6WYX44ywx EJYg== 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 w13si1972oiw.106.2020.02.26.09.53.14; Wed, 26 Feb 2020 09:53:26 -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 S1727067AbgBZRvl (ORCPT + 99 others); Wed, 26 Feb 2020 12:51:41 -0500 Received: from smtp1.de.adit-jv.com ([93.241.18.167]:34647 "EHLO smtp1.de.adit-jv.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726891AbgBZRvl (ORCPT ); Wed, 26 Feb 2020 12:51:41 -0500 Received: from localhost (smtp1.de.adit-jv.com [127.0.0.1]) by smtp1.de.adit-jv.com (Postfix) with ESMTP id C7C2D3C0579; Wed, 26 Feb 2020 18:51:39 +0100 (CET) Received: from smtp1.de.adit-jv.com ([127.0.0.1]) by localhost (smtp1.de.adit-jv.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 65-82Hnu9-xs; Wed, 26 Feb 2020 18:51:34 +0100 (CET) Received: from HI2EXCH01.adit-jv.com (hi2exch01.adit-jv.com [10.72.92.24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by smtp1.de.adit-jv.com (Postfix) with ESMTPS id A53E73C005E; Wed, 26 Feb 2020 18:51:34 +0100 (CET) Received: from lxhi-065.adit-jv.com (10.72.93.66) by HI2EXCH01.adit-jv.com (10.72.92.24) with Microsoft SMTP Server (TLS) id 14.3.468.0; Wed, 26 Feb 2020 18:51:34 +0100 From: Eugeniu Rosca To: Alan Stern , , CC: Greg Kroah-Hartman , Thinh Nguyen , "Lee, Chiasheng" , Mathieu Malaterre , Kai-Heng Feng , Eugeniu Rosca , Eugeniu Rosca , Subject: [PATCH v3 2/3] usb: core: hub: do error out if usb_autopm_get_interface() fails Date: Wed, 26 Feb 2020 18:50:35 +0100 Message-ID: <20200226175036.14946-2-erosca@de.adit-jv.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200226175036.14946-1-erosca@de.adit-jv.com> References: <20200226175036.14946-1-erosca@de.adit-jv.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-Originating-IP: [10.72.93.66] Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Reviewing a fresh portion of coverity defects in USB core (specifically CID 1458999), Alan Stern noted below in [1]: On Tue, Feb 25, 2020 at 02:39:23PM -0500, Alan Stern wrote: > A revised search finds line 997 in drivers/usb/core/hub.c and lines > 216, 269 in drivers/usb/core/port.c. (I didn't try looking in any > other directories.) AFAICT all three of these should check the > return value, although a error message in the kernel log probably > isn't needed. Factor out the usb_remove_device() change into a standalone patch to allow conflict-free integration on top of the earliest stable branches. [1] https://lore.kernel.org/lkml/Pine.LNX.4.44L0.2002251419120.1485-100000@iolanthe.rowland.org Fixes: 253e05724f9230 ("USB: add a "remove hardware" sysfs attribute") Cc: stable@vger.kernel.org # v2.6.33+ Suggested-by: Alan Stern Signed-off-by: Eugeniu Rosca --- v3: - Newly submitted --- drivers/usb/core/hub.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 1105983b5c1c..54cd8ef795ec 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -988,13 +988,17 @@ int usb_remove_device(struct usb_device *udev) { struct usb_hub *hub; struct usb_interface *intf; + int ret; if (!udev->parent) /* Can't remove a root hub */ return -EINVAL; hub = usb_hub_to_struct_hub(udev->parent); intf = to_usb_interface(hub->intfdev); - usb_autopm_get_interface(intf); + ret = usb_autopm_get_interface(intf); + if (ret < 0) + return ret; + set_bit(udev->portnum, hub->removed_bits); hub_port_logical_disconnect(hub, udev->portnum); usb_autopm_put_interface(intf); -- 2.25.1