Re: [PATCH] nvidiafb: fix unreachable code in nv10GetConfig

From: Nathan Lynch
Date: Wed Nov 08 2006 - 17:04:45 EST


Andrew Morton wrote:
> On Wed, 8 Nov 2006 13:55:11 -0600
> Nathan Lynch <ntl@xxxxxxxxx> wrote:
>
> > Fix binary/logical operator typo which leads to unreachable code.
> > Noticed while looking at other issues; I don't have the relevant
> > hardware to test this.
> >
> >
> > Signed-off-by: Nathan Lynch <ntl@xxxxxxxxx>
> >
> > --- linux-2.6-powerpc.git.orig/drivers/video/nvidia/nv_setup.c
> > +++ linux-2.6-powerpc.git/drivers/video/nvidia/nv_setup.c
> > @@ -262,7 +262,7 @@ static void nv10GetConfig(struct nvidia_
> > #endif
> >
> > dev = pci_find_slot(0, 1);
> > - if ((par->Chipset && 0xffff) == 0x01a0) {
> > + if ((par->Chipset & 0xffff) == 0x01a0) {
> > int amt = 0;
> >
> > pci_read_config_dword(dev, 0x7c, &amt);
>
> That looks like a pretty significant bug. It'll cause the kernel to
> potentially map the wrong amount of memory for all cards except the
> NV_ARCH_04 type. Has been there for over a year though. hmm..

Did some searching, and assuming that chipset == PCI device id
(dubious?), I think the bug would affect only some integrated GeForce2
cards, which are somewhat old.

It looks to me like the other devices handled by nv10GetConfig would
still be handled as intended, but I'm not familiar with this code.

-
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/