Bug 3496

Summary: usblp failed to probe
Product: Drivers Reporter: Alfred (munnikes)
Component: USBAssignee: Vojtech Pavlik (vojtech)
Status: REJECTED DOCUMENTED    
Severity: normal CC: bunk
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.9rc3 + 2.6.8(.1) Subsystem:
Regression: --- Bisected commit-id:
Bug Depends on:    
Bug Blocks: 5089    

Description Alfred 2004-10-01 06:56:50 UTC
Distribution: Debian sarge
Hardware Environment: Dymo Label writer 320 ( + VIA VT82xxxxx UHCI USB 1.1
Controller )
Software Environment:
Problem Description:

Kernel 2.4:

localhost kernel: hub.c: new USB device 00:10.1-1, assigned address 9
localhost kernel: printer.c: usblp0: USB Bidirectional printer dev 9 if 0 alt 0
proto 2 vid 0x0922 pid 0x0010
localhost usbmgr[890]: vendor:0x922 product:0x10
localhost usbmgr[890]: class:0x7 subclass:0x1 protocol:0x2
localhost usbmgr[890]: USB device is matched the configuration
localhost usbmgr[890]: "printer" was loaded 

It is working and /dev/usb/lp0 exists


kernel 2.6:

kernel: usb 3-1: new low speed USB device using address 4
kernel: usblp: probe of 3-1:1.0 failed with error -5
usbmgr[1678]: vendor:0x922 product:0x10
usbmgr[1678]: class:0x7 subclass:0x1 protocol:0x2
usbmgr[1678]: USB device is matched the configuration
usbmgr[1678]: "printer" was loaded 


usblp gives the "kernel: usblp: probe of 3-1:1.0 failed with error -5" error and
/dev/usb/lp0 is there but does not exist/work.


part of /proc/bus/usb/devices:

T:  Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  6 Spd=1.5 MxCh= 0
D:  Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0922 ProdID=0010 Rev= 1.00
S:  Manufacturer=DYMO
S:  Product=DYMO LabelWriter 320
S:  SerialNumber=XXXremovedXXX
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=  0mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=07(print) Sub=01 Prot=02 Driver=(none)
E:  Ad=81(I) Atr=02(Bulk) MxPS=   8 Ivl=0ms
E:  Ad=02(O) Atr=03(Int.) MxPS=   8 Ivl=1ms
Comment 1 Alfred 2004-10-01 08:55:36 UTC
After a little debug work I noticed that it is marked as buggy hardware in 2.6
while it is not marked as buggy in 2.4.

line 1042 for usblp.c
  /* Ignore buggy hardware without the right endpoints. */
  if (!epwrite || (ifd->desc.bInterfaceProtocol > 1 && !epread))
   continue;

after I had disabled the line I got:
 Unable to handle kernel NULL pointer dereference at virtual address 00000002
  printing eip:
 f0cea723
 *pde = 00000000
 Oops: 0000 [#1]
 Modules linked in: usblp ipt_MASQUERADE iptable_nat ipt_LOG ipt_state
ip_conntrack iptable_filter ip_tables ppp_deflate zlib_deflate zlib_inflate
bsd_comp ppp_synctty vmnet vmmon thermal fan button processor ac battery
nls_iso8859_1 nls_cp437 w83627hf i2c_sensor i2c_isa i2c_viapro i2c_core
 CPU:    0
 EIP:    0060:[<f0cea723>]    Tainted: P   VLI
 EFLAGS: 00010246   (2.6.8.1n) 
 EIP is at usblp_set_protocol+0x73/0x130 [usblp]
 eax: 00000000   ebx: efd1fc00   ecx: e7324760   edx: 00000002
 esi: e946c460   edi: e946c478   ebp: 00000000   esp: e8f05e80
 ds: 007b   es: 007b   ss: 0068
 Process modprobe (pid: 2711, threadinfo=e8f04000 task=e915c020)
 Stack: efd1fc00 00000000 00000000 efd1fc00 e946c460 efd1fc00 00000002 c16dc3a0 
        f0cea193 e946c460 00000002 000000d0 e7324710 302d042d e6f2c53c c1780c0c 
        00000000 c1780c0c c017b218 efd1fcc4 000041ed c017b180 f0cec658 f0cec658 
 Call Trace:
  [<f0cea193>] usblp_probe+0x223/0x4a0 [usblp]
  [<c017b218>] create_dir+0x78/0xa0
  [<c017b180>] init_dir+0x0/0x20
  [<c02adf08>] usb_probe_interface+0x68/0x80
  [<c0247b4f>] bus_match+0x3f/0x70
  [<c0247c79>] driver_attach+0x59/0x90
  [<c0248121>] bus_add_driver+0x91/0xb0
  [<c02486df>] driver_register+0x2f/0x40
  [<c02adfdf>] usb_register+0x3f/0xa0
  [<f0cff013>] usblp_init+0x13/0x37 [usblp]
  [<c012cfdb>] sys_init_module+0x13b/0x1d0
  [<c010403b>] syscall_call+0x7/0xb
 Code: aa 00 00 00 89 5c 24 08 8b 46 34 89 44 24 04 8b 06 89 04 24 e8 9f a2 5c
cf 85 c0 89 c5 0f 88 95 00 00 00 8b 47 40 8b 1e 8b 4e 24 <0f> b6 50 02 8b 03 c1
e0 08 c1 e2 0f 09 d0 8b 56 14 89 71 54 0d 
Comment 2 Adrian Bunk 2005-08-05 02:55:47 UTC
Is this problem still present:
- in kernel 2.6.13-rc5 and
- without any external modules loaded since booting?
Comment 3 Greg Kroah-Hartman 2005-08-18 21:36:37 UTC
I'm sorry, but you have broken hardware, as the kernel states.