Re: ftdi_sio occasionally hangs in close()

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

 



On Tue, 31 Jan 2012, Ross Ryles wrote:

> I've attached the output from usbmon.  The complete log for ~11
> seconds is bzip2ed.  The device is opened and closed 6 times with a 1
> second pause between each.  I've also attached a grep of just the
> control messages.
> 
> To me, the last close (when it hangs) looks identical to all the others.

No, it is not identical.  Here's the first close:

ffff8800b638dc00 2692516721 S Bi:4:002:1 -115 512 <
ffff8800b4f27540 2692516868 S Co:4:002:0 s 40 02 0000 0000 0000 0
ffff8800b638dc00 2692517719 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2692517721 S Bi:4:002:1 -115 512 <
ffff8800b4f27540 2692518719 C Co:4:002:0 0 0
ffff8800b638dc00 2692518723 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2692518724 S Bi:4:002:1 -115 512 <
ffff8800b4f27540 2692518726 S Co:4:002:0 s 40 01 0300 0000 0000 0
ffff8800b638dc00 2692519719 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2692519721 S Bi:4:002:1 -115 512 <
ffff8800b638dc00 2692520718 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2692520720 S Bi:4:002:1 -115 512 <
ffff8800b4f27540 2692521719 C Co:4:002:0 0 0
ffff8800b638dc00 2692521723 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2692521724 S Bi:4:002:1 -115 512 <
ffff8800b638dc00 2692522719 C Bi:4:002:1 -2 2 = 0170

And here's the last one:

ffff8800b638dc00 2702189539 S Bi:4:002:1 -115 512 <
ffff8800b638dc00 2702190537 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2702190538 S Bi:4:002:1 -115 512 <
ffff8800b638dc00 2702191537 C Bi:4:002:1 0 2 = 0170
ffff8800b638dc00 2702191539 S Bi:4:002:1 -115 512 <
ffff8800b4f27000 2702586670 S Co:4:002:0 s 40 02 0000 0000 0000 0
ffff8800b4f27000 2702588538 C Co:4:002:0 0 0
ffff8800b4f27000 2702588547 S Co:4:002:0 s 40 01 0300 0000 0000 0
ffff8800b4f27000 2702591537 C Co:4:002:0 0 0

Ignore the control transfers and look at the bulk-IN transfers.  
During the first close, every bulk-IN submission is followed by a
bulk-IN completion, and the last completion's status value is -2,
indicating the transfer was killed.  But in the last close, we have a
bulk-IN submission with no later completion.  That's the problem.

In fact, we start to see missing completions almost 400 ms before the 
final close.  That's quite a long time and it suggests that your 
controller stopped working properly well before the port was closed.  

This certainly seems to be a hardware problem in your controller.  Does 
the same thing happen if you plug the serial device into a different 
port (one on bus 3 instead of bus 4)?  What about using the serial 
device on a different computer?

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux