summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2009-03-19 10:14:45 +0800
committerLen Brown <len.brown@intel.com>2009-03-27 12:11:06 -0400
commit03ef132b7258bbea4858be4b1bd6cb6c3fdd3253 (patch)
tree7df4b7f383b2313aa434696d050f4867c5f2ed84 /drivers/acpi/acpica
parentf65563063375b05898a94ab71b52612cbe3a789b (diff)
downloadlinux-03ef132b7258bbea4858be4b1bd6cb6c3fdd3253.tar.bz2
ACPICA: Fix index value in package warning message
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>
Diffstat (limited to 'drivers/acpi/acpica')
-rw-r--r--drivers/acpi/acpica/nspredef.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/drivers/acpi/acpica/nspredef.c b/drivers/acpi/acpica/nspredef.c
index 0d0b4ee1358e..d9e8cbc6e679 100644
--- a/drivers/acpi/acpica/nspredef.c
+++ b/drivers/acpi/acpica/nspredef.c
@@ -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);
}