lpd forks wildly with large printcap under 2.0.30

Patrick J. LoPresti (patl@lcs.mit.edu)
23 Apr 1997 18:59:08 -0400


I have a RedHat 4.1 system on which I have upgraded the kernel from
2.0.27 to 2.0.30. It has a large (400+K) /etc/printcap file.

When lpd starts, it seems to go into some kind of forking loop,
spawning new lpds forever and giving messages to syslog like the
following:

Apr 23 18:33:15 sabaki lpd[4366]: unknown printer: Please see the master file.
Apr 23 18:33:27 sabaki lpd[5371]: unknown printer: Pastra# To update it, please see the master file.
Apr 23 18:33:29 sabaki lpd[5505]: unknown printer: DIFICATION DATE BELOW!!
Apr 23 18:33:33 sabaki lpd[5840]: unknown printer: Paperhau############
Apr 23 18:33:34 sabaki lpd[5898]: unknown printer: PaperhaviSS
Apr 23 18:34:00 sabaki lpd[7968]: unknown printer: c/m4/printcap and distributed with "make root" in /src/admin/rdist
Apr 23 18:34:00 sabaki lpd[8014]: unknown printer: salami############################################################
Apr 23 18:34:03 sabaki lpd[8203]: unknown printer: P#################################################
Apr 23 18:34:06 sabaki lpd[8495]: unknown printer: Paperhaus#########################################################

The "unknown printers" are more-or-less random strings (comments,
pieces of printcap entries) from /etc/printcap.

If I shorten the printcap file to a few thousand bytes, the problem
goes away. If I downgrade the kernel to 2.0.27, the problem also goes
away.

My guess is that the multitude of lpds reading /etc/printcap are
somehow interfering with each other (obviously).

Let me know if there is any other information I can collect for you.

Thanks!

- Pat