]> git.baikalelectronics.ru Git - kernel.git/commit
acpi: fix _OSI string setup regression
authorLin Ming <ming.m.lin@intel.com>
Thu, 9 Dec 2010 08:50:52 +0000 (16:50 +0800)
committerLen Brown <len.brown@intel.com>
Sat, 11 Dec 2010 06:28:58 +0000 (01:28 -0500)
commitc00dcf2ea835c89d5d0e0f44c86299572253e84a
tree89696463c63038cb37609873951b0cdb4dc473f6
parent008a809c1876b772916100e73b1af144d2c29802
acpi: fix _OSI string setup regression

commit 94768542(ACPICA/ACPI: Add new host interfaces for _OSI suppor)
introduced a regression that _OSI string setup fails.

There are 2 paths to setup _OSI string.

DMI:
acpi_dmi_osi_linux -> set_osi_linux -> acpi_osi_setup -> copy _OSI
string to osi_setup_string

Boot command line:
acpi_osi_setup -> copy _OSI string to osi_setup_string

Later, acpi_osi_setup_late will be called to handle osi_setup_string.
If _OSI string is "Linux" or "!Linux", then the call path is,

acpi_osi_setup_late -> acpi_cmdline_osi_linux -> set_osi_linux ->
acpi_osi_setup -> copy _OSI string to osi_setup_string

This actually never installs _OSI string(acpi_install_interface not
called), but just copy the _OSI string to osi_setup_string.

This patch fixes the regression.

Reported-and-tested-by: Lukas Hejtmanek <xhejtman@ics.muni.cz>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/osl.c
include/linux/acpi.h