Re: Blackberry regression

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

 



On Wed, 2009-02-25 at 12:18 -0700, Pete Zaitcev wrote:

> You need to interrupt it to get strace to write out the output.
> The attachment was truncated:
> 
> gettimeofday({1235547424, 341658}, NULL) = 0
> ioctl(3, USBDEVFS_REAPURBNDELAY, 0xbfd69bf8) = 0
> futex(0x8106964, FUTEX_WAIT_PRIVATE, 5, NULL) = 0
> futex(0x8106948, FUTEX_WAIT_PRIVATE, 2, NULL) = 0
> futex(0x8106948, FUTEX_WAKE_PRIVATE, 1) = 0
> gettimeofday({1235547424, 342853}, NULL) = 0
> ioctl(3, USBDEVFS_SUBMITURB, 0xbfd699a4) = 0
> ioctl(3, USBDEVFS_REAPURBNDELAY, 0xbfd699e8) = 0
> futex(0x8106964, FUTEX_WAIT_PRIVATE, 7, NULL    <------------ here
> 
> What survived was not consistent with the previously posted usbmon
> log in any way. It would be best to get both from the same run.
> Also, strace -tt should help to corellate the events (usbmon does
> not print the absolute time as strace, but we can subtract stamps
> and see which event is which).

Because I feel this is a timing issue, I regret to inform you that the
attached traces exhibit correct behavior when both usbmon and strace are
run together. Thus so, however the file may yield some clues.
Immediately running the command "btool -t" in the same window where I
previously ran "strace -tt -o <file> btool -t" concurrently with the
usbmon exhibits the same failure.


> 
> I'm wondering why Chris needs to use REAPURBNDELAY for
> a non-interactive tool, especially by one which also uses futex!

I don't believe he does. It's libusb.  The code calls through a small
object called USBWRAP which just wraps the exposed interfaces to libusb.
The call goes to the libusb "usb_bulk_write" function which then calls
usb_urb_transfer. That function is the owner of the calls to
REAPURBNDELAY.

--
Paul

Attachment: traces.tar.bz2
Description: application/bzip-compressed-tar


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

  Powered by Linux