PCI ACPI: fix uninitialized variable in __pci_osc_support_set
authorKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Thu, 8 May 2008 05:37:25 +0000 (14:37 +0900)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Tue, 13 May 2008 16:51:53 +0000 (09:51 -0700)
Fix uninitialized variable in __pci_osc_support_set().

If the ACPI namespace doesn't have any device object corresponding to
the specified hid, 'retval' in __pci_osc_support_set() is not changed
by the acpi_query_osc() callback. Since 'retval' is not initizlized in
the current implementation, the contents of 'retval' is undefined in
this case. This causes a mis-handling of ctrlset_buf[OSC_SUPPORT_TYPE]
and will cause an unexpected result in the subsequent
pci_osc_control_set() call as a result.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pci-acpi.c

index 72f7476930c857ffa20a4c323dff3af6bf7c9baa..ddfd756fc8eded6ee98f6a2291fd6360ddebf123 100644 (file)
@@ -166,7 +166,7 @@ run_osc_out:
 acpi_status __pci_osc_support_set(u32 flags, const char *hid)
 {
        u32 temp;
-       acpi_status retval;
+       acpi_status retval = AE_NOT_FOUND;
 
        if (!(flags & OSC_SUPPORT_MASKS)) {
                return AE_TYPE;