kern/78711: Parallel printer incredibly slow

Jason Bacon bacon at smithers.neuro.mcw.edu
Mon Mar 14 09:11:06 PST 2005


There was a mistake in my fix: The real solution is lptcontrol -p (not 
lptcontrol -s).  "lptcontrol -s" restored functionality at one point after 
several other tweaks, but by itself, after a fresh reboot, does not solve 
the problem, while "lptcontrol -p" does.

I also tried forcing the mode to ECP with

loader.conf
-----------
hint.ppc.0.flags="0xC8"

dmesg.boot
----------
ppc0: <ECP parallel printer port> port 0x778-0x77b,0x378-0x37b irq 7 drq 3 
flags
  0xc8 on acpi0
ppc0: SMC-like chipset (ECP-only) in ECP mode
ppbus0: <Parallel port bus> on ppc0
ppbus0: IEEE1284 device found /NIBBLE
Probing for PnP devices on ppbus0:
ppbus0: <EPSON Stylus COLOR 640> PRINTER ESCPL2,BDC
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0

This did NOT help - I still had to use "lptcontrol -p" to get the printer 
running at normal speed.

I also found that polling puts a pretty heavy load on the system under 
some circumstances, like printing a high-quality photo from my iBook lpd 
client, although for most printing (e.g. printing WEB pages and OpenOffice 
docs through the stc_h filter) the load is negligible.

The iBook client prints through a raw queue:

stc_raw:\
     :lp=/dev/lpt0:\
     :sd=/var/spool/lpd/stc_raw:\
     :lf=/var/spool/lpd/stc_raw/log:\
     :af=/var/spool/lpd/stc_raw/acct:\
     :mx#0:\
     :sh:

so it's definitely due to polling, and not filtering of any sort.  Top 
also showed that most of the load was system time, whereas print filtering 
usually shows up as user time, more specifically "gs".

 	Jason

On Fri, 11 Mar 2005, Suporte Matik wrote:

> On Friday 11 March 2005 19:42, Jason Bacon wrote:
>>> Number:         78711
>>> Category:       kern
>>> Synopsis:       Parallel printer incredibly slow
>>> Confidential:   no
>>> Severity:       serious
>>> Release:        FreeBSD 5.3-RELEASE i386
>> FreeBSD sculpin.tds.net 5.3-RELEASE FreeBSD 5.3-RELEASE #0: Sun Dec 19
>> 15:26:36 CST 2004     bacon at sculpin.tds.net:/usr/obj/usr/src/sys/sculpin
>> i386
>>
>>> Description:
>>
>> 	The parallel printer runs ridiculously slow.  It prints normally
>> 	for about 30 seconds, then prints one line every 5 or 10 minutes.
>> 	One photo from an iBook client to a Stylus 640 took about 12 hours
>> 	using lpd server to a raw printer queue.  A page from konqueror
>> 	using stc_h driver with apsfilter took over an hour.
>>
>>> How-To-Repeat:
>>
>> 	Print any lengthy document to the parallel printer.
>>
>
> any two lines text file needs 15 minutes to be printed
>
>>> Fix:
>>
>> 	lptcontrol -s resolves the problem.  This looks to me much
>> 	like a timing issue that plagued some googlers in the late 1990s.
>> 	Running in polled mode on this system does not impact the system
>> 	(ASUS P5A, K6-2 500Mhz) significantly,
>>
>
> does not fix, the problem is as well with lpr and cups local/remote
>
> the only way to get "some more speed" is using b/w and 150 dpi on a HPDJ, any
> gray or color mode is slow
>
>> 	although it might on a faster, higher volume parallel printer.
>> 	For this reason, forcing the mode to something other than COMPATIBLE
>> 	via /boot/device.hints might be a better alternative for some
>> 	people.  Check your BIOS to see what modes are supported for the
>> 	parallel port, and "man ppc" for details on port settings in
>> 	device.hints.
>
> doesn't matter what you set in the BIOS or whatever, any gray or colormode on
> 5.3 is that inacceptable slow
>
> using the exactly same printer and port settings on 5.2.1 or 4.11 brings you
> back to the expected printing speed
>
> you even can use the exact same clean ports tree and compiling cupsd +
> foomatic and 5.3 is slow and 5.2.1 and 4.11 is normal speed
>
> But printing to a remote cups tree from 5.3 is giving the normal performance.
>
>
> Hans
>
>
>>
>>> Release-Note:
>>> Audit-Trail:
>>> Unformatted:
>>
>> _______________________________________________
>> freebsd-bugs at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
>> To unsubscribe, send any mail to "freebsd-bugs-unsubscribe at freebsd.org"
>
> -- 
>
>
> Infomatik
> implementamos asas na sua rede.
>  (18)3551.3591 (18)8112.7007
> _______________________________________________________
> Participe! FreeBSD - Security - Wireless e outras
> Entre em http://listas.matik.com.br e inscreva-se!
> _______________________________________________________
> Mensagens sem assinatura GPG não são nossas.
> Messages without GPG signature are not from us.
> _______________________________________________________
>


More information about the freebsd-bugs mailing list