From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF101C43381 for ; Fri, 5 Mar 2021 16:08:30 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 73FC765079 for ; Fri, 5 Mar 2021 16:08:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229517AbhCEQH5 (ORCPT ); Fri, 5 Mar 2021 11:07:57 -0500 Received: from netrider.rowland.org ([192.131.102.5]:43041 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S230034AbhCEQH3 (ORCPT ); Fri, 5 Mar 2021 11:07:29 -0500 Received: (qmail 41316 invoked by uid 1000); 5 Mar 2021 11:07:28 -0500 Date: Fri, 5 Mar 2021 11:07:28 -0500 From: Alan Stern To: Sedat Dilek Cc: Mathias Nyman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Greg Kroah-Hartman Subject: Re: [xhci] usb 4-1: reset SuperSpeed Gen 1 USB device number 2 using xhci_hcd Message-ID: <20210305160728.GE38200@rowland.harvard.edu> References: <20210301155321.GA1490228@rowland.harvard.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Mar 05, 2021 at 01:09:16PM +0100, Sedat Dilek wrote: > On Mon, Mar 1, 2021 at 4:53 PM Alan Stern wrote: > [ ... ] > > You can use usbmon on bus 4 to record the USB traffic. It may indicate > > why the resets occur. > > > > Hi Alan, > > I followed the instructions in [1]. > > root# modprobe -v usbmon > > root# ls /sys/kernel/debug/usb/usbmon > 0s 0u 1s 1t 1u 2s 2t 2u 3s 3t 3u 4s 4t 4u > > root# cat /sys/kernel/debug/usb/usbmon/4u > /tmp/usbmon-log_4u.txt > [ Ctrl+C ] > > I recorded 13:03 - 13:04 (one minute). > > So these xhci-resets should be included: > > [Fri Mar 5 13:03:07 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:07 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:27 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:27 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:27 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:28 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > [Fri Mar 5 13:03:28 2021] usb 4-1: reset SuperSpeed Gen 1 USB device > number 2 using xhci_hcd > > The usbmon-log is attached. > > Unsure how to interpret the log - the kernel-doc says `raw data`. > How can I bring this into a human-readable format? > Can you give me a hand? Don't worry about trying to decode the output. To me it looks like the drive crashes and needs to be reset at times when the computer sends it an ATA command. (Not all ATA commands, but some.) You can prevent this by setting the following module parameter for the usb-storage driver: quirks=174c:55aa:t where the two numbers are the Vendor and Product IDs for the external drive, and the 't' is a quirks flag saying not to use any ATA commands. If this module parameter fixes the problem, we can add a permanent quirk setting to the kernel. Alan Stern