Message ID | 20220729153550.181209-3-jaylu102@amd.com |
---|---|
State | New |
Headers | show |
Series | ACPI, APEI, EINJ: Add new CXL Error Types | expand |
On Fri, Jul 29, 2022 at 10:35:49AM -0500, Jay Lu wrote: > Move error type descriptions into an array and loop over error types > to improve readability and maintainability. > > Replace seq_printf() with seq_puts() as recommended by checkpatch.pl. > > Signed-off-by: Jay Lu <jaylu102@amd.com> > --- > drivers/acpi/apei/einj.c | 41 +++++++++++++++++----------------------- > 1 file changed, 17 insertions(+), 24 deletions(-) > > diff --git a/drivers/acpi/apei/einj.c b/drivers/acpi/apei/einj.c > index da039c630fd0..a68103280f74 100644 > --- a/drivers/acpi/apei/einj.c > +++ b/drivers/acpi/apei/einj.c > @@ -569,6 +569,20 @@ static u64 error_param2; > static u64 error_param3; > static u64 error_param4; > static struct dentry *einj_debug_dir; > +static const char * const einj_error_type_string[] = { > + "0x00000001\tProcessor Correctable\n", /* bit 0 */ > + "0x00000002\tProcessor Uncorrectable non-fatal\n", /* bit 1 */ > + "0x00000004\tProcessor Uncorrectable fatal\n", /* bit 2 */ > + "0x00000008\tMemory Correctable\n", /* bit 3 */ > + "0x00000010\tMemory Uncorrectable non-fatal\n", /* bit 4 */ > + "0x00000020\tMemory Uncorrectable fatal\n", /* bit 5 */ > + "0x00000040\tPCI Express Correctable\n", /* bit 6 */ > + "0x00000080\tPCI Express Uncorrectable non-fatal\n", /* bit 7 */ > + "0x00000100\tPCI Express Uncorrectable fatal\n", /* bit 8 */ > + "0x00000200\tPlatform Correctable\n", /* bit 9 */ > + "0x00000400\tPlatform Uncorrectable non-fatal\n", /* bit 10 */ > + "0x00000800\tPlatform Uncorrectable fatal\n", /* bit 11 */ ^^^^^^^^^^^^ Those comments look useless - you have the bit numbers in front already. > static int available_error_type_show(struct seq_file *m, void *v) > { > @@ -578,30 +592,9 @@ static int available_error_type_show(struct seq_file *m, void *v) > rc = einj_get_available_error_type(&available_error_type); > if (rc) > return rc; > - if (available_error_type & 0x0001) > - seq_printf(m, "0x00000001\tProcessor Correctable\n"); > - if (available_error_type & 0x0002) > - seq_printf(m, "0x00000002\tProcessor Uncorrectable non-fatal\n"); > - if (available_error_type & 0x0004) > - seq_printf(m, "0x00000004\tProcessor Uncorrectable fatal\n"); > - if (available_error_type & 0x0008) > - seq_printf(m, "0x00000008\tMemory Correctable\n"); > - if (available_error_type & 0x0010) > - seq_printf(m, "0x00000010\tMemory Uncorrectable non-fatal\n"); > - if (available_error_type & 0x0020) > - seq_printf(m, "0x00000020\tMemory Uncorrectable fatal\n"); > - if (available_error_type & 0x0040) > - seq_printf(m, "0x00000040\tPCI Express Correctable\n"); > - if (available_error_type & 0x0080) > - seq_printf(m, "0x00000080\tPCI Express Uncorrectable non-fatal\n"); > - if (available_error_type & 0x0100) > - seq_printf(m, "0x00000100\tPCI Express Uncorrectable fatal\n"); > - if (available_error_type & 0x0200) > - seq_printf(m, "0x00000200\tPlatform Correctable\n"); > - if (available_error_type & 0x0400) > - seq_printf(m, "0x00000400\tPlatform Uncorrectable non-fatal\n"); > - if (available_error_type & 0x0800) > - seq_printf(m, "0x00000800\tPlatform Uncorrectable fatal\n"); > + for (int pos = 0; pos < ARRAY_SIZE(einj_error_type_string); pos++) > + if (available_error_type & (BIT(0) << pos)) ^^^^^^^^^^^^^^^ That's a weird way of saying: BIT(pos)
diff --git a/drivers/acpi/apei/einj.c b/drivers/acpi/apei/einj.c index da039c630fd0..a68103280f74 100644 --- a/drivers/acpi/apei/einj.c +++ b/drivers/acpi/apei/einj.c @@ -569,6 +569,20 @@ static u64 error_param2; static u64 error_param3; static u64 error_param4; static struct dentry *einj_debug_dir; +static const char * const einj_error_type_string[] = { + "0x00000001\tProcessor Correctable\n", /* bit 0 */ + "0x00000002\tProcessor Uncorrectable non-fatal\n", /* bit 1 */ + "0x00000004\tProcessor Uncorrectable fatal\n", /* bit 2 */ + "0x00000008\tMemory Correctable\n", /* bit 3 */ + "0x00000010\tMemory Uncorrectable non-fatal\n", /* bit 4 */ + "0x00000020\tMemory Uncorrectable fatal\n", /* bit 5 */ + "0x00000040\tPCI Express Correctable\n", /* bit 6 */ + "0x00000080\tPCI Express Uncorrectable non-fatal\n", /* bit 7 */ + "0x00000100\tPCI Express Uncorrectable fatal\n", /* bit 8 */ + "0x00000200\tPlatform Correctable\n", /* bit 9 */ + "0x00000400\tPlatform Uncorrectable non-fatal\n", /* bit 10 */ + "0x00000800\tPlatform Uncorrectable fatal\n", /* bit 11 */ +}; static int available_error_type_show(struct seq_file *m, void *v) { @@ -578,30 +592,9 @@ static int available_error_type_show(struct seq_file *m, void *v) rc = einj_get_available_error_type(&available_error_type); if (rc) return rc; - if (available_error_type & 0x0001) - seq_printf(m, "0x00000001\tProcessor Correctable\n"); - if (available_error_type & 0x0002) - seq_printf(m, "0x00000002\tProcessor Uncorrectable non-fatal\n"); - if (available_error_type & 0x0004) - seq_printf(m, "0x00000004\tProcessor Uncorrectable fatal\n"); - if (available_error_type & 0x0008) - seq_printf(m, "0x00000008\tMemory Correctable\n"); - if (available_error_type & 0x0010) - seq_printf(m, "0x00000010\tMemory Uncorrectable non-fatal\n"); - if (available_error_type & 0x0020) - seq_printf(m, "0x00000020\tMemory Uncorrectable fatal\n"); - if (available_error_type & 0x0040) - seq_printf(m, "0x00000040\tPCI Express Correctable\n"); - if (available_error_type & 0x0080) - seq_printf(m, "0x00000080\tPCI Express Uncorrectable non-fatal\n"); - if (available_error_type & 0x0100) - seq_printf(m, "0x00000100\tPCI Express Uncorrectable fatal\n"); - if (available_error_type & 0x0200) - seq_printf(m, "0x00000200\tPlatform Correctable\n"); - if (available_error_type & 0x0400) - seq_printf(m, "0x00000400\tPlatform Uncorrectable non-fatal\n"); - if (available_error_type & 0x0800) - seq_printf(m, "0x00000800\tPlatform Uncorrectable fatal\n"); + for (int pos = 0; pos < ARRAY_SIZE(einj_error_type_string); pos++) + if (available_error_type & (BIT(0) << pos)) + seq_puts(m, einj_error_type_string[pos]); return 0; }
Move error type descriptions into an array and loop over error types to improve readability and maintainability. Replace seq_printf() with seq_puts() as recommended by checkpatch.pl. Signed-off-by: Jay Lu <jaylu102@amd.com> --- drivers/acpi/apei/einj.c | 41 +++++++++++++++++----------------------- 1 file changed, 17 insertions(+), 24 deletions(-)