Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ACPI: utils: Introduce acpi_evaluation_failure_warn()

Quite a few users of ACPI objects want to log a warning message if
the evaluation fails which is a repeating pattern, so introduce a
helper function for that purpose and convert some code where it is
open-coded to using it.

No intentional functional impact.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

+28 -23
+2 -4
drivers/acpi/pci_link.c
··· 256 256 status = acpi_walk_resources(handle, METHOD_NAME__CRS, 257 257 acpi_pci_link_check_current, &irq); 258 258 if (ACPI_FAILURE(status)) { 259 - acpi_handle_warn(handle, "_CRS evaluation failed: %s\n", 260 - acpi_format_exception(status)); 259 + acpi_evaluation_failure_warn(handle, "_CRS", status); 261 260 result = -ENODEV; 262 261 goto end; 263 262 } ··· 344 345 345 346 /* check for total failure */ 346 347 if (ACPI_FAILURE(status)) { 347 - acpi_handle_warn(handle, "_SRS evaluation failed: %s", 348 - acpi_format_exception(status)); 348 + acpi_evaluation_failure_warn(handle, "_SRS", status); 349 349 result = -ENODEV; 350 350 goto end; 351 351 }
+3 -7
drivers/acpi/processor_perflib.c
··· 67 67 acpi_processor_ppc_in_use = true; 68 68 69 69 if (ACPI_FAILURE(status)) { 70 - acpi_handle_warn(pr->handle, 71 - "_PPC evaluation failed: %s\n", 72 - acpi_format_exception(status)); 70 + acpi_evaluation_failure_warn(pr->handle, "_PPC", status); 73 71 return -ENODEV; 74 72 } 75 73 } ··· 197 199 198 200 status = acpi_evaluate_object(pr->handle, "_PCT", NULL, &buffer); 199 201 if (ACPI_FAILURE(status)) { 200 - acpi_handle_warn(pr->handle, "_PCT evaluation failed: %s\n", 201 - acpi_format_exception(status)); 202 + acpi_evaluation_failure_warn(pr->handle, "_PCT", status); 202 203 return -ENODEV; 203 204 } 204 205 ··· 297 300 298 301 status = acpi_evaluate_object(pr->handle, "_PSS", NULL, &buffer); 299 302 if (ACPI_FAILURE(status)) { 300 - acpi_handle_warn(pr->handle, "_PSS evaluation failed: %s\n", 301 - acpi_format_exception(status)); 303 + acpi_evaluation_failure_warn(pr->handle, "_PSS", status); 302 304 return -ENODEV; 303 305 } 304 306
+4 -12
drivers/acpi/processor_throttling.c
··· 281 281 status = acpi_evaluate_integer(pr->handle, "_TPC", NULL, &tpc); 282 282 if (ACPI_FAILURE(status)) { 283 283 if (status != AE_NOT_FOUND) 284 - acpi_handle_warn(pr->handle, 285 - "_TPC evaluation failed: %s\n", 286 - acpi_format_exception(status)); 284 + acpi_evaluation_failure_warn(pr->handle, "_TPC", status); 287 285 288 286 return -ENODEV; 289 287 } ··· 414 416 status = acpi_evaluate_object(pr->handle, "_PTC", NULL, &buffer); 415 417 if (ACPI_FAILURE(status)) { 416 418 if (status != AE_NOT_FOUND) 417 - acpi_handle_warn(pr->handle, 418 - "_PTC evaluation failed: %s\n", 419 - acpi_format_exception(status)); 419 + acpi_evaluation_failure_warn(pr->handle, "_PTC", status); 420 420 421 421 return -ENODEV; 422 422 } ··· 499 503 status = acpi_evaluate_object(pr->handle, "_TSS", NULL, &buffer); 500 504 if (ACPI_FAILURE(status)) { 501 505 if (status != AE_NOT_FOUND) 502 - acpi_handle_warn(pr->handle, 503 - "_TSS evaluation failed: %s\n", 504 - acpi_format_exception(status)); 506 + acpi_evaluation_failure_warn(pr->handle, "_TSS", status); 505 507 506 508 return -ENODEV; 507 509 } ··· 580 586 status = acpi_evaluate_object(pr->handle, "_TSD", NULL, &buffer); 581 587 if (ACPI_FAILURE(status)) { 582 588 if (status != AE_NOT_FOUND) 583 - acpi_handle_warn(pr->handle, 584 - "_TSD evaluation failed: %s\n", 585 - acpi_format_exception(status)); 589 + acpi_evaluation_failure_warn(pr->handle, "_TSD", status); 586 590 587 591 return -ENODEV; 588 592 }
+14
drivers/acpi/utils.c
··· 512 512 #endif 513 513 514 514 /** 515 + * acpi_evaluation_failure_warn - Log evaluation failure warning. 516 + * @handle: Parent object handle. 517 + * @name: Name of the object whose evaluation has failed. 518 + * @status: Status value returned by the failing object evaluation. 519 + */ 520 + void acpi_evaluation_failure_warn(acpi_handle handle, const char *name, 521 + acpi_status status) 522 + { 523 + acpi_handle_warn(handle, "%s evaluation failed: %s\n", name, 524 + acpi_format_exception(status)); 525 + } 526 + EXPORT_SYMBOL_GPL(acpi_evaluation_failure_warn); 527 + 528 + /** 515 529 * acpi_has_method: Check whether @handle has a method named @name 516 530 * @handle: ACPI device handle 517 531 * @name: name of object or method
+5
include/linux/acpi.h
··· 1027 1027 __printf(3, 4) 1028 1028 void acpi_handle_printk(const char *level, acpi_handle handle, 1029 1029 const char *fmt, ...); 1030 + void acpi_evaluation_failure_warn(acpi_handle handle, const char *name, 1031 + acpi_status status); 1030 1032 #else /* !CONFIG_ACPI */ 1031 1033 static inline __printf(3, 4) void 1032 1034 acpi_handle_printk(const char *level, void *handle, const char *fmt, ...) {} 1035 + static inline void acpi_evaluation_failure_warn(acpi_handle handle, 1036 + const char *name, 1037 + acpi_status status) {} 1033 1038 #endif /* !CONFIG_ACPI */ 1034 1039 1035 1040 #if defined(CONFIG_ACPI) && defined(CONFIG_DYNAMIC_DEBUG)