Printer problem with 2.0.35

Sascha Ziemann (szi@aibon.ping.de)
Fri, 14 Aug 1998 13:35:10 +0200


Hi,

after upgrading from 2.0.33 to 2.0.35 my printer start to become
extremly slow. After each line it stops printing and waits for
something.

The changes from 2.0.33 to 2.0.35 where:

--- /usr/src/linux-2.0.33.SuSE/drivers/char/lp.c Fri Apr 4
05:15:34 1997
+++ lp.c Mon Jul 13 22:47:29 1998
@@ -89,7 +89,14 @@
while(wait != LP_WAIT(minor)) wait++;
/* control port takes strobe high */
outb_p(( LP_PSELECP | LP_PINITP | LP_PSTROBE ), ( LP_C( minor
)));
- while(wait) wait--;
+ /* Wait until NBUSY line goes high */
+ count = 0;
+ do {
+ status = LP_S(minor);
+ count++;
+ if (need_resched)
+ schedule();
+ } while (LP_READY(minor, status) && (count<LP_CHAR(minor)));
/* take strobe low */
outb_p(( LP_PSELECP | LP_PINITP ), ( LP_C( minor )));
/* update waittime statistics */

When I use the 2.0.33 lp.c with the 2.0.35 kernel everything works fine.
I have no idea what the busy waiting stuff is for but it seams to be
buggy.

Hardware: Gigabyte LX2, Bios 1.14, PII333, Epson 800

-- 
/* In the beginning was the Word: */
typedef long SCM;

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html