drivers/usb/class/usblp.c: usblp0: failed reading printer status

Bug #21636 reported by carsten
6
Affects Status Importance Assigned to Milestone
linux-source-2.6.15 (Ubuntu)
Fix Released
Medium
Ben Collins

Bug Description

No matter which application I am using, after printing a first job the second will
not work. I have to pull the plug and switch it on again. Then, in the
printer-dialog, I need to "Resume" the printer. After that the job is printed but the
next one will again not work.
If I print, pull the plug, switch on and print again it works. So it has nothing to
do with the spooler or so but with something low level.

Software: Ubuntu Breezy, last softwareupdate on Sep 13, no selfcompiled packages,
only ubuntu-debs.

CUPS: 1.1.23-10ubuntu3

Hardware:
Computer: HP Omnibook xt1000

The printer:
Bus 001 Device 011: ID 03f0:1017 Hewlett-Packard
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 1.10
  bDeviceClass 0 (Defined at Interface level)
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 8
  idVendor 0x03f0 Hewlett-Packard
  idProduct 0x1017
  bcdDevice 1.00
  iManufacturer 1 Hewlett-Packard
  iProduct 2 hp LaserJet 1300
  iSerial 3 00CNBD017532
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 78
    bNumInterfaces 1
    bConfigurationValue 1
    iConfiguration 0
    bmAttributes 0xc0
      Self Powered
    MaxPower 2mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 3
      bInterfaceClass 7 Printer
      bInterfaceSubClass 1 Printer
      bInterfaceProtocol 3 IEEE 1284.4 compatible bidirectional
      iInterface 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x01 EP 1 OUT
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x82 EP 2 IN
        bmAttributes 3
          Transfer Type Interrupt
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0008 1x 8 bytes
        bInterval 255
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 1
      bNumEndpoints 2
      bInterfaceClass 7 Printer
      bInterfaceSubClass 1 Printer
      bInterfaceProtocol 2 Bidirectional
      iInterface 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x01 EP 1 OUT
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 2
      bNumEndpoints 1
      bInterfaceClass 7 Printer
      bInterfaceSubClass 1 Printer
      bInterfaceProtocol 1 Unidirectional
      iInterface 0
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x01 EP 1 OUT
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0

carsten@hydrocotyle:~$ cat /proc/bus/usb/devices

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.12-8-386 uhci_hcd
S: Product=VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (#2)
S: SerialNumber=0000:00:11.3
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc=315/900 us (35%), #Int= 4, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.12-8-386 uhci_hcd
S: Product=VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller
S: SerialNumber=0000:00:11.2
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 4
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=05e3 ProdID=0605 Rev= 6.09
S: Product=USB2.0 Hub
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms

T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 11 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=03f0 ProdID=1017 Rev= 1.00
S: Manufacturer=Hewlett-Packard
S: Product=hp LaserJet 1300
S: SerialNumber=00CNBD017532
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=07(print) Sub=01 Prot=03 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=255ms
I: If#= 0 Alt= 1 #EPs= 2 Cls=07(print) Sub=01 Prot=02 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I: If#= 0 Alt= 2 #EPs= 1 Cls=07(print) Sub=01 Prot=01 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=04a9 ProdID=220d Rev= 1.00
S: Manufacturer=Canon
S: Product=CanoScan
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=ff Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=16ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c00e Rev=11.10
S: Manufacturer=Logitech
S: Product=USB-PS/2 Optical Mouse
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 98mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=10ms

T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=04 Dev#= 5 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0566 ProdID=3002 Rev= 1.00
C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I: If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
E: Ad=82(I) Atr=03(Int.) MxPS= 4 Ivl=10ms

========================

My dmesg sais:

[ 504.448684] usb 1-1.1: new full speed USB device using uhci_hcd and address 6
[ 505.034028] drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 6 if
0 alt 1 proto 2 vid 0x03F0 pid 0x
1017
[ 505.043909] usbcore: registered new driver usblp
[ 505.043938] drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
[ 572.750561] acpi-cpufreq: Transition failed
[ 604.867626] acpi-cpufreq: Transition failed
[ 616.030768] acpi-cpufreq: Transition failed
[ 853.093675] acpi-cpufreq: Transition failed
[ 575.413261] drivers/usb/class/usblp.c: usblp0: failed reading printer status
[ 874.058222] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 884.064601] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 894.070984] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 904.080382] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 914.086751] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 922.959075] acpi-cpufreq: Transition failed
[ 924.093106] drivers/usb/class/usblp.c: usblp0: error -110 reading printer status
[ 1004.539170] usb 1-1.1: USB disconnect, address 6
[ 1004.546047] drivers/usb/class/usblp.c: usblp0: removed
[ 1092.391575] usb 1-1.1: new full speed USB device using uhci_hcd and address 7
[ 1092.471059] drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 7 if
0 alt 1 proto 2 vid 0x03F0 pid 0x
1017
[ 1288.698681] drivers/usb/class/usblp.c: usblp0: failed reading printer status
[ 1288.703601] drivers/usb/class/usblp.c: usblp0: nonzero read/write bulk status
received: -71
[ 1288.704672] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.705628] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.706627] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.707610] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.710076] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.710649] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.711611] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.712661] usb 1-1.1: USB disconnect, address 7
[ 1288.723159] drivers/usb/class/usblp.c: usblp0: error -71 reading printer status
[ 1288.746684] drivers/usb/class/usblp.c: usblp0: removed
[ 1299.603408] usb 1-1.1: new full speed USB device using uhci_hcd and address 8
[ 1299.675520] drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 8 if
0 alt 1 proto 2 vid 0x03F0 pid 0x
1017
[ 1351.417512] drivers/usb/class/usblp.c: usblp0: failed reading printer status
[ 1351.422494] drivers/usb/class/usblp.c: usblp0: nonzero read/write bulk status
received: -71

Revision history for this message
carsten (cniehaus) wrote :
Download full text (3.9 KiB)

"pull the plug" means: Pull the printer plug, of course. Switch it off.

I forgot to give you my cups-log. These are the last few pages of it.

I [14/Sep/2005:16:15:02 +0200] Started filter /usr/lib/cups/filter/foomatic-rip (PID 7769) for
job 22.
I [14/Sep/2005:16:15:02 +0200] Started backend /usr/lib/cups/backend/usb (PID 7770) for job 22.
E [14/Sep/2005:16:15:08 +0200] [Job 22] Unable to send print file to printer: No such device
E [14/Sep/2005:16:15:08 +0200] PID 7770 stopped with status 1!
I [14/Sep/2005:16:15:08 +0200] Hint: Try setting the LogLevel to "debug" to find out more.
E [14/Sep/2005:16:15:08 +0200] PID 7769 stopped with status 9!
I [14/Sep/2005:16:15:08 +0200] Hint: Try setting the LogLevel to "debug" to find out more.
I [14/Sep/2005:16:15:08 +0200] Saving printers.conf...
I [14/Sep/2005:16:16:02 +0200] Saving printers.conf...
I [14/Sep/2005:16:16:02 +0200] Printer 'LaserJet-1300' started by 'root'.
I [14/Sep/2005:16:16:02 +0200] Started filter /usr/lib/cups/filter/pstops (PID 7996) for job 22.
I [14/Sep/2005:16:16:02 +0200] Started filter /usr/lib/cups/filter/foomatic-rip (PID 7997) for
job 22.
I [14/Sep/2005:16:16:02 +0200] Started backend /usr/lib/cups/backend/usb (PID 7998) for job 22.
I [14/Sep/2005:16:23:59 +0200] Adding start banner page "none" to job 23.
I [14/Sep/2005:16:23:59 +0200] Adding end banner page "none" to job 23.
I [14/Sep/2005:16:23:59 +0200] Job 23 queued on 'LaserJet-1300' by 'carsten'.
I [14/Sep/2005:16:23:59 +0200] Started filter /usr/lib/cups/filter/pstops (PID 8203) for job 23.
I [14/Sep/2005:16:23:59 +0200] Started filter /usr/lib/cups/filter/foomatic-rip (PID 8204) for
job 23.
I [14/Sep/2005:16:23:59 +0200] Started backend /usr/lib/cups/backend/usb (PID 8205) for job 23.
E [14/Sep/2005:16:24:05 +0200] [Job 23] Unable to send print file to printer: No such device
E [14/Sep/2005:16:24:05 +0200] PID 8205 stopped with status 1!
I [14/Sep/2005:16:24:05 +0200] Hint: Try setting the LogLevel to "debug" to find out more.
I [14/Sep/2005:16:24:05 +0200] Saving printers.conf...
I [14/Sep/2005:16:24:35 +0200] Saving printers.conf...
I [14/Sep/2005:16:24:35 +0200] Printer 'LaserJet-1300' started by 'root'.
I [14/Sep/2005:16:24:35 +0200] Started filter /usr/lib/cups/filter/pstops (PID 8290) for job 23.
I [14/Sep/2005:16:24:35 +0200] Started filter /usr/lib/cups/filter/foomatic-rip (PID 8291) for
job 23.
I [14/Sep/2005:16:24:35 +0200] Started backend /usr/lib/cups/backend/usb (PID 8292) for job 23.
E [14/Sep/2005:16:24:36 +0200] PID 8292 stopped with status 1!
I [14/Sep/2005:16:24:36 +0200] Hint: Try setting the LogLevel to "debug" to find out more.
E [14/Sep/2005:16:24:36 +0200] [Job 23] Unable to open USB device "usb://HP/LaserJet%201300": No
such device
E [14/Sep/2005:16:24:36 +0200] PID 8291 stopped with status 9!
I [14/Sep/2005:16:24:36 +0200] Hint: Try setting the LogLevel to "debug" to find out more.
I [14/Sep/2005:16:24:36 +0200] Saving printers.conf...
I [14/Sep/2005:16:24:41 +0200] Saving printers.conf...
I [14/Sep/2005:16:24:41 +0200] Printer 'LaserJet-1300' started by 'root'.
I [14/Sep/2005:16:24:41 +0200] Started filter /usr/lib/cups/filter/pstops (PID 8423...

Read more...

Revision history for this message
carsten (cniehaus) wrote :

On IRC I was told to give you lspci -vvv of my usb-hardware. Furthermore, I am using a 4 in 1 USB
2.0-hub. A mouse, the printer and my keyboard are in it.

0000:00:11.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 1e)
(prog-if 00 [UHCI])
        Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-
FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR-
<PERR-
        Latency: 64, Cache Line Size: 0x08 (32 bytes)
        Interrupt: pin D routed to IRQ 10
        Region 4: I/O ports at 1200 [size=32]
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:11.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 1e)
(prog-if 00 [UHCI])
        Subsystem: VIA Technologies, Inc. (Wrong ID) USB Controller
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-
FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR-
<PERR-
        Latency: 64, Cache Line Size: 0x08 (32 bytes)
        Interrupt: pin D routed to IRQ 10
        Region 4: I/O ports at 1300 [size=32]
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

Revision history for this message
Matt Zimmerman (mdz) wrote :

Does the printer work under Ubuntu 5.04, or any other operating system you have
available? This would help to rule out a problem with the printer, cabling, etc.

Revision history for this message
carsten (cniehaus) wrote :

I cannot confirm now because brezzy is the only OS I have. But I was using the very same setup
(cable, notebook, printer, usb-hub) on hoary since hoary was release and before that with gentoo
for at least one year.
Before that I didn't have the usb-hub. Before the hub I used the printer+notebook+cable for at
least another year (I think since early 2003). I never had any problems. On the other hand, it
never worked on breezy, so I am pretty sure that there is a bug somewhere in breezy.

Revision history for this message
carsten (cniehaus) wrote :

I was offline for three weeks and just did a huge system update. But still this bug is 100%
reproducable.

Linux hydrocotyle 2.6.12-9-386 #1 Thu Oct 6 10:46:15 UTC 2005 i686 GNU/Linux

Revision history for this message
carsten (cniehaus) wrote :

Ok, some new information:

I installed breezy on a IBM ThinkPad a21m, there the bug doesn't happen. The ThinkPad is in the
same network is using the same printer. To printer has only usb, so I need to move the usb-plug
from the HP-OmniBook to the IBM.

On the HP-OmniBook, the bug is still 100% reproducible.

So the printer & cable are fine, the bug is also not in the hardware of the omnibook because it
never happened before the update to breezy.

Revision history for this message
Ben Collins (ben-collins) wrote :

If possible, please upgrade to Dapper's 2.6.15-7 kernel. If you do not want to
upgrade to Dapper, then you can also wait for the Dapper Flight 2 CD's, which
are due out within the next few days.

Let me know if this bug still exists with this kernel.

Revision history for this message
carsten (cniehaus) wrote :

Interestingly, I just tested on the same computer with a HP LJ 1200
(pxlmono-driver). It does not happen with it.

I am now downloading Flight2 and test when back home (in a couple of days).

Revision history for this message
carsten (cniehaus-kde) wrote :

Sorry it took so long. This bug is fixed in Breezy for some weeks now, cannot test Dapper. I don't find a way to close this bug, so you have to do that.

Revision history for this message
Chuck Short (zulcss) wrote :

Accroding to user, its fixed.

Changed in linux-source-2.6.15:
status: Needs Info → Fix Committed
Changed in linux-source-2.6.15:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.