2003-08-06 19:15:16

by Peter Denison

[permalink] [raw]
Subject: 2.4.21 USB printer failure w/ HP PSC750

Having just upgraded to 2.4.21, the first time I tried to print, the
following happened. The printer started to print, but gave up after a
while and spat out just about 1" of image. Needless to say, it all worked
fine under 2.4.20.

Intel 82801BA based MB, running stock 2.4.21 (compiled with gcc 3.3.1)
with uhci driver (all on Debian testing)

This debugging code was introduced during 2.4.20->2.4.21, but I'm afraid I
don't know what the significance of it is. (Happens when td->dma_handle !=
(qh->element & ~UHCI_PTR_BITS) )

Can anyone tell me what's going on? I am happy to provide more information
as necessary.


Aug 6 18:45:19 ptal-mlcd: SYSLOG at /home/msp/src/debian/hpoj/hpoj-0.90/mlcd/
bp/ex/ExMgr.h:564, dev=<mlc:usb:PSC_750@/dev/usb/lp0>, pid=287, e=19
ptal-mlcd successfully activated, mode=1284.4.
Aug 6 18:45:22 kernel: [d7b0b120] link (17b0b092) element (166d9270)
[following lines all the same time]
kernel: Element != First TD
kernel: 0: [d66d9000] link (166d9030) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c000)
kernel: 1: [d66d9030] link (166d9060) e3 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c040)
kernel: 2: [d66d9060] link (166d9090) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c080)
kernel: 3: [d66d9090] link (166d90c0) e3 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c0c0)
kernel: 4: [d66d90c0] link (166d90f0) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c100)
kernel: 5: [d66d90f0] link (166d9120) e3 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c140)
kernel: 6: [d66d9120] link (166d9150) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c180)
kernel: 7: [d66d9150] link (166d9180) e2 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c1c0)
kernel: 8: [d66d9180] link (166d91b0) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c200)
kernel: 9: [d66d91b0] link (166d91e0) e3 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c240)
kernel: 10: [d66d91e0] link (166d9210) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c280)
kernel: 11: [d66d9210] link (166d9240) e3 SPD Length=3f MaxLen=3f DT1 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c2c0)
kernel: 12: [d66d9240] link (166d9270) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
Dev=2, PID=e1(OUT) (buf=15f5c300)
kernel: 13: [d66d9270] link (166d92a0) e0 SPD Stalled CRC/Timeo Length=3f
MaxLen=3f DT1 EndPt=1 Dev=2, PID=e1(OUT) (buf=15f5c340)
kernel: 14: [d66d92a0] link (166d92d0) e3 SPD Active Length=0 MaxLen=3f DT0
EndPt=1 Dev=2, PID=e1(OUT) (buf=15f5c380)
kernel: 15: [d66d92d0] link (00000001) e3 SPD IOC Active Length=0 MaxLen=3d
DT1 EndPt=1 Dev=2, PID=e1(OUT) (buf=15f5c3c0)
kernel:
kernel: printer.c: usblp0: nonzero read/write bulk status received: -110

Aug 6 18:46:16 kernel: [d7b0b0c0] link (17b0b062) element (166d9030)
kernel: Element != First TD
kernel: 0: [d66d9000] link (166d9030) e3 Length=7 MaxLen=7 DT0 EndPt=0 Dev=2,
PID=2d(SETUP) (buf=161364e0)
kernel: 1: [d66d9030] link (166d9060) e0 SPD Stalled CRC/Timeo Length=7ff
MaxLen=0 DT1 EndPt=0 Dev=2, PID=69(IN) (buf=167dbf67)
kernel: 2: [d66d9060] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1
EndPt=0 Dev=2, PID=e1(OUT) (buf=00000000)
kernel:

This last stanza is then repeated, every 41-160 seconds, presumably each
time CUPS tries again to print the data.

--
Peter Denison <peterd at marshadder dot uklinux dot net>
Please use this address only for personal mail, not copied to lists
gatewayed to news or web pages unless the addresses are removed.


2003-08-06 20:30:13

by Alan Stern

[permalink] [raw]
Subject: Re: [linux-usb-devel] 2.4.21 USB printer failure w/ HP PSC750

On Wed, 6 Aug 2003, Peter Denison wrote:

> Having just upgraded to 2.4.21, the first time I tried to print, the
> following happened. The printer started to print, but gave up after a
> while and spat out just about 1" of image. Needless to say, it all worked
> fine under 2.4.20.
>
> Intel 82801BA based MB, running stock 2.4.21 (compiled with gcc 3.3.1)
> with uhci driver (all on Debian testing)
>
> This debugging code was introduced during 2.4.20->2.4.21, but I'm afraid I
> don't know what the significance of it is. (Happens when td->dma_handle !=
> (qh->element & ~UHCI_PTR_BITS) )
>
> Can anyone tell me what's going on? I am happy to provide more information
> as necessary.

I can't tell you what's going on, but I can explain the debugging
messages.

> kernel: Element != First TD

That's not an error; it's just alerting you to the fact that the transfer
being shown has already begun.

> kernel: 12: [d66d9240] link (166d9270) e3 SPD Length=3f MaxLen=3f DT0 EndPt=1
> Dev=2, PID=e1(OUT) (buf=15f5c300)

Each of these guys is a packet (the data is split up into 64-byte packets)
that has been transferred to the printer successfully.

> kernel: 13: [d66d9270] link (166d92a0) e0 SPD Stalled CRC/Timeo Length=3f
> MaxLen=3f DT1 EndPt=1 Dev=2, PID=e1(OUT) (buf=15f5c340)

This is the trouble spot. It's a packet that failed 3 times because the
printer did not respond within the timeout period or because noise in the
cable prevented the response from being received.

> kernel: 14: [d66d92a0] link (166d92d0) e3 SPD Active Length=0 MaxLen=3f DT0
> EndPt=1 Dev=2, PID=e1(OUT) (buf=15f5c380)

These are additional packets that haven't been sent because the transfer
was aborted when the trouble occurred above.

> kernel: printer.c: usblp0: nonzero read/write bulk status received: -110

-110 is the code for a timeout error.

> Aug 6 18:46:16 kernel: [d7b0b0c0] link (17b0b062) element (166d9030)
> kernel: Element != First TD
> kernel: 0: [d66d9000] link (166d9030) e3 Length=7 MaxLen=7 DT0 EndPt=0 Dev=2,
> PID=2d(SETUP) (buf=161364e0)
> kernel: 1: [d66d9030] link (166d9060) e0 SPD Stalled CRC/Timeo Length=7ff
> MaxLen=0 DT1 EndPt=0 Dev=2, PID=69(IN) (buf=167dbf67)
> kernel: 2: [d66d9060] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1
> EndPt=0 Dev=2, PID=e1(OUT) (buf=00000000)

This indicates more communications problems. Have you checked that your
USB cable is okay? Did you go back to 2.4.20 to see if that still works?

Alan Stern

2003-08-06 22:32:42

by Peter Denison

[permalink] [raw]
Subject: Re: [linux-usb-devel] 2.4.21 USB printer failure w/ HP PSC750

On Wed, 6 Aug 2003, Alan Stern wrote:

> On Wed, 6 Aug 2003, Peter Denison wrote:
>
> > kernel: 2: [d66d9060] link (00000001) e3 IOC Active Length=0 MaxLen=7ff DT1
> > EndPt=0 Dev=2, PID=e1(OUT) (buf=00000000)
>
> This indicates more communications problems. Have you checked that your
> USB cable is okay? Did you go back to 2.4.20 to see if that still works?

Thanks for the detailed explanation. I am still trying to verify what
happens in 2.4.20. Unfortunately, in upgrading/installing the graphics
drivers to enable me to run 2.4.21, I am now unable to run X under 2.4.20.
I have a different graphics card on order.

Simple text printing (/etc/group, print size 1024 bytes) works under both
2.4.20 and 2.4.21, as does tiger.ps (print size ~31k), so I think it
unlikely that a cable problem is to blame, but I can't yet easily test a
large, complicated rendered graphic print on 2.4.20.

However, several reboots later, the original page is printing under
2.4.21, so I don't know now if there's a problem or not.

--
Peter Denison <peterd at marshadder dot uklinux dot net>
Please use this address only for personal mail, not copied to lists
gatewayed to news or web pages unless the addresses are removed.


2003-08-15 16:26:15

by Alan Stern

[permalink] [raw]
Subject: Re: [linux-usb-devel] 2.4.21 USB printer failure w/ HP PSC750

On Fri, 15 Aug 2003, Gene Heskett wrote:

> I can confirm that this does not appear to be printer related, this
> nearly exact scenario just happened to me while running test3-mm2. So
> I powered down the printer, in this case an Epson C82 being driven by
> cups, and then rebooted to 2.4.22-rc2. Where it also refused to
> print, until I went to the local cups page and "started" both
> printers, which had been apparently disabled by the above failure and
> it carried over the reboot from 2.6.0-test3-mm2 to 2.4.22-rc2. Once
> the printer was 'started' then the 3 jobs I'd sent were spit right out
> normally.
>
> It appears that usblp still has problems as of 2.6.0-test3-mm2.

There was a recent change to usblp for 2.6.0, reversing a prior patch
which broke the driver somehow. See

http://sourceforge.net/mailarchive/forum.php?thread_id=2931846&forum_id=5398

I don't know whether or not this change is already incorporated in the
version you're using.

Alan Stern

2003-08-15 16:19:44

by Gene Heskett

[permalink] [raw]
Subject: Re: [linux-usb-devel] 2.4.21 USB printer failure w/ HP PSC750

On Wednesday 06 August 2003 16:30, Alan Stern wrote:
>On Wed, 6 Aug 2003, Peter Denison wrote:
>> Having just upgraded to 2.4.21, the first time I tried to print,
>> the following happened. The printer started to print, but gave up
>> after a while and spat out just about 1" of image. Needless to
>> say, it all worked fine under 2.4.20.
>>

I can confirm that this does not appear to be printer related, this
nearly exact scenario just happened to me while running test3-mm2. So
I powered down the printer, in this case an Epson C82 being driven by
cups, and then rebooted to 2.4.22-rc2. Where it also refused to
print, until I went to the local cups page and "started" both
printers, which had been apparently disabled by the above failure and
it carried over the reboot from 2.6.0-test3-mm2 to 2.4.22-rc2. Once
the printer was 'started' then the 3 jobs I'd sent were spit right out
normally.

It appears that usblp still has problems as of 2.6.0-test3-mm2.

>From /var/log/messages:

Aug 15 09:59:23 coyote kernel: drivers/usb/class/usblp.c: usblp1: nonzero read/write bulk status received: -104
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -84 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -110 reading printer status
Aug 15 10:00:16 coyote last message repeated 79 times
Aug 15 10:00:16 coyote kernel: usb 1-2: USB disconnect, address 3
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -104 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 10 times
Aug 15 10:00:16 coyote kernel: ass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer s3>drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 rass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 55 times
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer sass/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote kernel: drivers/usb/class/usblp.c: usblp1: error -19 reading printer status
Aug 15 10:00:16 coyote last message repeated 229 times
Aug 15 10:00:26 coyote kernel: drivers/usb/class/usblp.c: usblp1: removed
Aug 15 10:00:26 coyote kernel: Unable to handle kernel paging request at virtual address 00010021
Aug 15 10:00:26 coyote kernel: printing eip:
Aug 15 10:00:26 coyote kernel: c027ffc7
Aug 15 10:00:26 coyote kernel: *pde = 00000000
Aug 15 10:00:26 coyote kernel: Oops: 0000 [#1]
Aug 15 10:00:26 coyote kernel: PREEMPT
Aug 15 10:00:26 coyote kernel: CPU: 0
Aug 15 10:00:26 coyote kernel: EIP: 0060:[<c027ffc7>] Not tainted VLI
Aug 15 10:00:26 coyote kernel: EFLAGS: 00010202
Aug 15 10:00:26 coyote kernel: EIP is at usb_buffer_free+0x17/0x50
Aug 15 10:00:26 coyote kernel: eax: 00010001 ebx: c166a780 ecx: def42cc0 edx: c03c0b18
Aug 15 10:00:26 coyote kernel: esi: c166a784 edi: dfff46c0 ebp: d90f9f30 esp: d90f9f20
Aug 15 10:00:26 coyote kernel: ds: 007b es: 007b ss: 0068
Aug 15 10:00:26 coyote kernel: Process usb (pid: 12673, threadinfo=d90f8000 task=def42cc0)
Aug 15 10:00:26 coyote kernel: Stack: c51aa700 c166a780 c166a784 dfff46c0 d90f9f4c c0291b50 df838400 00002000
Aug 15 10:00:26 coyote kernel: df5fe000 1f5fe000 c166a780 d90f9f64 c0291c53 c166a780 00000077 d3eabc00
Aug 15 10:00:26 coyote kernel: 00000000 d90f9f88 c0154b26 dc12ab90 d3eabc00 dc12ab90 dc101c80 d3eabc00
Aug 15 10:00:26 coyote kernel: Call Trace:
Aug 15 10:00:26 coyote kernel: [<c0291b50>] usblp_cleanup+0x40/0xa0
Aug 15 10:00:26 coyote kernel: [<c0291c53>] usblp_release+0x63/0x70
Aug 15 10:00:26 coyote kernel: [<c0154b26>] __fput+0x116/0x130
Aug 15 10:00:26 coyote kernel: [<c01530cb>] filp_close+0x8b/0xb0
Aug 15 10:00:26 coyote kernel: [<c0153152>] sys_close+0x62/0xa0
Aug 15 10:00:26 coyote kernel: [<c03560fb>] syscall_call+0x7/0xb
Aug 15 10:00:26 coyote kernel:
Aug 15 10:00:26 coyote kernel: Code: 14 89 44 24 0c ff 52 14 eb e1 8d 76 00 8d bc 27 00 00 00 00 55 89 e5 83 ec 10 8b 45 08 85 c0 74 18 8b 80 c8 00 00 00 85 c0 74 0e <8b> 50 20 85 d2 74 07 8b 4a 18 85 c9 75 02 c9 c3 89 04 24 8b 45
Aug 15 10:01:12 coyote shutdown: shutting down for system reboot
Aug 15 10:01:12 coyote init: Switching to runlevel: 6
[...]
Aug 15 10:01:19 coyote kernel: hub 1-0:0: new USB device on port 2, assigned address 4
Aug 15 10:01:19 coyote kernel: drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer dev 4 if 0 alt 0 proto 2 vid 0x04B8 pid 0x0005
---------------------
the last 2 lines were output when I turned the printer back on while
the shutdown was in progress.

All this because I wanted to print my flight itinerary for a
trip to Colorado expected to leave Sunday and be there, and out of
touch (probably, unless I can find a machine to take back to the
guest house), for 2 months. I hope I don't forget howto type by
the time I get back. :-)

And I hope 2.6 is a little closer to prime time by then. So far
its been hit or miss, but looking better with each test release. :)

--
Cheers, Gene
AMD K6-III@500mhz 320M
Athlon1600XP@1400mhz 512M
99.27% setiathome rank, not too shabby for a WV hillbilly
Yahoo.com attornies please note, additions to this message
by Gene Heskett are:
Copyright 2003 by Maurice Eugene Heskett, all rights reserved.

2003-08-15 20:05:24

by Gene Heskett

[permalink] [raw]
Subject: Re: [linux-usb-devel] 2.4.21 USB printer failure w/ HP PSC750

On Friday 15 August 2003 12:25, Alan Stern wrote:
>On Fri, 15 Aug 2003, Gene Heskett wrote:
>> I can confirm that this does not appear to be printer related,
>> this nearly exact scenario just happened to me while running
>> test3-mm2. So I powered down the printer, in this case an Epson
>> C82 being driven by cups, and then rebooted to 2.4.22-rc2. Where
>> it also refused to print, until I went to the local cups page and
>> "started" both printers, which had been apparently disabled by the
>> above failure and it carried over the reboot from 2.6.0-test3-mm2
>> to 2.4.22-rc2. Once the printer was 'started' then the 3 jobs I'd
>> sent were spit right out normally.
>>
>> It appears that usblp still has problems as of 2.6.0-test3-mm2.
>
>There was a recent change to usblp for 2.6.0, reversing a prior
> patch which broke the driver somehow. See
>
>http://sourceforge.net/mailarchive/forum.php?thread_id=2931846&forum
>_id=5398
>
>I don't know whether or not this change is already incorporated in
> the version you're using.
>
>Alan Stern

I don't believe it is Alan, and it will now have to wait till late
October and my return from putting out a few fires at a sister tv
station.

By then maybe 2.6.0-rc3 will be out?

--
Cheers, Gene
AMD K6-III@500mhz 320M
Athlon1600XP@1400mhz 512M
99.27% setiathome rank, not too shabby for a WV hillbilly
Yahoo.com attornies please note, additions to this message
by Gene Heskett are:
Copyright 2003 by Maurice Eugene Heskett, all rights reserved.