usbtmc makes Rigol DS1052E oscilloscope crash

From: Johannes Bauer
Date: Tue May 25 2010 - 13:34:17 EST


Hi folks,

I'm experiencing trouble connecting to a Rigol DS1052E oscilloscope via
the usbtmc USB class driver. When requesting small amounts of data it
works quite nicely, but when requesting a large chunk (i.e. when
requesting the whole memory to be transferred), the read aborts, the
connection times out and ultimately this leads to the oscilloscope crashing.

The commands I'm executing in the example I have provided are:

Cmd: *IDN?
Rigol.Technologies,DS1052E,DS1ED120100155,00.02.04.00.00
Cmd: :WAVEFORM:POINTS:MODE?
MAXIMUM
Cmd: :RUN
Cmd: :FORC
Cmd: :CHAN1:MEMD?
1048576
Cmd: :WAV:DATA?

After the ":WAV:DATA?" command, the oscilloscope crashes, here's how it
looks before for those who are interested:
http://s1.directupload.net/file/d/2169/r3m4l97m_jpg.htm

And after:
http://s10.directupload.net/file/d/2169/egvgv7hq_jpg.htm

I've captured the USB traffic which is going on using usbmon, debugfs
and wireshark, it's a 5kB pcap file:
http://www.file-upload.net/download-2544840/usb_rigol.pcap.html

To further trace the problem, I've patched usbtmc.c to emit some more
debug output. Here's the patch:
http://pastebin.com/fMkA5xSJ

Here's what the extended dmesg output looks after I applied my patch
against 2.6.34 (I annotated it so that it is clear which output is
emitted after which read):
http://pastebin.com/CXRwxxe8

I really hope this can be resolved,
Kind regards,
Johannes
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/