Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp149551pxb; Thu, 21 Apr 2022 19:47:45 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwRyzr00kkXdZPqI77Rd4hzC/ipI33Aikj1PUJw/UZCUGaDTRnKcGqWQiaxrGQKsa6OWS6r X-Received: by 2002:a17:907:2d08:b0:6f0:2c6b:df52 with SMTP id gs8-20020a1709072d0800b006f02c6bdf52mr2028096ejc.210.1650595665095; Thu, 21 Apr 2022 19:47:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650595665; cv=none; d=google.com; s=arc-20160816; b=N5+DvXCM0YSPuo6sTwzZrpo83zJ91K9kUfcRIcAGUGNyTeuA0KXXvbFsjEP3jPtMkW 8a8vtZAMf9jn8BF0jc7AVQaYaUNEP7QG/FYsULTjRyPn9EOYKybHT/psvjPjsIt7OTYq MgdUeeEOEtiw3T6h5MEuXHhN/7kb2qEUZadgPk54DEr2GuU3iVBKBVz2ekPmTR9v3A2d xpPLuBl1Pop+r2geBpmdHv9BbrHkJnhXJ19MP+8OhrKFbH5jDnimW7RFiDXPpuAr8jOi nU0xhxj8bgaB1g0jXr3HIEnvggdWfVzxYqJFzrfC1O5vqOkEzM88s5qc7bCfbrf2pW58 b5BQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=Hr7T5tKxVFrlyFk7YSDxR/6TVO3oJVuzyYVCYX1Zvk0=; b=BMK+DnHvJwMnRzRkhRNhYDan+wDxYbCcPIsaqprgnuE7adud+tlYUbOUJ0T7CxtAyb WIn7dJaVrBwwXTIupZRSpujSkqtfKJdvVO/kqQR+Zic/KYFmJR5KG8MSszAY/kOTEv81 wHTP5v8P3DcRn2MtVt5HftCHqMdsvifjUJzL8iL3+fyCBiTHU06HjJHs8IfJr9P661wb Svn4gbjLdXREgpeBfrj/WrDSiZu9Kj5XWJdXd3LgeEnDnGQmTkKiqdShL/OnhzEySSis q8PFFZd/eWB8+ZxW5cIVY6BEzr7oeK0KeJsisLViBQY6yY/u92zLPEAal/yV8AP24dhF LvvA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id rp17-20020a170906d97100b006e88058a7dasi5069405ejb.295.2022.04.21.19.47.21; Thu, 21 Apr 2022 19:47:44 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1356072AbiDSRwA (ORCPT + 99 others); Tue, 19 Apr 2022 13:52:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57248 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1356061AbiDSRv6 (ORCPT ); Tue, 19 Apr 2022 13:51:58 -0400 Received: from netrider.rowland.org (netrider.rowland.org [192.131.102.5]) by lindbergh.monkeyblade.net (Postfix) with SMTP id 5D1BE11A1A for ; Tue, 19 Apr 2022 10:49:15 -0700 (PDT) Received: (qmail 600832 invoked by uid 1000); 19 Apr 2022 13:49:14 -0400 Date: Tue, 19 Apr 2022 13:49:14 -0400 From: Alan Stern To: Oliver Neukum Cc: Evan Green , Greg Kroah-Hartman , Thomas Gleixner , Mathias Nyman , Rajat Jain , Bjorn Helgaas , "Rafael J. Wysocki" , Razvan Heghedus , Wei Ming Chen , Youngjin Jang , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Subject: Re: [PATCH v2 0/2] USB: Quiesce interrupts across pm freeze Message-ID: References: <20220418210046.2060937-1-evgreen@chromium.org> <9f2752b5-8717-8ea3-1462-69bcfe42bb0e@suse.com> <8321b2c6-5bdb-2853-6812-50cd4e4d1bc7@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <8321b2c6-5bdb-2853-6812-50cd4e4d1bc7@suse.com> X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no 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 On Tue, Apr 19, 2022 at 05:51:38PM +0200, Oliver Neukum wrote: > > > On 19.04.22 16:35, Alan Stern wrote: > > On Tue, Apr 19, 2022 at 09:05:53AM +0200, Oliver Neukum wrote: > > > > > > We have a set of quirky devices that need HID_QUIRK_ALWAYS_POLL. > > They have the nasty firmware bug that, if you suspend them without > > remote wakeup, they will crash or reset themselves. > > I am afraid that has an obvious relevance to your cool patches. > > I am not completely sure how to deal with this. It seems to me that the > > quirk will need to be shifted from HID to core USB and thaw() needs to > > be translated into usb_device_reset() + reset_resume() for them, > > but I am not really sure about the optimal mechanism. > > We may not need to do anything. This patch specifically addresses > > hibernation, not system suspend or runtime suspend. A device crashing > > or resetting during hibernation is not at all unusual; we should be able > > to handle such cases properly. > > > > The THAW part of suspend-to-hibernation is used only for writing the > > memory image to permanent storage. I doubt that a malfunctioning HID > > device would interfere with this process. > > > True, if and only if all goes well. At the time thaw() has run writing > the image to disk can still fail. In that case the devices will still > be needed. Consider adding a mechanism to usbcore which would allow an interface driver to request that the next time its device is resumed, the core should perform a reset-resume. Would that help? Alan Stern