Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp827687imu; Tue, 20 Nov 2018 07:34:02 -0800 (PST) X-Google-Smtp-Source: AFSGD/WTBUQQI1SNrhDkoSnfAqleP3M3UAYJ1APtY+WOo5Sq+pOquKgVR7ouzFcrFqAZnZ+1NE4C X-Received: by 2002:a17:902:1e9:: with SMTP id b96mr2718439plb.150.1542728042110; Tue, 20 Nov 2018 07:34:02 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542728042; cv=none; d=google.com; s=arc-20160816; b=vj7x1AYhYNaCH8cprteluxPBpvM8/4EIqcrSOXQcf9ITetTKmtxbpGRB+wVmslwS4s +Vr8gNhZ5/29W1OwxDWTqq7fbiq6ioasyQRat/yhicA12L2hhGMGIq1ISWM8p9uN/VZ1 1+qx45VucHLka3bbqgJYD1XYn7+FIcsy9dd/R4FMObgPjuyShiBQ/vcnEKcoRRoTDkza Fn/Ee5YyXvnWSTw4Y6rj7loaiDkC0YxxScopnaUQqimeLhM99cwmfuhHHacFldaLw17C jpP6emK++E+fLuGufm8RIZUywowm6sASWwmtM9uTgT3gkSJHQsPeuRG40SbdZvevWycY r4gQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:date:cc:to:from:subject:message-id; bh=/cz7hLuLxRFONJFETI7T4/fw8QlW1mVOPO3lLQNpC9I=; b=c+dcYzYH4kj6ip1jhR+jHBOQ8s2FNp4rYsyymgsAaEfWElZ+ni6k726iC6rro6hsul EmME23cZGE6qa4q5p4bZLrMcKHqsfHeUzIOjJM8ZStBR2iZwmom5MFjPzK4r8xlyt4ff zWrlnzMV0iW8BhPvOtxIskwC97nYtyJRoRHqRRBAYi6LXB2Pg8XDaqmMt8tyuAb9MaBg +4L+rovqUBE5WF/H777nxe3Qoy4wWNhXKHdmloZ25hlgM3DC2EijpaV8QPB4/LyuIkJq eN1sus0RErbmoogpdtM1kszPO3uIqWIc6IPmTB8iOW6wyIVbZj71FcFl6KQ+8haiT7m/ kgaw== 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 k11si44092411pgf.213.2018.11.20.07.33.46; Tue, 20 Nov 2018 07:34:02 -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 S1727547AbeKUBrK (ORCPT + 99 others); Tue, 20 Nov 2018 20:47:10 -0500 Received: from mx2.suse.de ([195.135.220.15]:43232 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725977AbeKUBrK (ORCPT ); Tue, 20 Nov 2018 20:47:10 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 51BB1ACFB; Tue, 20 Nov 2018 15:17:31 +0000 (UTC) Message-ID: <07a6b541f53a68b994f8ee6b1c864e096e1ff8cf.camel@suse.de> Subject: Re: [PATCH v3] usb: hub: add retry routine after intr URB submit error From: Nicolas Saenz Julienne To: Oliver Neukum , stern@rowland.harvard.edu Cc: gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Date: Tue, 20 Nov 2018 16:17:29 +0100 In-Reply-To: <1542725830.28362.12.camel@suse.com> References: <20181120143438.18296-1-nsaenzjulienne@suse.de> <1542725830.28362.12.camel@suse.com> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-Uth/gyW1o5TB7eTHmbf6" User-Agent: Evolution 3.30.2 Mime-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-Uth/gyW1o5TB7eTHmbf6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Oliver, On Tue, 2018-11-20 at 15:57 +0100, Oliver Neukum wrote: > On Di, 2018-11-20 at 15:34 +0100, Nicolas Saenz Julienne wrote: > > The hub sends hot-plug events to the host trough it's interrupt > > URB. The > > driver takes care of completing the URB and re-submitting it. > > Completion > > errors are handled in the hub_event() work, yet submission errors > > are > > ignored, rendering the device unresponsive. All further events are > > lost. > >=20 >=20 > Hi, >=20 > almost. There is no point in kicking of an error handling while aq > reset is underway. You are checking only "quiescing" but not > "in_reset". Anytime "in_reset" is set "quiescing" is also set: static int hub_pre_reset(struct usb_interface *intf) { struct usb_hub *hub =3D usb_get_intfdata(intf); hub_quiesce(hub, HUB_PRE_RESET); //sets quiesce hub->in_reset =3D 1; hub_pm_barrier_for_all_ports(hub); return 0; } static int hub_post_reset(struct usb_interface *intf) { struct usb_hub *hub =3D usb_get_intfdata(intf); hub->in_reset =3D 0; hub_pm_barrier_for_all_ports(hub); hub_activate(hub, HUB_POST_RESET); //clears quiesce return 0; } I should be OK isn't it? Regards, Nicolas >=20 > Regards > Oliver >=20 --=-Uth/gyW1o5TB7eTHmbf6 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEErOkkGDHCg2EbPcGjlfZmHno8x/4FAlv0JYkACgkQlfZmHno8 x/4Vkgf+M3cOBygpH6THEgKd7MV6B/8hSnlI38n8uaf2yY/uljlU/Z5HYh10f6Ms q14xd5ugZLU+ONqhGwnPdnqNs1e0DaRQyeTarByvlV1VSzCkOMiPhpoArnm6Hxu2 +6HZ2M/z3csnd57lyFInsxzu9B9pqrNqduw8nA6dhX6/goR2aBTB7T12DCF7aLBs TBA8QMy5Fkg/1ENPqsV6Tv/POI7ERo3MrSDihOO0LNlzoMHw9TgalQG9N6pJZ1xF /shMBMK20yWQZYh8ilOOz2G+PhpzHDenccUuH84944W6SXdo6BAwgN99BMeZdwVI +aa/mdt3FssPr8mMQU+gk9nd3uXfXw== =LaPc -----END PGP SIGNATURE----- --=-Uth/gyW1o5TB7eTHmbf6--