RE: Bugs: usb serial crash when close second comport

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear mr Johan Hovold <johan@xxxxxxxxxx>
After the bug occur, when open or close device it show on log of system:

failed set request 0x12 status: -110
failed set request 0x00 status: -110
failed set request 0x00 status: -110

0x00 = enable or disable serial device USB request.
0x12 = flush serial device USB request.
-110 = time out.

it means driver is not crashes but it can't open or close device any more.
We may find mainline kernel of raspberry if have, and find the driver of USB they use in next days.
Thanks.

-----Original Message-----
From: Johan Hovold <johan@xxxxxxxxxx> 
Sent: Tuesday, February 2, 2021 3:32 PM
To: Tung Pham <Tung.Pham@xxxxxxxxxx>
Cc: Hung Nguyen <Hung.Nguyen@xxxxxxxxxx>; linux-usb@xxxxxxxxxxxxxxx; Pho Tran <Pho.Tran@xxxxxxxxxx>
Subject: Re: Bugs: usb serial crash when close second comport

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.


On Tue, Feb 02, 2021 at 03:50:50AM +0000, Tung Pham wrote:

> > Can you reproduce this with a mainline kernel?
> >
> > Otherwise, you may need to bring this up with Ubuntu.
>
> this bug doesn't occur on Ubuntu running on pc, it only occur on 
> raspberry.

I understand, but if you can only reproduce this using a Ubuntu kernel on the RPi it could be to something that they've put in their kernel's (e.g. some out-of-tree driver) which doesn't exist in mainline. That's why you need to be able to reproduce it on a mainline kernel.

> One additional thing: the bug doesn't occur with HUB: Orico, model 
> W6ph4-u3-v1, Manufacture: VIA Labs, inc.
> It only occur with hub: HB-UM43 hub, Genesys Logic, Inc.

Ok, so depending on if the kernel crashes or not, it could still be a bug in the hub firmware.

> > This sounds like you could have a problem with the host-controller 
> > driver. What controller is the RPi4 using?
>
> For the Pi 4, a fully-featured host controller drives the downstream 
> USB ports. Downstream USB is provided by a Via Labs VL805 chip - that 
> supports two USB 2.0 ports and two USB 3.0 ports

Which driver does it use? I believe some of the earlier RPi used an out-of-tree host-controller driver, but perhaps that's no longer the case.

> > As you write above, the usb_serial_generic_close() is needed to 
> > cancel the outstanding URBs during close so you can't remove that.
> >
> > But my guess is that something breaks in the HCD when unlinking 
> > those URBs when connected through the hub. Do you have a stack trace 
> > from an oops? Or do things just lock up?
>
> I don't know how to capture stack trace?

If the kernel oopses/crashes (e.g. due to a bug in the driver) you should find a stack trace in the kernel log (e.g. run dmesg).

But if the USB bus just locks up (until you disconnect the hub or device, or reload the USB serial driver), then this could also be a firmware bug in the host-controller or hub.

Johan




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux