When I attach the modem (HUAWEI E220) after a fresh boot, then it works as it used to be: The new device is recognized and the relevant modules are loaded (usbserial + option). Network-Manager automatically starts to configure and establish a connection. [ 1316.068074] usb 3-2: new full speed USB device using uhci_hcd and address 2 [ 1316.283294] usb 3-2: configuration #1 chosen from 1 choice [ 1316.302574] Initializing USB Mass Storage driver... [ 1316.315148] usbcore: registered new interface driver usb-storage [ 1316.315152] USB Mass Storage support registered. [ 1316.652096] usb 3-2: USB disconnect, address 2 [ 1316.892058] usb 3-2: new full speed USB device using uhci_hcd and address 3 [ 1317.048319] usb 3-2: configuration #1 chosen from 1 choice [ 1317.066867] usbcore: registered new interface driver usbserial [ 1317.067123] USB Serial support registered for generic [ 1317.070319] usbcore: registered new interface driver usbserial_generic [ 1317.070322] usbserial: USB Serial Driver core [ 1317.071913] USB Serial support registered for GSM modem (1-port) [ 1317.071952] option 3-2:1.0: GSM modem (1-port) converter detected [ 1317.072081] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB0 [ 1317.072092] option 3-2:1.1: GSM modem (1-port) converter detected [ 1317.072148] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB1 [ 1317.072163] usbcore: registered new interface driver option [ 1317.072165] option: v0.7.2:USB Driver for GSM modems [ 1327.648347] PPP BSD Compression module registered [ 1327.651263] PPP Deflate Compression module registered But when I detach the modem, then there is a crash shown in the kernel logs: [ 1403.088136] usb 3-2: USB disconnect, address 3 [ 1403.088668] option: option_instat_callback: error -108 [ 1403.089096] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0 [ 1403.089124] option 3-2:1.0: device disconnected [ 1403.089356] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1 [ 1403.089391] option 3-2:1.1: device disconnected [ 1404.140384] BUG: unable to handle kernel NULL pointer dereference at 0000000000000038 [ 1404.140397] IP: [] serial_do_free+0x42/0x90 [usbserial] [ 1404.140415] PGD 40115067 PUD 401f6067 PMD 0 [ 1404.140424] Oops: 0000 [#1] SMP [ 1404.140431] last sysfs file: /sys/devices/pci0000:00/0000:00:1c.1/0000:0c:00.0/ieee80211/phy0/rfkill2/uevent [ 1404.140437] CPU 0 [ 1404.140441] Modules linked in: ppp_deflate zlib_deflate bsd_comp ppp_async crc_ccitt option usbserial usb_storage binfmt_misc nvidia(P) vboxnetadp vboxnetflt vboxdrv coretemp lp snd_hda_codec_idt snd_hda_intel snd_hda_codec snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event pcmcia snd_seq snd_timer snd_seq_device yenta_socket arc4 ecb snd joydev soundcore rsrc_nonstatic iwl3945 snd_page_alloc pcmcia_core iwlcore mac80211 led_class ppdev dell_wmi dell_laptop cfg80211 parport_pc parport psmouse serio_raw dcdbas sha256_generic aes_x86_64 aes_generic cbc dm_crypt tg3 fbcon tileblit font bitblit softcursor i915 drm i2c_algo_bit video output intel_agp [ 1404.140547] Pid: 4954, comm: pppd Tainted: P 2.6.31-8-generic #28-Ubuntu Latitude D620 [ 1404.140553] RIP: 0010:[] [] serial_do_free+0x42/0x90 [usbserial] [ 1404.140567] RSP: 0018:ffff88007a051d58 EFLAGS: 00010286 [ 1404.140571] RAX: 0000000000000000 RBX: ffff8800401e1b40 RCX: ffff88004f006000 [ 1404.140576] RDX: 0000000000000000 RSI: ffff880044121540 RDI: ffff8800441b3d90 [ 1404.140581] RBP: ffff88007a051d78 R08: ffff88005bd4ade0 R09: 0000000000000000 [ 1404.140586] R10: 00007fff0a756dc0 R11: 0000000000000246 R12: ffff8800401e1ba8 [ 1404.140591] R13: ffff880044121540 R14: 0000000000000000 R15: ffff88007b7c3e00 [ 1404.140597] FS: 00007f176aa2e6f0(0000) GS:ffff8800019c4000(0000) knlGS:0000000000000000 [ 1404.140602] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b [ 1404.140607] CR2: 0000000000000038 CR3: 00000000401b0000 CR4: 00000000000006b0 [ 1404.140612] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 1404.140617] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 1404.140623] Process pppd (pid: 4954, threadinfo ffff88007a050000, task ffff88003906c410) [ 1404.140627] Stack: [ 1404.140630] ffff88004f006000 ffff8800441b3c00 ffff88004f006000 ffff880044121540 [ 1404.140637] <0> ffff88007a051da8 ffffffffa0f12185 ffff88004f006000 0000000000000000 [ 1404.140646] <0> ffff880044121540 ffff8800390ce330 ffff88007a051e98 ffffffff812ee809 [ 1404.140656] Call Trace: [ 1404.140668] [] serial_close+0x95/0xc0 [usbserial] [ 1404.140680] [] tty_release_dev+0x159/0x5f0 [ 1404.140690] [] ? default_spin_lock_flags+0x9/0x10 [ 1404.140699] [] ? _spin_lock_irqsave+0x2a/0x40 [ 1404.140707] [] ? lock_hrtimer_base+0x2c/0x60 [ 1404.140714] [] ? hrtimer_try_to_cancel+0x3d/0x90 [ 1404.140720] [] ? hrtimer_cancel+0x1a/0x30 [ 1404.140726] [] tty_release+0x19/0x30 [ 1404.140734] [] __fput+0xf0/0x210 [ 1404.140741] [] fput+0x1d/0x30 [ 1404.140747] [] filp_close+0x58/0x90 [ 1404.140753] [] sys_close+0xb9/0x110 [ 1404.140761] [] system_call_fastpath+0x16/0x1b [ 1404.140765] Code: 01 00 00 00 74 13 48 8b 5d e8 4c 8b 65 f0 4c 8b 6d f8 c9 c3 0f 1f 44 00 00 48 8b 1f 48 81 c7 90 01 00 00 48 8b 43 08 4c 8d 63 68 <4c> 8b 68 38 e8 65 5a 40 e0 4c 89 e7 e8 cd d0 60 e0 f6 43 18 01 [ 1404.140837] RIP [] serial_do_free+0x42/0x90 [usbserial] [ 1404.140850] RSP [ 1404.140853] CR2: 0000000000000038 [ 1404.140859] ---[ end trace 3f168359b31df8d4 ]--- Because of this crash, the option and usbserial modules are not unloaded. The option module can be unloaded manually, but usbserial can't, it's still marked being in use, even forcing an unload does not work. Without unloading usbserial (making it available again), any following attempt loading the option driver won't make the modem work. This is what happens when I attach the modem again (in this case to an other USB port): [ 1452.680047] usb 4-1: new full speed USB device using uhci_hcd and address 2 [ 1452.841478] usb 4-1: configuration #1 chosen from 1 choice [ 1452.850716] usb 4-1: USB disconnect, address 2 [ 1453.461202] usb 4-1: new full speed USB device using uhci_hcd and address 3 [ 1453.614945] usb 4-1: configuration #1 chosen from 1 choice [ 1453.619933] option 4-1:1.0: GSM modem (1-port) converter detected [ 1453.620085] usb 4-1: GSM modem (1-port) converter now attached to ttyUSB0 [ 1453.631061] option 4-1:1.1: GSM modem (1-port) converter detected [ 1453.631150] usb 4-1: GSM modem (1-port) converter now attached to ttyUSB1 As you can see, the device is recognized by the USB system, but the relevant modules are not loaded. This is the kernel log when unplugging the device: [ 2182.800062] usb 4-1: USB disconnect, address 3 [ 2182.801466] option: option_instat_callback: error -108 [ 2182.801670] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0 [ 2182.801691] option 4-1:1.0: device disconnected [ 2182.801819] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1 [ 2182.801836] option 4-1:1.1: device disconnected Attaching the modem to the same USB port as in the beginning, does not work either, but shows a different log message: [ 2200.824079] usb 3-2: new full speed USB device using uhci_hcd and address 4 [ 2200.983325] usb 3-2: configuration #1 chosen from 1 choice [ 2201.328182] usb 3-2: USB disconnect, address 4 [ 2201.568128] usb 3-2: new full speed USB device using uhci_hcd and address 5 [ 2201.727348] usb 3-2: configuration #1 chosen from 1 choice [ 2201.732372] option 3-2:1.0: GSM modem (1-port) converter detected [ 2201.732512] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB0 [ 2201.734302] option 3-2:1.1: GSM modem (1-port) converter detected [ 2201.734398] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB1 [ 2754.688133] usb 3-2: USB disconnect, address 5 [ 2754.690061] option: option_instat_callback: error -108 [ 2754.690383] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0 [ 2754.690420] option 3-2:1.0: device disconnected [ 2754.690645] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1 [ 2754.690676] option 3-2:1.1: device disconnected This modem used to work with absolutely no problems in Jaunty and even before, so this is really a big regression. This kind of broadband modem is quite common (in at least Europe), so this should be fixed in karmic. Thanks!