mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-04-29 12:28:27 +02:00
ACPI: PRM: Reduce unnecessary printing to avoid user confusion
[ Upstream commit3db5648c4d] Commit088984c8d5("ACPI: PRM: Find EFI_MEMORY_RUNTIME block for PRM handler and context") introduced non-essential printing "Failed to find VA for GUID: xxxx, PA: 0x0" which may confuse users to think that something wrong is going on while it is not the case. According to the PRM Spec Section 4.1.2 [1], both static data buffer address and ACPI parameter buffer address may be NULL if they are not needed, so there is no need to print out the "Failed to find VA ... " in those cases. Link: https://uefi.org/sites/default/files/resources/Platform%20Runtime%20Mechanism%20-%20with%20legal%20notice.pdf # [1] Signed-off-by: Zhu Qiyu <qiyuzhu2@amd.com> Link: https://patch.msgid.link/20250704014104.82524-1-qiyuzhu2@amd.com [ rjw: Edits in new comments, subject and changelog ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
fbfcc443c2
commit
e20cc29514
+24
-2
@@ -85,8 +85,6 @@ static u64 efi_pa_va_lookup(efi_guid_t *guid, u64 pa)
|
||||
}
|
||||
}
|
||||
|
||||
pr_warn("Failed to find VA for GUID: %pUL, PA: 0x%llx", guid, pa);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -154,13 +152,37 @@ acpi_parse_prmt(union acpi_subtable_headers *header, const unsigned long end)
|
||||
guid_copy(&th->guid, (guid_t *)handler_info->handler_guid);
|
||||
th->handler_addr =
|
||||
(void *)efi_pa_va_lookup(&th->guid, handler_info->handler_address);
|
||||
/*
|
||||
* Print a warning message if handler_addr is zero which is not expected to
|
||||
* ever happen.
|
||||
*/
|
||||
if (unlikely(!th->handler_addr))
|
||||
pr_warn("Failed to find VA of handler for GUID: %pUL, PA: 0x%llx",
|
||||
&th->guid, handler_info->handler_address);
|
||||
|
||||
th->static_data_buffer_addr =
|
||||
efi_pa_va_lookup(&th->guid, handler_info->static_data_buffer_address);
|
||||
/*
|
||||
* According to the PRM specification, static_data_buffer_address can be zero,
|
||||
* so avoid printing a warning message in that case. Otherwise, if the
|
||||
* return value of efi_pa_va_lookup() is zero, print the message.
|
||||
*/
|
||||
if (unlikely(!th->static_data_buffer_addr && handler_info->static_data_buffer_address))
|
||||
pr_warn("Failed to find VA of static data buffer for GUID: %pUL, PA: 0x%llx",
|
||||
&th->guid, handler_info->static_data_buffer_address);
|
||||
|
||||
th->acpi_param_buffer_addr =
|
||||
efi_pa_va_lookup(&th->guid, handler_info->acpi_param_buffer_address);
|
||||
|
||||
/*
|
||||
* According to the PRM specification, acpi_param_buffer_address can be zero,
|
||||
* so avoid printing a warning message in that case. Otherwise, if the
|
||||
* return value of efi_pa_va_lookup() is zero, print the message.
|
||||
*/
|
||||
if (unlikely(!th->acpi_param_buffer_addr && handler_info->acpi_param_buffer_address))
|
||||
pr_warn("Failed to find VA of acpi param buffer for GUID: %pUL, PA: 0x%llx",
|
||||
&th->guid, handler_info->acpi_param_buffer_address);
|
||||
|
||||
} while (++cur_handler < tm->handler_count && (handler_info = get_next_handler(handler_info)));
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user