Re: [PARPORT] lp


Andrea Arcangeli (arcangeli@mbox.queen.it)
Wed, 15 Apr 1998 00:26:09 +0200 (CEST)


On Sun, 12 Apr 1998, Philip Blundell wrote:

>- if ((!(status & LP_PACK) || (status & LP_PBUSY))
>- && LP_CAREFUL_READY(minor, status)) {
>- w_ctr(minor, LP_PSELECP | LP_PINITP);
>- sti();
>+ if (!(status & LP_PACK) || LP_CAREFUL_READY(minor, status)) {
>+ /* The printer went ready while we weren't looking. */
>+ w_ctr(minor, LP_PSELECP|LP_PINITP);
> continue;
> }

The patch fix the interrupt handling since force lp to not use interrupt
at all. If you don' t set in LP_F(minor) LP_CAREFUL the test you changed
force lp to not sleep on over the interrupt.

This:

if (!(status & LP_PACK) || LP_CAREFUL_READY(minor, status)) {

is the same of this:

if (!(status & LP_PACK) || 1)

in the default case.

I suggest people is having troubles to use lp polled (pratically the
same that this patch does) while we fix really the bug. Please reject
the patch if it' s been applyed to the offcial kernel.

Andrea[s] Arcangeli

-- To unsubscribe, send mail to: linux-parport-request@torque.net --
-- with the single word "unsubscribe" in the body of the message. --



This archive was generated by hypermail 2.0b3 on Wed 30 Dec 1998 - 10:17:37 EST