Hi all.

Starting with kernel 2.6.16 I observe a strange behaviour of my usb modem
(Zyxel omni56k uno). Some characters (and sometimes pairs of characters)
read from modem are duplicated, like this:

Apr 19 22:52:23 lav chat[2153]: CONNECCT 4608800/V..9292 506666/V44^M

I have turned on debug in cdc-acm driver, added tty_insert_flip_string
debug print, and got this for the above CONNECT line:

Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: Entering acm_read_bulk 
with status 0
Apr 19 22:52:23 lav last message repeated 8 times
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: Entering acm_rx_tasklet
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1bc, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc20c, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(O)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1d0, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc248, size = 2
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(NN)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc298, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(E)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc2ac, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(C)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc180, size = 2
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(CT)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc284, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1a8, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string( )
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f6220, rcv 0xdf0dc0a4, buf 0xdf0dc1a8
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f62a0, rcv 0xdf0dc090, buf 0xdf0dc284
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f6320, rcv 0xdf0dc07c, buf 0xdf0dc180
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f63a0, rcv 0xdf0dc068, buf 0xdf0dc2ac
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f6420, rcv 0xdf0dc054, buf 0xdf0dc298
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf7d8440, rcv 0xdf0dc040, buf 0xdf0dc248
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf7d8cc0, rcv 0xdf0dc16c, buf 0xdf0dc1d0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf1f65a0, rcv 0xdf0dc158, buf 0xdf0dc20c
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
sending urb 0xdf7d8d40, rcv 0xdf0dc144, buf 0xdf0dc1bc
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: Entering acm_read_bulk 
with status 0
Apr 19 22:52:23 lav last message repeated 11 times
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: Entering 
acm_rx_taskletApr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
acm_rx_tasklet: procesing buf 0xdf0dc194, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc25c, size = 2
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(46)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc270, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(0)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc220, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(8)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc234, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(8)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1e4, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1f8, size = 2
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(00)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc1a8, size = 0
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string()
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc284, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(/)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc180, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(V)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc2ac, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(.)
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: acm_rx_tasklet: 
procesing buf 0xdf0dc298, size = 1
Apr 19 22:52:23 lav kernel: drivers/usb/class/cdc-acm.c: 
tty_insert_flip_string(.)

It appears that the duplicate data are coming from a lower level of usb
drivers, but I have not taken a look there yet.

I hope this information would be useful for finding the bug.

-- 
   Alexander.


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Linux-usb-users@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to