On Wed, 1 Jun 2011, Soho Soho123 wrote: > Dear Alan, > > Do you have idea about parser of usbmon output? > Since I just can see the timestamp about submit and complete. > How to check the size the you montioned? Here's how to parse the usbmon output. An example line from the file you sent: 81631400 1927322448 S Zi:1:002:1 -150:1:800 32 -18:0:3072 -18:3072:3072 -18:6144:3072 -18:9216:3072 -18:12288:3072 98304 < "81631400" is the URB address. "1927322448" is the timestamp. The last 6 digits are fractions of a second so this means 1927.322448 seconds. "S" means this was an URB submission. "Zi:1:002:1" means Isochronous in, bus 1, device 2, endpoint 1. "-150:1:800" The -150 and 800 numbers are meaningless because this is a submission. The 1 is the period (1 microframe). "32" means the URB has 32 iso_packet_descriptors (of which only the first 5 are shown by usbmon). "-18:0:3072" The first number (-18) in each packet descriptor is meaningless for submissions. The other numbers are the offset (0) and length (3072) of the packet data in the transfer buffer. "98304" is the total length of the transfer buffer. "<" means there is no data to display because this is the submission of an In transfer. Another example: 81631400 1927342448 C Zi:1:002:1 0:1:960:0 32 0:0:12 0:3072:12 0:6144:12 0:9216:12 0:12288:12 384 D Again, "81631400" is the URB address and "1927342448" is the timestamp. The "C" means this was an URB completion. Again, "Zi:1:002:1" means Isochronous in, bus 1, device 2, endpoint 1. "0:1:960:0" means the URB status was 0 (no errors), the period is 1 microframe, the starting microframe was 960, and none of the individual packets had any errors. Again, "32" means there are 32 packet descriptors (of which only the first five are shown). "0:0:12" In these packet descriptors, the first number is an error code (0 means no errors), the second number is the offset in the transfer buffer, and the third number is the actual packet length. (I said earlier that the actual length was 18, but this was wrong -- the actual length was 12.) "384" is the total number of bytes transferred. "D" means the actual data could not be displayed because usbmon did not know the transfer buffer's address. 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