Hi, I have problems with cdc-acm killing ohci. I tried to narrow down the problem, but didn't get far. Basically `killall -HUP pppd` gives (in dmesg): drivers/usb/class/cdc-acm.c: acm_ctrl_irq - urb shutting down with status: -2 ohci_hcd 0001:01:1b.1: OHCI Unrecoverable Error, disabled ohci_hcd 0001:01:1b.1: HC died; cleaning up usb 4-1: USB disconnect, address 2 bus usb: remove device 4-1:1.0 bus usb: remove device 4-1:1.1 bus usb: remove device 4-1 I modified cdc-acm.c according to the attached patch, and noticed there may be a buffer overflow: after applying this patch, `dmesg|grep high` gives: drivers/usb/class/cdc-acm.c: databits index too high: 48 drivers/usb/class/cdc-acm.c: databits index too high: 48 drivers/usb/class/cdc-acm.c: databits index too high: 48 drivers/usb/class/cdc-acm.c: databits index too high: 48 drivers/usb/class/cdc-acm.c: databits index too high: 48 I'm on a Mac (big-endian). Maybe an endianness issue ? My patch doesn't solve any problem, but maybe exposes one. By the way, what's the difference between cpu_to_le32p() and cpu_to_le32() ? I'm wondering because of the newline.speed = cpu_to_le32p(...) line (537). Thanks, -- Colin