aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2009-12-11 02:23:22 -0500
committerLen Brown <len.brown@intel.com>2009-12-15 17:29:36 -0500
commit3a58176e4fa47d8232e04131b023f3f2ecd7084b (patch)
treeee064fd4d8bcc7ba16926241262cec6b74caec03 /drivers/acpi
parentea7c5ec148044776d5e134e52a3e1aca8d662dbe (diff)
ACPICA: Remove messages if predefined repair(s) are successful
Repair mechanism was considered too wordy. Now, messages are only unconditionally emitted if the return object cannot be repaired. Existing messages for successful repairs were converted to ACPI_DEBUG_PRINT messages for now. ACPICA BZ 827. http://www.acpica.org/bugzilla/show_bug.cgi?id=827 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')
-rw-r--r--drivers/acpi/acpica/nspredef.c10
-rw-r--r--drivers/acpi/acpica/nsrepair.c32
-rw-r--r--drivers/acpi/acpica/nsrepair2.c21
3 files changed, 36 insertions, 27 deletions
diff --git a/drivers/acpi/acpica/nspredef.c b/drivers/acpi/acpica/nspredef.c
index c6297f57fea8..e352467413f5 100644
--- a/drivers/acpi/acpica/nspredef.c
+++ b/drivers/acpi/acpica/nspredef.c
@@ -462,11 +462,11 @@ acpi_ns_check_package(struct acpi_predefined_data *data,
462 if (count < expected_count) { 462 if (count < expected_count) {
463 goto package_too_small; 463 goto package_too_small;
464 } else if (count > expected_count) { 464 } else if (count > expected_count) {
465 ACPI_WARN_PREDEFINED((AE_INFO, data->pathname, 465 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
466 data->node_flags, 466 "%s: Return Package is larger than needed - "
467 "Return Package is larger than needed - " 467 "found %u, expected %u\n",
468 "found %u, expected %u", count, 468 data->pathname, count,
469 expected_count)); 469 expected_count));
470 } 470 }
471 471
472 /* Validate all elements of the returned package */ 472 /* Validate all elements of the returned package */
diff --git a/drivers/acpi/acpica/nsrepair.c b/drivers/acpi/acpica/nsrepair.c
index 062a016d4554..907f60c9c9e5 100644
--- a/drivers/acpi/acpica/nsrepair.c
+++ b/drivers/acpi/acpica/nsrepair.c
@@ -118,6 +118,8 @@ acpi_ns_repair_object(struct acpi_predefined_data *data,
118 union acpi_operand_object *new_object; 118 union acpi_operand_object *new_object;
119 acpi_status status; 119 acpi_status status;
120 120
121 ACPI_FUNCTION_NAME(ns_repair_object);
122
121 /* 123 /*
122 * At this point, we know that the type of the returned object was not 124 * At this point, we know that the type of the returned object was not
123 * one of the expected types for this predefined name. Attempt to 125 * one of the expected types for this predefined name. Attempt to
@@ -171,19 +173,18 @@ acpi_ns_repair_object(struct acpi_predefined_data *data,
171 return_object->common.reference_count--; 173 return_object->common.reference_count--;
172 } 174 }
173 175
174 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, data->node_flags, 176 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
175 "Converted %s to expected %s at index %u", 177 "%s: Converted %s to expected %s at index %u\n",
176 acpi_ut_get_object_type_name 178 data->pathname,
177 (return_object), 179 acpi_ut_get_object_type_name(return_object),
178 acpi_ut_get_object_type_name(new_object), 180 acpi_ut_get_object_type_name(new_object),
179 package_index)); 181 package_index));
180 } else { 182 } else {
181 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, data->node_flags, 183 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
182 "Converted %s to expected %s", 184 "%s: Converted %s to expected %s\n",
183 acpi_ut_get_object_type_name 185 data->pathname,
184 (return_object), 186 acpi_ut_get_object_type_name(return_object),
185 acpi_ut_get_object_type_name 187 acpi_ut_get_object_type_name(new_object)));
186 (new_object)));
187 } 188 }
188 189
189 /* Delete old object, install the new return object */ 190 /* Delete old object, install the new return object */
@@ -528,6 +529,8 @@ acpi_ns_repair_package_list(struct acpi_predefined_data *data,
528{ 529{
529 union acpi_operand_object *pkg_obj_desc; 530 union acpi_operand_object *pkg_obj_desc;
530 531
532 ACPI_FUNCTION_NAME(ns_repair_package_list);
533
531 /* 534 /*
532 * Create the new outer package and populate it. The new package will 535 * Create the new outer package and populate it. The new package will
533 * have a single element, the lone subpackage. 536 * have a single element, the lone subpackage.
@@ -544,8 +547,9 @@ acpi_ns_repair_package_list(struct acpi_predefined_data *data,
544 *obj_desc_ptr = pkg_obj_desc; 547 *obj_desc_ptr = pkg_obj_desc;
545 data->flags |= ACPI_OBJECT_REPAIRED; 548 data->flags |= ACPI_OBJECT_REPAIRED;
546 549
547 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, data->node_flags, 550 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
548 "Repaired Incorrectly formed Package")); 551 "%s: Repaired incorrectly formed Package\n",
552 data->pathname));
549 553
550 return (AE_OK); 554 return (AE_OK);
551} 555}
diff --git a/drivers/acpi/acpica/nsrepair2.c b/drivers/acpi/acpica/nsrepair2.c
index 846df7047a81..199333880c8d 100644
--- a/drivers/acpi/acpica/nsrepair2.c
+++ b/drivers/acpi/acpica/nsrepair2.c
@@ -255,6 +255,8 @@ acpi_ns_repair_FDE(struct acpi_predefined_data *data,
255 u32 *dword_buffer; 255 u32 *dword_buffer;
256 u32 i; 256 u32 i;
257 257
258 ACPI_FUNCTION_NAME(ns_repair_FDE);
259
258 switch (return_object->common.type) { 260 switch (return_object->common.type) {
259 case ACPI_TYPE_BUFFER: 261 case ACPI_TYPE_BUFFER:
260 262
@@ -296,8 +298,9 @@ acpi_ns_repair_FDE(struct acpi_predefined_data *data,
296 byte_buffer++; 298 byte_buffer++;
297 } 299 }
298 300
299 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, data->node_flags, 301 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
300 "Expanded Byte Buffer to expected DWord Buffer")); 302 "%s Expanded Byte Buffer to expected DWord Buffer\n",
303 data->pathname));
301 break; 304 break;
302 305
303 default: 306 default:
@@ -445,6 +448,8 @@ acpi_ns_check_sorted_list(struct acpi_predefined_data *data,
445 u32 previous_value; 448 u32 previous_value;
446 acpi_status status; 449 acpi_status status;
447 450
451 ACPI_FUNCTION_NAME(ns_check_sorted_list);
452
448 /* The top-level object must be a package */ 453 /* The top-level object must be a package */
449 454
450 if (return_object->common.type != ACPI_TYPE_PACKAGE) { 455 if (return_object->common.type != ACPI_TYPE_PACKAGE) {
@@ -460,8 +465,9 @@ acpi_ns_check_sorted_list(struct acpi_predefined_data *data,
460 */ 465 */
461 status = acpi_ns_remove_null_elements(return_object); 466 status = acpi_ns_remove_null_elements(return_object);
462 if (status == AE_NULL_ENTRY) { 467 if (status == AE_NULL_ENTRY) {
463 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, data->node_flags, 468 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
464 "NULL elements removed from package")); 469 "%s: NULL elements removed from package\n",
470 data->pathname));
465 471
466 /* Exit if package is now zero length */ 472 /* Exit if package is now zero length */
467 473
@@ -522,10 +528,9 @@ acpi_ns_check_sorted_list(struct acpi_predefined_data *data,
522 528
523 data->flags |= ACPI_OBJECT_REPAIRED; 529 data->flags |= ACPI_OBJECT_REPAIRED;
524 530
525 ACPI_INFO_PREDEFINED((AE_INFO, data->pathname, 531 ACPI_DEBUG_PRINT((ACPI_DB_REPAIR,
526 data->node_flags, 532 "%s: Repaired unsorted list - now sorted by %s\n",
527 "Repaired unsorted list - now sorted by %s", 533 data->pathname, sort_key_name));
528 sort_key_name));
529 return (AE_OK); 534 return (AE_OK);
530 } 535 }
531 536