-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Dave,
I tried to follow your instructions. I modified usblp_check_status()
as follows (after applying your patch printer-0518.patch):
static int usblp_check_status(struct usblp *usblp, int err)
{
unsigned char status, newerr = 0;
int save_status = usblp->writeurb.status;
if (usblp_read_status(usblp, &status)) {
err("usblp%d: failed reading printer status #2 (%d)",
usblp->minor, save_status);
return 0;
}
if (~status & LP_PERRORP) {
newerr = 3;
if (status & LP_POUTPA) newerr = 1;
if (~status & LP_PSELECD) newerr = 2;
}
if (newerr != err)
info("usblp%d: %s", usblp->minor, usblp_messages[newerr]);
return newerr;
}
Then I did my usual "cat /boot/bzImage > /dev/usb/lp0" after turning
the printer off. This gave a flood of
printer.c: usblp0: failed reading printer status #2 (-110)
which means that status is -ETIMEDOUT, I suppose. When I did rmmod
usb-ohci, the message error flood stoped, and the following oops
resulted:
printer.c: usblp0: failed reading printer status #2 (-110)
printer.c: usblp0: failed reading printer status #2 (-110)
printer.c: usblp0: failed reading printer status #2 (-110)
printer.c: usblp0: failed reading printer status #2 (-110)
printer.c: usblp0: failed reading printer status #2 (-110)
pci_pool_destroy 00:07.4/ohci_td, d766c000 busy
pci_pool_destroy 00:07.4/ohci_dev, d1ae1000 busy
printer: Device or resource busy
usbcore: Device or resource busy
printer.c: usblp0: failed reading printer status #2 (-110)
Unable to handle kernel paging request at virtual address d88226f8
printing eip:
d880ed01
*pde = 17beb067
*pte = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<d880ed01>]
EFLAGS: 00010286
eax: d88226ec ebx: d2063ea4 ecx: d2063e90 edx: d7ccf0a0
esi: d7ccf0a0 edi: d2063eb4 ebp: 000001f4 esp: d2063e6c
ds: 0018 es: 0018 ss: 0018
Process cat (pid: 1443, stackpage=d2063000)
Stack: d7ccf0a0 d880ee22 d7ccf0a0 d7ed4e00 80000380 d3746d00 d2063f7b d2062000
d2063ea4 d2063ea4 00000000 00000000 d2063ea8 d2063ea8 00000000 d2063ebc
d2063ebc 00000000 00000000 d2062000 d2063ea8 d2063ea8 d880ef53 d7ccf0a0
Call Trace: [<d880ee22>] [<d880ef53>] [<d880efe0>] [<d881b0d2>] [<d881b15e>]
[<d881b60b>] [<c012b0f6>]
[<c0106adf>]
Code: 8b 40 0c ff d0 83 c4 04 c3 8d b6 00 00 00 00 b8 ed ff ff ff
Here is the ksymoops output:
ksymoops 2.3.7 on i686 2.4.4. Options used
-V (default)
-k proc.ksyms (specified)
-l proc.modules (specified)
-o /lib/modules/2.4.4/ (default)
-m /boot/System.map-2.4.4 (specified)
Unable to handle kernel paging request at virtual address d88226f8
d880ed01
*pde = 17beb067
Oops: 0000
CPU: 0
EIP: 0010:[<d880ed01>]
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010286
eax: d88226ec ebx: d2063ea4 ecx: d2063e90 edx: d7ccf0a0
esi: d7ccf0a0 edi: d2063eb4 ebp: 000001f4 esp: d2063e6c
ds: 0018 es: 0018 ss: 0018
Process cat (pid: 1443, stackpage=d2063000)
Stack: d7ccf0a0 d880ee22 d7ccf0a0 d7ed4e00 80000380 d3746d00 d2063f7b d2062000
d2063ea4 d2063ea4 00000000 00000000 d2063ea8 d2063ea8 00000000 d2063ebc
d2063ebc 00000000 00000000 d2062000 d2063ea8 d2063ea8 d880ef53 d7ccf0a0
Call Trace: [<d880ee22>] [<d880ef53>] [<d880efe0>] [<d881b0d2>] [<d881b15e>]
[<d881b60b>] [<c012b0f6>]
[<c0106adf>]
Code: 8b 40 0c ff d0 83 c4 04 c3 8d b6 00 00 00 00 b8 ed ff ff ff
>>EIP; d880ed01 <[usbcore]usb_submit_urb+19/30> <=====
Trace; d880ee22 <[usbcore]usb_start_wait_urb+b2/184>
Trace; d880ef53 <[usbcore]usb_internal_control_msg+5f/74>
Trace; d880efe0 <[usbcore]usb_control_msg+78/98>
Trace; d881b0d2 <[printer]usblp_ctrl_msg+72/84>
Trace; d881b15e <[printer]usblp_check_status+2a/94>
Trace; d881b60b <[printer]usblp_write+11f/1a8>
Trace; c012b0f6 <sys_write+92/c8>
Trace; c0106adf <system_call+33/38>
Code; d880ed01 <[usbcore]usb_submit_urb+19/30>
00000000 <_EIP>:
Code; d880ed01 <[usbcore]usb_submit_urb+19/30> <=====
0: 8b 40 0c movl 0xc(%eax),%eax <=====
Code; d880ed04 <[usbcore]usb_submit_urb+1c/30>
3: ff d0 call *%eax
Code; d880ed06 <[usbcore]usb_submit_urb+1e/30>
5: 83 c4 04 addl $0x4,%esp
Code; d880ed09 <[usbcore]usb_submit_urb+21/30>
8: c3 ret
Code; d880ed0a <[usbcore]usb_submit_urb+22/30>
9: 8d b6 00 00 00 00 leal 0x0(%esi),%esi
Code; d880ed10 <[usbcore]usb_submit_urb+28/30>
f: b8 ed ff ff ff movl $0xffffffed,%eax
Here is the relevant section of /var/log/messages:
May 18 20:59:22 anders kernel: usb.c: registered new driver usbdevfs
May 18 20:59:22 anders kernel: usb.c: registered new driver hub
May 18 20:59:22 anders kernel: usb.c: registered new driver usblp
May 18 20:59:26 anders kernel: usb-ohci.c: USB OHCI at membase 0xd8824000, IRQ 11
May 18 20:59:26 anders kernel: usb-ohci.c: usb-00:07.4, PCI device 1022:740c
May 18 20:59:26 anders kernel: usb-ohci.c: AMD756 erratum 4 workaround
May 18 20:59:26 anders kernel: usb.c: new USB bus registered, assigned bus number 1
May 18 20:59:26 anders kernel: hub.c: USB hub found
May 18 20:59:26 anders kernel: hub.c: 4 ports detected
May 18 20:59:27 anders kernel: hub.c: USB new device connect on bus1/1, assigned
device number 2
May 18 20:59:27 anders kernel: printer.c: usblp0: USB Bidirectional printer dev 2 if 0
alt 0
May 18 21:00:36 anders PAM_pwdb[507]: (login) session closed for user root
May 18 21:01:07 anders kernel: usb.c: USB disconnect on device 2
May 18 21:01:07 anders kernel: printer.c: usblp0: removed
May 18 21:01:15 anders kernel: hub.c: USB new device connect on bus1/1, assigned
device number 3
May 18 21:01:15 anders kernel: printer.c: usblp0: USB Bidirectional printer dev 3 if 0
alt 0
May 18 21:01:57 anders kernel: printer.c: usblp0: nonzero read/write bulk status
received: -110
May 18 21:01:57 anders kernel: printer.c: usblp0: failed reading printer status #2
(-110)
May 18 21:01:57 anders last message repeated 81 times
May 18 21:01:57 anders kernel: usb.c: USB disconnect on device 3
May 18 21:01:57 anders kernel: printer.c: usblp0: failed reading printer status #2
(-110)
May 18 21:02:19 anders last message repeated 21273 times
May 18 21:02:19 anders PAM_pwdb[1433]: (login) session opened for user root by (uid=0)
May 18 21:02:19 anders kernel: printer.c: usblp0: failed reading printer status #2
(-110)
May 18 21:02:24 anders last message repeated 5272 times
May 18 21:02:24 anders kernel: usb.c: USB disconnect on device 1
May 18 21:02:24 anders kernel: usb.c: USB bus 1 deregistered
May 18 21:02:24 anders kernel: pci_pool_destroy 00:07.4/ohci_td, d766c000 busy
May 18 21:02:24 anders kernel: pci_pool_destroy 00:07.4/ohci_dev, d1ae1000 busy
May 18 21:02:24 anders kernel: printer.c: usblp0: failed reading printer status #2
(-110)
May 18 21:02:24 anders kernel: Unable to handle kernel paging request at virtual
address d88226f8
May 18 21:02:24 anders kernel: printing eip:
May 18 21:02:24 anders kernel: d880ed01
May 18 21:02:24 anders kernel: *pde = 17beb067
May 18 21:02:24 anders kernel: *pte = 00000000
May 18 21:02:24 anders kernel: Oops: 0000
May 18 21:02:24 anders kernel: CPU: 0
May 18 21:02:24 anders kernel: EIP:
0010:[nfsd:__insmod_nfsd_O/lib/modules/2.4.4/kernel/fs/nfsd/nfsd.o_M3B+-377599/96]
May 18 21:02:24 anders kernel: EFLAGS: 00010286
May 18 21:02:24 anders kernel: eax: d88226ec ebx: d2063ea4 ecx: d2063e90 edx:
d7ccf0a0
May 18 21:02:24 anders kernel: esi: d7ccf0a0 edi: d2063eb4 ebp: 000001f4 esp:
d2063e6c
May 18 21:02:24 anders kernel: ds: 0018 es: 0018 ss: 0018
May 18 21:02:24 anders kernel: Process cat (pid: 1443, stackpage=d2063000)
May 18 21:02:24 anders kernel: Stack: d7ccf0a0 d880ee22 d7ccf0a0 d7ed4e00 80000380
d3746d00 d2063f7b d2062000
May 18 21:02:24 anders kernel: d2063ea4 d2063ea4 00000000 00000000 d2063ea8
d2063ea8 00000000 d2063ebc
May 18 21:02:24 anders kernel: d2063ebc 00000000 00000000 d2062000 d2063ea8
d2063ea8 d880ef53 d7ccf0a0
May 18 21:02:24 anders kernel: Call Trace: [nfsd:__insmod_nfsd_O/lib/modules/2.4
.4/kernel/fs/nfsd/nfsd.o_M3B+-377310/96] [nfsd:__insmod_nfsd_O/lib/modules/2.4.4
/kernel/fs/nfsd/nfsd.o_M3B+-377005/96] [nfsd:__insmod_nfsd_O/lib/modules/2.4.4/k
ernel/fs/nfsd/nfsd.o_M3B+-376864/96] [nfsd:__insmod_nfsd_O/lib/modules/2.4.4/ker
nel/fs/nfsd/nfsd.o_M3B+-327470/96] [nfsd:__insmod_nfsd_O/lib/modules/2.4.4/kerne
l/fs/nfsd/nfsd.o_M3B+-327330/96] [nfsd:__insmod_nfsd_O/lib/modules/2.4.4/kernel/
fs/nfsd/nfsd.o_M3B+-326133/96] [sys_write+146/200]
May 18 21:02:24 anders kernel: [system_call+51/56]
May 18 21:02:24 anders kernel:
May 18 21:02:24 anders kernel: Code: 8b 40 0c ff d0 83 c4 04 c3 8d b6 00 00 00 00 b8
ed ff ff ff
May 18 21:04:28 anders PAM_pwdb[506]: (login) session closed for user root
May 18 21:04:30 anders PAM_pwdb[1433]: (login) session closed for user root
Sincerely, Anders
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.5 (SunOS)
Comment: For info see http://www.gnupg.org
iD8DBQE7Bc9xWyfD6jrb5n4RAqgWAJ9NAcX+bDm6VPFqqMLpZG2hoi9TqwCeKhWO
gNg53UoC7bj8bJ2hv4ixtuk=
=aMNy
-----END PGP SIGNATURE-----
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel