Re: mmotm 2011-03-02 - ACPI/sysfs WARNING with NVidia graphics card

From: Zhang Rui
Date: Fri Mar 04 2011 - 00:28:15 EST


On Fri, 2011-03-04 at 12:28 +0800, Valdis.Kletnieks@xxxxxx wrote:
> On Thu, 03 Mar 2011 16:05:50 PST, Greg KH said:
>
> > > [ 0.818236] [Firmware Bug]: Duplicate ACPI video bus devices for the same VGA controller, please try module parameter "video.allow_duplicates=1"if the current driver doesn't work.
> >
> > Have you tried this option?
> >
> > There's nothing sysfs can do here, sorry, it really looks like you have
> > a BIOS/firmware problem.
>
right.
this warning message is printed out because there are two ACPI devices
for the same VGA controller, and Linux has no idea which can actually
change the backlight.

> Well, (a) it's been saying "try it if the current driver doesn't work" - and
> things have worked just fine all along (or more properly, if it's broken in
> behavior, I haven't actually seen the effects...)
>
> and (b) Something changed very recently to add the WARNING, which wasn't there
> in rc5-next-2011022.
>
well. c504f8cb has been shipped in 2.6.33-rc5.
can you attach the acpidump output of this machine please?
please attach the dmesg output both with and without this warning.
please attach the output of "grep . /sys/bus/acpi/drivers/video/*/path"
in both kernels.

> And (c) I doubt that's going to fix the WARNING, because looking at drivers/
> acpi/video.c, the variable allow_duplicates is checked in exactly *ONE* place,
> which is *after* the printk:
>
> if (status == AE_ALREADY_EXISTS) {
> printk(KERN_WARNING FW_BUG
> "Duplicate ACPI video bus devices for the"
> " same VGA controller, please try module "
> "parameter \"video.allow_duplicates=1\""
> "if the current driver doesn't work.\n");
> if (!allow_duplicates)
> return -ENODEV;
> }
>
> So since the warning triggers before we see the printk(), setting the variable
> won't make a difference because we warn before we ever get into that if
> statement.
>
> Now, maybe we need to be checking allow_duplicates earlier and/or in other
> places - but I'll let somebody who actually understands the code to decide taht. ;)



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