Re: [xhci] usb 4-1: reset SuperSpeed Gen 1 USB device number 2 using xhci_hcd

From: Alan Stern
Date: Sun Mar 07 2021 - 12:07:58 EST


On Sun, Mar 07, 2021 at 05:57:39PM +0100, Sedat Dilek wrote:
> On Sun, Mar 7, 2021 at 4:46 PM Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Sat, Mar 06, 2021 at 09:49:00PM +0100, Sedat Dilek wrote:
> >
> > > For testing purposes, I stopped these systemd services:
> > >
> > > 1. systemctl stop smartmontools.service
> > >
> > > 2. systemctl stop udisks2.service
> > >
> > > Last seen xhci-reset:
> > >
> > > [Sat Mar 6 21:37:40 2021] SCSI ioctl error, cmd 85, prog pool-udisksd
> > >
> > > So, that every 10min xhci-reset was caused by pool-udisksd from udisks2.service.
> >
> > You have found the cause of your problem! Great!
> >
> > And now, obviously order to fix the problem, you'll have to look into
> > the udisks2 service. Maybe you can configure it so that it won't send
> > the problem-causing commands.
> >
>
> I tried yesterday to add --debug option to the ExexStart line of
> udisks2.service, but did not see anything helpful.
>
> There exist more user-space than udisks2 causing these xhci-resets.
> The cmd#s are also clear: A1 and 85 - whatever they mean.

Those are the two prefixes which indicate an ATA command is present.
You can find them listed as ATA_12 and ATA_16 in
include/scsi/scsi_proto.h.

> As said with Linux v5.10.y and Linux v5.11 I have not seen this.

Have you tried setting the quirk flag we discussed earlier _and_ turning
off udisks2? Maybe also turning off the other services which generate
these commands? Perhaps you'll find that when the quirk flag is
present, some of those programs _don't_ generate any ATA commands.

> What about CCing linux-block and linux-scsi people?

Sure, go ahead if you want to.

Alan Stern