Bug 228231 - Nokia phone attachment through USB DKU-2 (CA-53) cable
Nokia phone attachment through USB DKU-2 (CA-53) cable
Status: CLOSED WONTFIX
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
6
i386 Linux
medium Severity high
: ---
: ---
Assigned To: Pete Zaitcev
Brian Brock
bzcl34nup
:
: 214965 217488 230059 (view as bug list)
Depends On:
Blocks: 236719
  Show dependency treegraph
 
Reported: 2007-02-11 18:38 EST by Aleksey Kontsevich
Modified: 2008-08-02 19:40 EDT (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-05-06 15:12:55 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Aleksey Kontsevich 2007-02-11 18:38:29 EST
Description of problem:
No way to connect to Nokia phones like 6230i (6151 for example). When I try to
connect my Nokia 6151 to PC kernel produces an error an "lsusb" or "cat
/proc/bus/usb/devices" commands hangs - not possible to work with usb devices.

Version-Release number of selected component (if applicable):
$ uname -r
2.6.19-1.2895.fc6 - latest Fedora 6 kernel
The same error was observed with previous kernel.

How reproducible:
Just connect Nokia (I have 6151 compatible with 6230i) phone to USB port through
the DKU-2.

Steps to Reproduce:
1. Run tail -f /var/log/messages
2. Connect Nokia
3. Look at the error
  
Actual results:
$ tail -f /var/log/messages
Feb 12 01:11:29 MyComputer kernel: ohci_hcd 0000:00:02.1: auto-wakeup
Feb 12 01:11:30 MyComputer kernel: usb 2-3: new full speed USB device using
ohci_hcd and address 2
Feb 12 01:11:30 MyComputer kernel: usb 2-3: configuration #1 chosen from 1 choice
Feb 12 01:11:30 MyComputer kernel: drivers/usb/class/cdc-acm.c: Ignoring extra
header, type -3, length 4
Feb 12 01:11:30 MyComputer kernel: cdc_acm 2-3:1.1: ttyACM0: USB ACM device
Feb 12 01:11:30 MyComputer kernel: usbcore: registered new interface driver cdc_acm
Feb 12 01:11:30 MyComputer kernel: drivers/usb/class/cdc-acm.c: v0.25:USB
Abstract Control Model driver for USB modems and ISDN adapters
Feb 12 01:11:31 MyComputer kernel: usbcore: registered new interface driver
cdc_ether
Feb 12 01:11:31 MyComputer kernel: rndis_host 2-3:1.9: RNDIS init failed, -110
Feb 12 01:11:31 MyComputer kernel: usb%d: unregister 'rndis_host'
usb-0000:00:02.1-3, RNDIS device
Feb 12 01:11:31 MyComputer kernel: BUGging on (!PageSlab(page))
Feb 12 01:11:31 MyComputer kernel: ------------[ cut here ]------------
Feb 12 01:11:31 MyComputer kernel: kernel BUG at mm/slab.c:594!
Feb 12 01:11:31 MyComputer kernel: invalid opcode: 0000 [#1]
Feb 12 01:11:31 MyComputer kernel: SMP
Feb 12 01:11:31 MyComputer kernel: last sysfs file:
/devices/pci0000:00/0000:00:02.1/usb2/2-3/2-3:1.10/usbdev2.2_ep07/dev
Feb 12 01:11:31 MyComputer kernel: Modules linked in: rndis_host cdc_ether
usbnet cdc_acm usblp autofs4 sunrpc ppp_synctty ppp_async crc_ccitt ppp_generic
slhc ip_conntrack_netbios_ns ipt_REJECT xt_state ip_conntrack nfnetlink
iptable_filter ip_tables ip6t_REJECT xt_tcpudp ip6table_filter ip6_tables
x_tables dm_mirror dm_multipath dm_mod video sbs i2c_ec button battery asus_acpi
ac ipv6 parport_pc lp parport snd_emu10k1_synth snd_emux_synth snd_seq_virmidi
snd_seq_midi_emul snd_intel8x0 snd_emu10k1 snd_rawmidi snd_ac97_codec
snd_ac97_bus snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_pcm_oss
snd_mixer_oss snd_pcm snd_seq_device snd_util_mem snd_timer snd_hwdep snd
snd_page_alloc emu10k1_gp soundcore 8139too gameport nvidia(P)(U) pcspkr 8139cp
i2c_nforce2 forcedeth ohci1394 mii i2c_core ieee1394 ide_cd cdrom serio_raw
sata_nv libata sd_mod scsi_mod ext3 jbd ehci_hcd ohci_hcd uhci_hcd
Feb 12 01:11:31 MyComputer kernel: CPU:    0
Feb 12 01:11:31 MyComputer kernel: EIP:    0060:[<c04715d4>]    Tainted: P      VLI
Feb 12 01:11:31 MyComputer kernel: EFLAGS: 00010092   (2.6.19-1.2895.fc6 #1)
Feb 12 01:11:31 MyComputer kernel: EIP is at kfree+0x45/0x7e
Feb 12 01:11:31 MyComputer kernel: eax: 00000020   ebx: c12d8a40   ecx: c0697ed0
  edx: 00000086
Feb 12 01:11:31 MyComputer kernel: esi: 00000286   edi: d6c5258d   ebp: d6c58c00
  esp: db6c3da8
Feb 12 01:11:31 MyComputer kernel: ds: 007b   es: 007b   ss: 0068
Feb 12 01:11:31 MyComputer kernel: Process modprobe (pid: 3580, ti=db6c3000
task=cabb56d0 task.ti=db6c3000)
Feb 12 01:11:31 MyComputer udevd-event[3569]: run_program: '/sbin/modprobe'
abnormal exit
Feb 12 01:11:31 MyComputer kernel: Stack: c063e591 c064ddd0 ffffff92 e0d89a55
d6c58806 e0d89261 c16a1b5c 00000000
Feb 12 01:11:31 MyComputer kernel:        c0625b55 c06243c1 00000001 db6c3df8
c0420966 00000000 00000000 00000003
Feb 12 01:11:31 MyComputer kernel:        00000282 ad1ba482 de69a600 e0d49760
d6c58800 da2191a8 d9056400 e0d4a700
Feb 12 01:11:31 MyComputer kernel: Call Trace:
Feb 12 01:11:31 MyComputer kernel:  [<e0d89261>] usbnet_probe+0x583/0x596 [usbnet]
Feb 12 01:11:31 MyComputer kernel:  [<c0590da1>] usb_probe_interface+0x5d/0x7f
Feb 12 01:11:31 MyComputer kernel:  [<c055e6f8>] really_probe+0x39/0xda
Feb 12 01:11:31 MyComputer kernel:  [<c055e92f>] __driver_attach+0x73/0xab
Feb 12 01:11:31 MyComputer kernel:  [<c055de08>] bus_for_each_dev+0x37/0x59
Feb 12 01:11:31 MyComputer kernel:  [<c055e61b>] driver_attach+0x16/0x18
Feb 12 01:11:31 MyComputer kernel:  [<c055e0d9>] bus_add_driver+0x61/0x165
Feb 12 01:11:31 MyComputer kernel:  [<c059090b>] usb_register_driver+0x6f/0xd5
Feb 12 01:11:31 MyComputer kernel:  [<c044302e>] sys_init_module+0x17ff/0x19aa
Feb 12 01:11:31 MyComputer kernel:  [<c040404b>] syscall_call+0x7/0xb
Feb 12 01:11:31 MyComputer kernel:  [<00b53402>] 0xb53402
Feb 12 01:11:31 MyComputer kernel:  =======================
Feb 12 01:11:31 MyComputer kernel: Code: 05 03 1d 80 86 86 c0 8b 03 f6 c4 40 74
03 8b 5b 0c 8b 03 84 c0 78 1c c7 44 24 04 d0 dd 64 c0 c7 04 24 91 e5 63 c0 e8 fd
64 fb ff <0f> 0b 52 02 e0 dd 64 c0 89 e0 8b 4b 18 25 00 f0 ff ff 8b 40 10
Feb 12 01:11:31 MyComputer kernel: EIP: [<c04715d4>] kfree+0x45/0x7e SS:ESP
0068:db6c3da8
Feb 12 01:11:31 MyComputer kernel:  <3>BUG: sleeping function called from
invalid context at kernel/rwsem.c:20
Feb 12 01:11:31 MyComputer kernel: in_atomic():0, irqs_disabled():1
Feb 12 01:11:31 MyComputer kernel:  [<c0405018>] dump_trace+0x69/0x1b6
Feb 12 01:11:31 MyComputer kernel:  [<c040517d>] show_trace_log_lvl+0x18/0x2c
Feb 12 01:11:31 MyComputer kernel:  [<c0405778>] show_trace+0xf/0x11
Feb 12 01:11:31 MyComputer kernel:  [<c0405875>] dump_stack+0x15/0x17
Feb 12 01:11:31 MyComputer kernel:  [<c043c402>] down_read+0x12/0x28
Feb 12 01:11:31 MyComputer kernel:  [<c0433efe>]
blocking_notifier_call_chain+0xe/0x29
Feb 12 01:11:31 MyComputer kernel:  [<c0429f94>] do_exit+0x1b/0x787
Feb 12 01:11:31 MyComputer kernel:  [<c0405719>] die+0x2c3/0x2e8
Feb 12 01:11:31 MyComputer kernel:  [<c0405c5a>] do_invalid_op+0xa2/0xab
Feb 12 01:11:31 MyComputer kernel:  [<c0625ce1>] error_code+0x39/0x40
Feb 12 01:11:31 MyComputer kernel:  [<c04715d4>] kfree+0x45/0x7e
Feb 12 01:11:31 MyComputer kernel:  [<e0d89261>] usbnet_probe+0x583/0x596 [usbnet]
Feb 12 01:11:31 MyComputer kernel:  [<c0590da1>] usb_probe_interface+0x5d/0x7f
Feb 12 01:11:31 MyComputer kernel:  [<c055e6f8>] really_probe+0x39/0xda
Feb 12 01:11:31 MyComputer kernel:  [<c055e92f>] __driver_attach+0x73/0xab
Feb 12 01:11:31 MyComputer kernel:  [<c055de08>] bus_for_each_dev+0x37/0x59
Feb 12 01:11:31 MyComputer kernel:  [<c055e61b>] driver_attach+0x16/0x18
Feb 12 01:11:31 MyComputer kernel:  [<c055e0d9>] bus_add_driver+0x61/0x165
Feb 12 01:11:31 MyComputer kernel:  [<c059090b>] usb_register_driver+0x6f/0xd5
Feb 12 01:11:31 MyComputer kernel:  [<c044302e>] sys_init_module+0x17ff/0x19aa
Feb 12 01:11:31 MyComputer kernel:  [<c040404b>] syscall_call+0x7/0xb
Feb 12 01:11:31 MyComputer kernel:  [<00b53402>] 0xb53402
Feb 12 01:11:31 MyComputer kernel:  =======================

Expected results:
Connect to my Nokia through gnokii or gammu.

Additional info:
What is the nokia_dku2 driver state? Could it be used for linux kernel or at
least include it to the Fedora, Fedora Extras or Livna repository as kernel
module: I found many many people in Internet that have similar problems to
connect Nokias through the DKU-2 cable.
Comment 1 Chuck Ebbert 2007-02-16 17:42:33 EST
It is happening in kfree(), called from usbnet_probe()
at the "out1" label:

out1:
        free_netdev(net);

Comment 2 Pete Zaitcev 2007-02-16 18:58:01 EST
Looks like this may be it:

http://marc.theaimsgroup.com/?l=linux-usb-devel&m=117159465032226&w=2

--- at91.orig/drivers/usb/net/usbnet.c	2007-02-15 15:32:33.000000000 -0800
+++ at91/drivers/usb/net/usbnet.c	2007-02-15 17:41:16.000000000 -0800
@@ -1181,6 +1181,9 @@ usbnet_probe (struct usb_interface *udev
 	// NOTE net->name still not usable ...
 	if (info->bind) {
 		status = info->bind (dev, udev);
+		if (status < 0)
+			goto out1;
+
 		// heuristic:  "usb%d" for links we know are two-host,
 		// else "eth%d" when there's reasonable doubt.  userspace
 		// can rename the link if it knows better.
@@ -1207,12 +1210,12 @@ usbnet_probe (struct usb_interface *udev
 	if (status == 0 && dev->status)
 		status = init_status (dev, udev);
 	if (status < 0)
-		goto out1;
+		goto out3;
 
 	if (!dev->rx_urb_size)
 		dev->rx_urb_size = dev->hard_mtu;
 	dev->maxpacket = usb_maxpacket (dev->udev, dev->out, 1);
-	
+
 	SET_NETDEV_DEV(net, &udev->dev);
 	status = register_netdev (net);
 	if (status)
Comment 3 Chuck Ebbert 2007-02-23 09:44:04 EST
This should be fixed in the latest kernel, 2.6.19-1.2911.6.3, available at:

http://download.fedora.redhat.com/pub/fedora/linux/core/updates/testing/6/

Please test.

Comment 4 Chuck Ebbert 2007-02-26 11:08:31 EST
*** Bug 230059 has been marked as a duplicate of this bug. ***
Comment 5 Chuck Ebbert 2007-02-26 11:10:01 EST
*** Bug 214965 has been marked as a duplicate of this bug. ***
Comment 6 Chuck Ebbert 2007-02-26 11:10:59 EST
*** Bug 217488 has been marked as a duplicate of this bug. ***
Comment 7 Pasi Sainio 2007-02-28 11:52:20 EST
I have line

install rndis_host /usr/bin/logger -tmodprobe -p'kern.WARNING' "Avoiding buggy
rndis_host"

in my modprobe.conf and this seems to do the trick for me, I'm actually using my
phone within vmware and that allows the phone to work there.

I cannot test 2.6.19-XXX kernels as they seem to brake my MD-raid/SATA disk setup:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=224553

and that issues seems to intrest nobody..
Comment 8 Aleksey Kontsevich 2007-03-04 09:32:34 EST
I intalled latest fc6 kernel - 2.6.19-1.2911.6.4.fc6-i686. With cdc-acm in
/etc/modprobe.d/blacklist kernel loaded cdc_ether with no errors in
/var/log/messages, but I havn't see any new devices. But after I unplug phone
computer hangs (no keyboard responce, enen no powerdown on poweroff button).
After removing cdc-acm from backlist I got that again:

Mar  4 16:17:25 Bluebird kernel: usb 2-3: new full speed USB device using
ohci_hcd and address 2
Mar  4 16:17:25 MyComputer kernel: usb 2-3: configuration #1 chosen from 1 choice
Mar  4 16:17:26 MyComputer kernel: drivers/usb/class/cdc-acm.c: Ignoring extra
header, type -3, length 4
Mar  4 16:17:26 MyComputer kernel: cdc_acm 2-3:1.1: ttyACM0: USB ACM device
Mar  4 16:17:26 MyComputer kernel: usbcore: registered new interface driver cdc_acm
Mar  4 16:17:26 MyComputer kernel: drivers/usb/class/cdc-acm.c: v0.25:USB
Abstract Control Model driver for USB modems and ISDN adapters
Mar  4 16:17:26 MyComputer kernel: usbcore: registered new interface driver
cdc_ether
Mar  4 16:17:26 MyComputer kernel: rndis_host 2-3:1.9: RNDIS init failed, -110
Mar  4 16:17:26 MyComputer kernel: usb%d: unregister 'rndis_host'
usb-0000:00:02.1-3, RNDIS device
Mar  4 16:17:26 MyComputer kernel: BUGging on (!PageSlab(page))
Mar  4 16:17:26 MyComputer kernel: ------------[ cut here ]------------
Mar  4 16:17:26 MyComputer kernel: kernel BUG at mm/slab.c:594!
Mar  4 16:17:26 MyComputer kernel: invalid opcode: 0000 [#1]
Mar  4 16:17:26 MyComputer kernel: SMP
Mar  4 16:17:26 MyComputer kernel: last sysfs file:
/devices/pci0000:00/0000:00:02.1/usb2/2-3/2-3:1.5/bInterfaceProtocol
Mar  4 16:17:26 MyComputer kernel: Modules linked in: rndis_host cdc_ether
usbnet cdc_acm autofs4 sunrpc ppp_synctty ppp_async crc_ccitt ppp_generic slhc
ip_conntrack_netbios_ns ipt_REJECT xt_state ip_conntrack nfnetlink
iptable_filter ip_tables ip6t_REJECT xt_tcpudp ip6table_filter ip6_tables
x_tables dm_mirror dm_multipath dm_mod video sbs i2c_ec button battery asus_acpi
ac ipv6 parport_pc lp parport snd_intel8x0 snd_emu10k1_synth snd_emux_synth
snd_seq_virmidi snd_seq_midi_emul snd_emu10k1 emu10k1_gp snd_rawmidi i2c_nforce2
snd_ac97_codec gameport snd_ac97_bus snd_seq_dummy snd_seq_oss
snd_seq_midi_event snd_seq snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_device
snd_timer snd_util_mem snd_hwdep ohci1394 snd 8139too nvidia(P)(U) ieee1394
ide_cd 8139cp cdrom i2c_core mii forcedeth soundcore snd_page_alloc serio_raw
pcspkr sata_nv libata sd_mod scsi_mod ext3 jbd ehci_hcd ohci_hcd uhci_hcd
Mar  4 16:17:26 MyComputer kernel: CPU:    0
Mar  4 16:17:26 MyComputer kernel: EIP:    0060:[<c0471644>]    Tainted: P      VLI
Mar  4 16:17:26 MyComputer kernel: EFLAGS: 00010092   (2.6.19-1.2911.6.4.fc6 #1)
Mar  4 16:17:26 MyComputer kernel: EIP is at kfree+0x45/0x7e
Mar  4 16:17:26 MyComputer kernel: eax: 00000020   ebx: c12344c0   ecx: c0696ed0
  edx: 00000086
Mar  4 16:17:26 MyComputer kernel: esi: 00000286   edi: d1a26d8d   ebp: d1a2d400
  esp: c4aeada8
Mar  4 16:17:26 MyComputer kernel: ds: 007b   es: 007b   ss: 0068
Mar  4 16:17:26 MyComputer kernel: Process modprobe (pid: 3536, ti=c4aea000
task=d96b3130 task.ti=c4aea000)
Mar  4 16:17:26 MyComputer udevd-event[3529]: run_program: '/sbin/modprobe'
abnormal exit
Mar  4 16:17:26 MyComputer kernel: Stack: c063e59a c064ddd9 ffffff92 e0e7aa5d
d1a2d006 e0e7a269 c06c0bac 00000282
Mar  4 16:17:26 MyComputer kernel:        c06c0bac 00000000 00000001 c4aeadf8
c0420966 00000000 00000000 00000003
Mar  4 16:17:26 MyComputer kernel:        00000282 c14ca800 da080400 e0e3a760
d1a2d000 d704f5a8 da707c00 e0e3b700
Mar  4 16:17:26 MyComputer kernel: Call Trace:
Mar  4 16:17:26 MyComputer kernel:  [<e0e7a269>] usbnet_probe+0x58b/0x59e [usbnet]
Mar  4 16:17:26 MyComputer kernel:  [<c0590b75>] usb_probe_interface+0x5d/0x7f
Mar  4 16:17:26 MyComputer kernel:  [<c055e4d4>] really_probe+0x39/0xda
Mar  4 16:17:26 MyComputer kernel:  [<c055e70b>] __driver_attach+0x73/0xab
Mar  4 16:17:26 MyComputer kernel:  [<c055dbe4>] bus_for_each_dev+0x37/0x59
Mar  4 16:17:27 MyComputer kernel:  [<c055e3f7>] driver_attach+0x16/0x18
Mar  4 16:17:27 MyComputer kernel:  [<c055deb5>] bus_add_driver+0x61/0x165
Mar  4 16:17:27 MyComputer kernel:  [<c05906df>] usb_register_driver+0x6f/0xd5
Mar  4 16:17:27 MyComputer kernel:  [<c0443096>] sys_init_module+0x17ff/0x19aa
Mar  4 16:17:27 MyComputer kernel:  [<c040404b>] syscall_call+0x7/0xb
Mar  4 16:17:27 MyComputer kernel:  [<00f0e402>] 0xf0e402
Mar  4 16:17:27 MyComputer kernel:  =======================
Mar  4 16:17:27 MyComputer kernel: Code: 05 03 1d 80 66 86 c0 8b 03 f6 c4 40 74
03 8b 5b 0c 8b 03 84 c0 78 1c c7 44 24 04 d9 dd 64 c0 c7 04 24 9a e5 63 c0 e8 e1
64 fb ff <0f> 0b 52 02 e9 dd 64 c0 89 e0 8b 4b 18 25 00 f0 ff ff 8b 40 10
Mar  4 16:17:27 MyComputer kernel: EIP: [<c0471644>] kfree+0x45/0x7e SS:ESP
0068:c4aeada8
Mar  4 16:17:27 MyComputer kernel:  <3>BUG: sleeping function called from
invalid context at kernel/rwsem.c:20
Mar  4 16:17:27 MyComputer kernel: in_atomic():0, irqs_disabled():1
Mar  4 16:17:27 MyComputer kernel:  [<c0405018>] dump_trace+0x69/0x1b6
Mar  4 16:17:27 MyComputer kernel:  [<c040517d>] show_trace_log_lvl+0x18/0x2c
Mar  4 16:17:27 MyComputer kernel:  [<c0405778>] show_trace+0xf/0x11
Mar  4 16:17:27 MyComputer kernel:  [<c0405875>] dump_stack+0x15/0x17
Mar  4 16:17:27 MyComputer kernel:  [<c043c46a>] down_read+0x12/0x28
Mar  4 16:17:27 MyComputer kernel:  [<c0433f66>]
blocking_notifier_call_chain+0xe/0x29
Mar  4 16:17:27 MyComputer kernel:  [<c0429fe8>] do_exit+0x1b/0x79b
Mar  4 16:17:27 MyComputer kernel:  [<c0405719>] die+0x2c3/0x2e8
Mar  4 16:17:27 MyComputer kernel:  [<c0405c5a>] do_invalid_op+0xa2/0xab
Mar  4 16:17:27 MyComputer kernel:  [<c0625b69>] error_code+0x39/0x40
Mar  4 16:17:27 MyComputer kernel:  [<c0471644>] kfree+0x45/0x7e
Mar  4 16:17:27 MyComputer kernel:  [<e0e7a269>] usbnet_probe+0x58b/0x59e [usbnet]
Mar  4 16:17:27 MyComputer kernel:  [<c0590b75>] usb_probe_interface+0x5d/0x7f
Mar  4 16:17:27 MyComputer kernel:  [<c055e4d4>] really_probe+0x39/0xda
Mar  4 16:17:27 MyComputer kernel:  [<c055e70b>] __driver_attach+0x73/0xab
Mar  4 16:17:27 MyComputer kernel:  [<c055dbe4>] bus_for_each_dev+0x37/0x59
Mar  4 16:17:27 MyComputer kernel:  [<c055e3f7>] driver_attach+0x16/0x18
Mar  4 16:17:27 MyComputer kernel:  [<c055deb5>] bus_add_driver+0x61/0x165
Mar  4 16:17:27 MyComputer kernel:  [<c05906df>] usb_register_driver+0x6f/0xd5
Mar  4 16:17:27 MyComputer kernel:  [<c0443096>] sys_init_module+0x17ff/0x19aa
Mar  4 16:17:27 MyComputer kernel:  [<c040404b>] syscall_call+0x7/0xb
Mar  4 16:17:27 MyComputer kernel:  [<00f0e402>] 0xf0e402
Mar  4 16:17:27 MyComputer kernel:  =======================

Does kernel should use cdc-acm driver? People said that usb-storage should be
loaded. But I think ttyACM0 should also be created to provide phone services
other than just storage (flash drive).
Comment 9 Aleksey Kontsevich 2007-03-04 09:36:24 EST
One man suggest this patch to prevent hanging the usb bus:

--- a/drivers/usb/net/rndis_host.c
+++ b/drivers/usb/net/rndis_host.c
@@ -462,8 +462,7 @@ static int rndis_bind(struct usbnet *dev, struct
usb_interface *intf)
        return retval;

 fail_and_release:
-       usb_set_intfdata(info->data, NULL);
-       usb_driver_release_interface(driver_of(intf), info->data);
+       usbnet_cdc_unbind(dev, intf);
 fail:
        kfree(u.buf);
        return retval;


-----------------------------------------------
drivers/usb/net/rndis_host.c

$ cd linux-2.6.20
$ patch -p1 < patch
-----------------------------------------------
What about dku2 kernel module from gnokii project? It was included into 2.6.15
kernel version, then removed. For now it was significantly improved.
Comment 10 Sasha 2007-03-27 00:58:59 EDT
2.6.20 kernel not work with Samsung E-900.
I connetct phone and see in /var/log/messages:
Mar 23 18:18:51 localhost kernel: usb 4-1: new full speed USB device using
uhci_hcd and address 2
Mar 23 18:18:51 localhost kernel: usb 4-1: configuration #1 chosen from 1 choice
Mar 23 18:18:51 localhost kernel: Initializing USB Mass Storage driver...
Mar 23 18:18:51 localhost kernel: scsi2 : SCSI emulation for USB Mass Storage
devices
Mar 23 18:18:51 localhost kernel: usbcore: registered new interface driver
usb-storage
Mar 23 18:18:51 localhost kernel: USB Mass Storage support registered.
Mar 23 18:18:52 localhost kernel: cdc_acm 4-1:1.3: ttyACM0: USB ACM device
Mar 23 18:18:52 localhost kernel: usbcore: registered new interface driver cdc_acm
Mar 23 18:18:52 localhost kernel: drivers/usb/class/cdc-acm.c: v0.25:USB
Abstract Control Model driver for USB modems and ISDN adapters
Mar 23 18:18:52 localhost kernel: usbcore: registered new interface driver cdc_ether
Mar 23 18:18:52 localhost kernel: rndis_host 4-1:1.1: RNDIS init failed, -110
Mar 23 18:18:52 localhost kernel: rndis_host: probe of 4-1:1.1 failed with error
-110
Mar 23 18:18:52 localhost kernel: usbcore: registered new interface driver
rndis_host

GPRS still not working.
I use following USB data Bus 004 Device 002: ID 04e8:663f Samsung Electronics
Co., Ltd
Comment 11 Aleksey Kontsevich 2007-04-16 12:55:02 EDT
Seems begin to work with latest kernel: kernel-2.6.20-1.2944.fc6. Will check
software works: gnokii & gammu.

Apr 16 19:38:42 MyComputer kernel: usb 2-3: new full speed USB device using
ohci_hcd and address 3
Apr 16 19:38:42 MyComputer kernel: usb 2-3: configuration #1 chosen from 1 choice
Apr 16 19:38:43 MyComputer kernel: drivers/usb/class/cdc-acm.c: Ignoring extra
header, type -3, length 4
Apr 16 19:38:43 MyComputer kernel: cdc_acm 2-3:1.1: ttyACM0: USB ACM device
Apr 16 19:38:43 MyComputer kernel: usbcore: registered new interface driver cdc_acm
Apr 16 19:38:43 MyComputer kernel: drivers/usb/class/cdc-acm.c: v0.25:USB
Abstract Control Model driver for USB modems and ISDN adapters
Apr 16 19:38:43 MyComputer kernel: usbcore: registered new interface driver
cdc_ether
Apr 16 19:38:44 MyComputer kernel: rndis_host 2-3:1.9: RNDIS init failed, -110
Apr 16 19:38:44 MyComputer kernel: rndis_host: probe of 2-3:1.9 failed with
error -110
Apr 16 19:38:44 MyComputer kernel: usbcore: registered new interface driver
rndis_host
Comment 12 Aleksey Kontsevich 2007-04-16 13:18:21 EDT
Sorry, wanted to say: Will check how software works: gnokii & gammu.
Comment 13 Aleksey Kontsevich 2007-04-16 14:06:54 EDT
Seems that works, the other gnokii problems. Thank you very much!
Comment 14 Aleksey Kontsevich 2007-04-27 13:22:24 EDT
This should work better now with new 2.6.21 kernel. Will test.

http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.21

commit 9be8456c00c5bd603b933e6e9d82041e8b32c401
Author: Oliver Neukum <oneukum@suse.de>
Date:   Mon Feb 12 08:50:03 2007 +0100

   USB: quirky device for cdc-acm
   
   here's a quirklist entry reported by Stephen Murphy.
   
commit ca79b7b4158cbf32625793a1fc1d59ac46d44197
Author: Oliver Neukum <oneukum@suse.de>
Date:   Mon Feb 12 08:41:35 2007 +0100

   USB: cdc-acm: fix incorrect throtteling, make set_control optional
   
   this is Joris' fixes reshuffelled and features renamed as David requested.
   
   - acm_set_control is not mandatory, honour that
   - throtteling is reset upon open
   - throtteling is read consistently when processing input data

commit 834dbca5b6b79ddb7cf56001ea7b6d4481fdf1e7
Author: Oliver Neukum <oneukum@suse.de>
Date:   Tue Mar 6 10:47:04 2007 +0100

   USB: fix spinlock recursion in cdc-acm.c   
   this fixes the spinlock recursion issue. The older fix was incomplete.
Comment 15 Pete Zaitcev 2007-09-03 20:45:34 EDT
I just now looked at my comment #2 and I knew something was fishy even
back then. The real fix was to prevent the disconnect from being called
when interface is unbound from inside the probe (rndis_bind actually).
This is done by adding usb_set_intfdata(info->data, NULL);

A corollary is, the patch in comment #9 is bogus. It must've been
something else that solved the hang.

Alexey, how is it going now? Can you close this report?
Comment 16 Bug Zapper 2008-04-04 02:11:47 EDT
Fedora apologizes that these issues have not been resolved yet. We're
sorry it's taken so long for your bug to be properly triaged and acted
on. We appreciate the time you took to report this issue and want to
make sure no important bugs slip through the cracks.

If you're currently running a version of Fedora Core between 1 and 6,
please note that Fedora no longer maintains these releases. We strongly
encourage you to upgrade to a current Fedora release. In order to
refocus our efforts as a project we are flagging all of the open bugs
for releases which are no longer maintained and closing them.
http://fedoraproject.org/wiki/LifeCycle/EOL

If this bug is still open against Fedora Core 1 through 6, thirty days
from now, it will be closed 'WONTFIX'. If you can reporduce this bug in
the latest Fedora version, please change to the respective version. If
you are unable to do this, please add a comment to this bug requesting
the change.

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we are following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

And if you'd like to join the bug triage team to help make things
better, check out http://fedoraproject.org/wiki/BugZappers
Comment 17 Bug Zapper 2008-05-06 15:12:53 EDT
This bug is open for a Fedora version that is no longer maintained and
will not be fixed by Fedora. Therefore we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen thus bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.

Note You need to log in before you can comment on or make changes to this bug.