Date: Sat, 3 Apr 1999 22:59:50 -0800 From: "Morgan Davis" <mdavis@cts.com> To: <freebsd-stable@freebsd.org> Subject: Printing snafu in 3.1 may lead to my death Message-ID: <NBBBLJLIKEECAFCFNAKFEEOGCCAA.mdavis@cts.com>
next in thread | raw e-mail | index | archive | help
Recently, I reported that with a completely new installation of 3.1-RELEASE (and a subsequent -stable cvsup and "make world" as of yesterday), printing no longer works properly. Prior to that, I'd been successfully using FreeBSD 2.2.8 as a print server to an HP DeskJet 870cxi connected to the parallel port. I could print locally via Netscape through Ghostscript, as well as from remote Windows machines via Samba. I'm not seeing reports of this from anyone else, so I must be doing something wrong with 3.1. If I don't get this resolved soon, my wife and kids, who need the printer more than I do, are going to kill me. You don't want that on your conscience. :-) First, here's the Trouble. Start a print job in any of three ways: X+Netscape+Ghostscript locally, remote Windows machine via Samba, or Windows 2000 via LPR-mode TCP/IP printing. Either way, a job lands in the spool, the printer kicks in and starts chugging. It prints about an inch or two of the document, then goes nuts. The start of the image (e.g., a web page with graphics or a Windows "test page") is clearly recognizable, but it suddenly falls out of graphics mode, and garbage characters begin (like a flow control or buffer overrun problem). The finale is page after blank page ejected, until I intervene and kill the lpd process, turn off the printer, etc. I verified that the Windows machines are queuing and printing properly by directly connecting one of them to the printer using the same parallel cable. I was able to print plain text from within the Unix environment, and I got several pages of "od" output with only minor artifacts (like either a character duplicated or a character missing -- maybe one error in three or four pages). So it's not the source machines, cable or printer. It's something local to the FreeBSD machine itself. Again, this all used to work until the OS changed from 2.2.8 to 3.1-stable -- a new installation (not an upgrade). System ingredients: - HP DeskJet 870cxi - FreeBSD 3.1-stable on a Pentium 120, 96MB RAM - Standard parallel port (EPP and ECP modes in BIOS also tested with no success) - Kernel based on GENERIC, with all the parallel stuff: # Parallel port device ppc0 at isa? port? net irq 7 controller ppbus0 device nlpt0 at ppbus? device plip0 at ppbus? device ppi0 at ppbus? Here's what the probe sees: ppc0 at 0x378 irq 7 on isa ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode ppb0: IEEE1284 device found /NIBBLE/PS2/ECP Probing for PnP devices on ppbus0: ppbus0: <HEWLETT-PACKARD DESKJET 870C> PCL,MLC,PML nlpt0: <generic printer> on ppbus 0 nlpt0: Interrupt-driven port ppi0: <generic parallel i/o> on ppbus 0 plip0: <PLIP network interface> on ppbus 0 I read the entire printing section in the handbook, and as far as I can tell, I'm doing all the right things in printcap (the same configuration worked with 2.2.8). Here's the one used by the Windows machines (\033E is Escape-E, which resets the printer): djraw|hpdjraw:HP DeskJet 870Cxi Raw Output:\ :lp=/dev/lpt0:mx#0:\ :sd=/var/spool/lpd/hpdjraw:\ :lf=/var/log/lpd-errs:\ :ff=\033E:fo:sh:tr=\033E: I read the 3.1 release notes about ppbus and ppc replacing the "now deprecated lpt", and as instructed, I read the man pages aloud as an incantation. I looked through MAKEDEV to find a device target for nlpt, but there is none. I hunted around through kernel sources looking for major and minor device numbers for nlpt so I could do my own mknod, etc. I tried using ppi0 instead of lpt0 (not allowed). So it's all been a fruitless exercise. As you can see, the level of desparation has sent me back here where the Geniuses hang out. Certainly someone has an idea of what to try next. I'm willing to try anything, including putting the old FreeBSD 2.2.8 drive back into the case to verify that it really did work for two+ years on this same hardware. I'm not sure what it would prove, one way or the other, with respect to 3.1, so I'm hesitant to go through that trouble just yet. --Morgan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?NBBBLJLIKEECAFCFNAKFEEOGCCAA.mdavis>