[Bugme-new] [Bug 4407] New: cdc_acm oops on audiovox 9900 if usb disconnect while in pppd call

bugme-daemon at osdl.org bugme-daemon at osdl.org
Sat Mar 26 18:32:37 PST 2005


http://bugme.osdl.org/show_bug.cgi?id=4407

           Summary: cdc_acm oops on audiovox 9900 if usb disconnect while in
                    pppd call
    Kernel Version: 2.6.10, 2.6.11-mm1
            Status: NEW
          Severity: normal
             Owner: greg at kroah.com
         Submitter: mda2376 at rit.edu


Distribution:
Gentoo Linux

Hardware Environment:
Pentium 4 M, 786mb ram, and
Dual P4 Xeon 2.4ghz, 1.5gb ram 

Software Environment:
pppd version 2.4.2
devfs

Problem Description:
The Audiovox 9900 cellphone from Verizon can be used to make a data call as
a usb acm modem.  If while pppd is in a call and the cellphone is disconnected
the kernel oops' with the following dmsg output (in this case the phone has
reset itself):

usb 1-1.3: USB disconnect, address 13
Unable to handle kernel NULL pointer dereference at virtual address 00000000
 printing eip:
c0243b5b
*pde = 00000000
Oops: 0000 [#1]
PREEMPT SMP
Modules linked in: msdos fat ppp_deflate zlib_deflate zlib_inflate bsd_comp
ppp_async cr c_ccitt ppp_generic slhc ipt_MASQUERADE ipt_LOG ipt_state
iptable_nat ip_conntrack iptab le_filter ip_tables nvidia vmnet vmmon
snd_seq_midi snd_emu10k1_synth snd_emux_synth snd _seq_virmidi snd_seq_midi_emul
snd_pcm_oss snd_mixer_oss snd_seq_oss snd_seq_midi_event snd_seq snd_emu10k1
snd_rawmidi snd_seq_device snd_ac97_codec snd_pcm snd_timer snd_page _alloc
snd_util_mem snd_hwdep snd soundcore cdc_acm
CPU:    0
EIP:    0060:[<c0243b5b>]    Tainted: P      VLI
EFLAGS: 00010246   (2.6.11-mm1)
EIP is at get_kobj_path_length+0x1a/0x31
eax: 00000000   ebx: 00000000   ecx: ffffffff   edx: f64745b8
esi: 00000001   edi: 00000000   ebp: ffffffff   esp: e7819d7c
ds: 007b   es: 007b   ss: 0068
Process pppd (pid: 26671, threadinfo=e7818000 task=c295e530)
Stack: f57ccc53 f6474594 f55c2218 f64745b8 c0243be0 f64745b8 00000286 00000000
       00000000 f57ccc53 f6474594 f55c2218 000003ad c02c8167 f64745b8 000000d0
       c047f928 00000246 f565fb20 ffffffff ffffffff fffffffd c047fc00 00000000
Call Trace:
 [<c0243be0>] kobject_get_path+0x1f/0x77
 [<c02c8167>] class_hotplug+0xb3/0x235
 [<c02447c3>] kobject_hotplug+0x1d8/0x2e4
 [<c024403e>] kobject_release+0x0/0xa
 [<c0243f52>] kobject_del+0x18/0x2d
 [<c02c8680>] class_device_del+0xae/0xba
 [<f886e419>] acm_tty_close+0x0/0x102 [cdc_acm]
 [<c02c869c>] class_device_unregister+0x10/0x1d
 [<f886e4df>] acm_tty_close+0xc6/0x102 [cdc_acm]
 [<c02903ce>] release_dev+0x6ec/0x825
 [<c0116e4a>] finish_task_switch+0x3a/0xb7
 [<c03cd041>] schedule+0x389/0xba8
 [<c012609f>] del_timer_sync+0x94/0xda
 [<c02965ea>] inotify_dentry_parent_queue_event+0x35/0xb5
 [<c0126106>] del_singleshot_timer_sync+0x21/0x32
 [<c03ce27e>] schedule_timeout+0x75/0xbb
 [<c0290a01>] tty_release+0x14/0x1f
 [<c0161d31>] __fput+0x16d/0x1a6
 [<c0160259>] filp_close+0x52/0x96
 [<c0160307>] sys_close+0x6a/0x91
 [<c01030f5>] syscall_call+0x7/0xb
Code: ff 85 c0 89 c3 74 e4 89 34 24 e8 be 57 f5 ff eb da 55 bd ff ff ff ff 57 56
be 01 0 0 00 00 53 31 db 8b 54 24 14 8b 3a 89 e9 89 d8 <f2> ae f7 d1 49 8b 52 24
8d 74 31 01 85 d2 75 ea 5b 89 f0 5e 5f <6>usb 1-1.3: new full speed USB device
using uhci_hcd and address 14
cdc_acm 1-1.3:1.0: ttyACM1: USB ACM device


If pppd is stopped properly and then the phone is disconnected, there are no
problems.  I have recreated this problem on several different 2.6 kernels
including kernels not tainted by binary only modules (nvidia and vmware).  The
vmware vm is not active at the time of this oops.


Following is lsmod output after above oops:

Module                  Size  Used by
msdos                   8064  0
fat                    35996  1 msdos
ppp_deflate             5376  0
zlib_deflate           22296  1 ppp_deflate
zlib_inflate           17664  1 ppp_deflate
bsd_comp                5888  0
ppp_async              10112  1
crc_ccitt               2304  1 ppp_async
ppp_generic            27412  3 ppp_deflate,bsd_comp,ppp_async
slhc                    6656  1 ppp_generic
ipt_MASQUERADE          3200  1
ipt_LOG                 6784  1
ipt_state               2048  1
iptable_nat            20028  2 ipt_MASQUERADE
ip_conntrack           37832  3 ipt_MASQUERADE,ipt_state,iptable_nat
iptable_filter          2688  1
ip_tables              21120  5
ipt_MASQUERADE,ipt_LOG,ipt_state,iptable_nat,iptable_filter
nvidia               3916700  12
vmnet                  28580  2
vmmon                 169292  0
snd_seq_midi            7072  0
snd_emu10k1_synth       7296  0
snd_emux_synth         35200  1 snd_emu10k1_synth
snd_seq_virmidi         6528  1 snd_emux_synth
snd_seq_midi_emul       7296  1 snd_emux_synth
snd_pcm_oss            48672  0
snd_mixer_oss          17536  1 snd_pcm_oss
snd_seq_oss            32256  0
snd_seq_midi_event      6912  3 snd_seq_midi,snd_seq_virmidi,snd_seq_oss snd_seq
               50960  8
snd_seq_midi,snd_emux_synth,snd_seq_virmidi,snd_seq_midi_emul,snd_seq_oss,snd_seq_midi_event
snd_emu10k1           102788  3 snd_emu10k1_synth
snd_rawmidi            20640  3 snd_seq_midi,snd_seq_virmidi,snd_emu10k1
snd_seq_device          7436  7
snd_seq_midi,snd_emu10k1_synth,snd_emux_synth,snd_seq_oss,snd_seq,snd_emu10k1,snd_rawmidi
snd_ac97_codec         73720  1 snd_emu10k1
snd_pcm                82436  3 snd_pcm_oss,snd_emu10k1,snd_ac97_codec
snd_timer              21892  3 snd_seq,snd_emu10k1,snd_pcm
snd_page_alloc          8068  2 snd_emu10k1,snd_pcm
snd_util_mem            3968  2 snd_emux_synth,snd_emu10k1
snd_hwdep               7584  2 snd_emux_synth,snd_emu10k1 snd                 
  46564  17
snd_emux_synth,snd_seq_virmidi,snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq,snd_emu10k1,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm,snd_timer,snd_hwdep
soundcore               8160  1 snd
cdc_acm                10400  2



Steps to reproduce:
1. connect audiovox 9900 cellphone 
2. make a data call using pppd
3. cause a usb disconnect, either by the phone resetting, powering off or
unplugging the usb cable

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the Bugme-new mailing list