[RFC,v2,4/9] ACPI: tables: change section_type of generic error data as guid_t
Commit Message
The section_type of generic error data is now an array of u8. It is a
burden to perform explicit type casting from u8[] to guid_t, and to copy
the guid_t values to u8[] using memcpy.
To alleviate this issue, change the section_type from an array to the
type guid_t, which is also consistent with the cper_section_descriptor.
Signed-off-by: Shuai Xue <xueshuai@linux.alibaba.com>
---
drivers/acpi/acpi_extlog.c | 2 +-
drivers/acpi/apei/ghes.c | 2 +-
drivers/firmware/efi/cper.c | 2 +-
include/acpi/actbl1.h | 5 +++--
4 files changed, 6 insertions(+), 5 deletions(-)
@@ -170,7 +170,7 @@ static int extlog_print(struct notifier_block *nb, unsigned long val,
fru_text = gdata->fru_text;
else
fru_text = "";
- sec_type = (guid_t *)gdata->section_type;
+ sec_type = &gdata->section_type;
if (guid_equal(sec_type, &CPER_SEC_PLATFORM_MEM)) {
struct cper_sec_mem_err *mem = acpi_hest_get_payload(gdata);
@@ -648,7 +648,7 @@ static bool ghes_do_proc(struct ghes *ghes,
sev = ghes_severity(estatus->error_severity);
apei_estatus_for_each_section(estatus, gdata) {
- sec_type = (guid_t *)gdata->section_type;
+ sec_type = &gdata->section_type;
sec_sev = ghes_severity(gdata->error_severity);
if (gdata->validation_bits & CPER_SEC_VALID_FRU_ID)
fru_id = (guid_t *)gdata->fru_id;
@@ -527,7 +527,7 @@ static void
cper_estatus_print_section(const char *pfx, struct acpi_hest_generic_data *gdata,
int sec_no)
{
- guid_t *sec_type = (guid_t *)gdata->section_type;
+ guid_t *sec_type = &gdata->section_type;
__u16 severity;
char newpfx[64];
@@ -19,6 +19,7 @@
*
******************************************************************************/
+#include <linux/uuid.h>
/*
* Values for description table header signatures for tables defined in this
* file. Useful because they make it more difficult to inadvertently type in
@@ -1637,7 +1638,7 @@ struct acpi_hest_generic_status {
/* Generic Error Data entry */
struct acpi_hest_generic_data {
- u8 section_type[16];
+ guid_t section_type;
u32 error_severity;
u16 revision;
u8 validation_bits;
@@ -1650,7 +1651,7 @@ struct acpi_hest_generic_data {
/* Extension for revision 0x0300 */
struct acpi_hest_generic_data_v300 {
- u8 section_type[16];
+ guid_t section_type;
u32 error_severity;
u16 revision;
u8 validation_bits;