Re: [PATCH] i810fb: Fix console switch regression

From: Stefan Bauer
Date: Tue Mar 18 2008 - 03:10:32 EST


Am Dienstag, 18. März 2008 04:48 schrieb Andrew Morton:
> On Mon, 17 Mar 2008 16:41:10 +0100 Stefan Bauer
<stefan.bauer@xxxxxxxxxxxxxxxxx> wrote:
> > From: Stefan Bauer <stefan.bauer@xxxxxxxxxxxxxxxxx>
> >
> > Since 4c7ffe0b9f7f40bd818fe3af51342f64c483908e ("fbdev: prevent drivers
> > that have hardware cursors from calling software cursor code") every call
> > of i810fb_cursor fails with -ENXIO because of a incorrect "!".
> >
> > This hasn't striked until eaa0ff15c30dc9799eb4d12660edb73aeb6d32c5 ("fix
> > ! versus & precedence in various places") surrounded the expression with
> > braces, so that the intended behavior was inverted. That caused 'pixel
> > waste' - the same line of multi-colored pixels repeated over the whole
> > screen - during console switch.
> >
> > This switches back to the original pre-4c7ffe0 behavior.
> >
> > Signed-off-by: Stefan Bauer <stefan.bauer@xxxxxxxxxxxxxxxxx>
> > Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> > Cc: Antonino Daplas <adaplas@xxxxxxx>
> >
> > --- linux-2.6/drivers/video/i810/i810_main.c.orig
> > +++ linux-2.6/drivers/video/i810/i810_main.c
> > @@ -1476,7 +1476,7 @@ static int i810fb_cursor(struct fb_info
> > struct i810fb_par *par = info->par;
> > u8 __iomem *mmio = par->mmio_start_virtual;
> >
> > - if (!(par->dev_flags & LOCKUP))
> > + if (par->dev_flags & LOCKUP)
> > return -ENXIO;
> >
> > if (cursor->image.width > 64 || cursor->image.height > 64)
>
> Can you please confirm that this actually fixes the bug? That wasn't
> clear.
>
> Thanks.

Yes, yesterday I worked the whole day with that machine running -rc6 + my
patch. The regression definitely is fixed, fbi and fbset work w/o problems or
new regressions.

Regards
Stefan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/