ACPICA: Fix index value in package warning message
authorBob Moore <robert.moore@intel.com>
Thu, 19 Mar 2009 02:14:45 +0000 (10:14 +0800)
committerLen Brown <len.brown@intel.com>
Fri, 27 Mar 2009 16:11:06 +0000 (12:11 -0400)
For predefined method validation. Index value in warning message
could be off by one.

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/acpica/nspredef.c

index 0d0b4ee1358e78c3f75cc3238b38a6027b07f760..d9e8cbc6e679732d9a362d71f604a51d1683d223 100644 (file)
@@ -79,7 +79,9 @@ acpi_ns_check_package(char *pathname,
 static acpi_status
 acpi_ns_check_package_elements(char *pathname,
                               union acpi_operand_object **elements,
-                              u8 type1, u32 count1, u8 type2, u32 count2);
+                              u8 type1,
+                              u32 count1,
+                              u8 type2, u32 count2, u32 start_index);
 
 static acpi_status
 acpi_ns_check_object_type(char *pathname,
@@ -473,7 +475,7 @@ acpi_ns_check_package(char *pathname,
                                                        package->ret_info.
                                                        object_type2,
                                                        package->ret_info.
-                                                       count2);
+                                                       count2, 0);
                if (ACPI_FAILURE(status)) {
                        return (status);
                }
@@ -624,7 +626,7 @@ acpi_ns_check_package(char *pathname,
                                                                   object_type2,
                                                                   package->
                                                                   ret_info.
-                                                                  count2);
+                                                                  count2, 0);
                                if (ACPI_FAILURE(status)) {
                                        return (status);
                                }
@@ -673,7 +675,8 @@ acpi_ns_check_package(char *pathname,
                                                                   object_type1,
                                                                   sub_package->
                                                                   package.
-                                                                  count, 0, 0);
+                                                                  count, 0, 0,
+                                                                  0);
                                if (ACPI_FAILURE(status)) {
                                        return (status);
                                }
@@ -711,7 +714,8 @@ acpi_ns_check_package(char *pathname,
                                                                   ret_info.
                                                                   object_type1,
                                                                   (expected_count
-                                                                   - 1), 0, 0);
+                                                                   - 1), 0, 0,
+                                                                  1);
                                if (ACPI_FAILURE(status)) {
                                        return (status);
                                }
@@ -759,6 +763,7 @@ acpi_ns_check_package(char *pathname,
  *              Count1          - Count for first group
  *              Type2           - Object type for second group
  *              Count2          - Count for second group
+ *              start_index     - Start of the first group of elements
  *
  * RETURN:      Status
  *
@@ -770,7 +775,9 @@ acpi_ns_check_package(char *pathname,
 static acpi_status
 acpi_ns_check_package_elements(char *pathname,
                               union acpi_operand_object **elements,
-                              u8 type1, u32 count1, u8 type2, u32 count2)
+                              u8 type1,
+                              u32 count1,
+                              u8 type2, u32 count2, u32 start_index)
 {
        union acpi_operand_object **this_element = elements;
        acpi_status status;
@@ -783,7 +790,7 @@ acpi_ns_check_package_elements(char *pathname,
         */
        for (i = 0; i < count1; i++) {
                status = acpi_ns_check_object_type(pathname, this_element,
-                                                  type1, i);
+                                                  type1, i + start_index);
                if (ACPI_FAILURE(status)) {
                        return (status);
                }
@@ -792,7 +799,8 @@ acpi_ns_check_package_elements(char *pathname,
 
        for (i = 0; i < count2; i++) {
                status = acpi_ns_check_object_type(pathname, this_element,
-                                                  type2, (i + count1));
+                                                  type2,
+                                                  (i + count1 + start_index));
                if (ACPI_FAILURE(status)) {
                        return (status);
                }