diff mbox series

[v2,1/1] ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved

Message ID 20210819071416.14975-1-adrianhuang0701@gmail.com
State New
Headers show
Series [v2,1/1] ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved | expand

Commit Message

Adrian Huang Aug. 19, 2021, 7:14 a.m. UTC
From: Adrian Huang <ahuang12@lenovo.com>

In ACPI 6.4 spec, record types "0x0002-0xffff" of FPDT Performance Record
Types [1] and record types "0x0003-0xffff" of Runtime Performance Record
Types [2] are reserved.

Users might be confused with the FW_BUG message, and they think this
is the FW issue. Here is the example in a Lenovo box:

  ACPI: FPDT 0x00000000A820A000 000044 (v01 LENOVO THINKSYS 00000100 01000013)
  ACPI: Reserving FPDT table memory at [mem 0xa820a000-0xa820a043]
  ACPI FPDT: [Firmware Bug]: Invalid record 4113 found

So, remove the FW_BUG message to avoid confusion since those types are
reserved in ACPI 6.4 spec.

[1] https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#fpdt-performance-record-types-table
[2] https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#runtime-performance-record-types-table

Cc: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Adrian Huang <ahuang12@lenovo.com>
---

Changes since v2:
 * Fix "0x0002-0xFFFF" of FPDT Performance Record Types, per Rui

 drivers/acpi/acpi_fpdt.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Comments

Zhang, Rui Aug. 19, 2021, 8:07 a.m. UTC | #1
On Thu, 2021-08-19 at 15:14 +0800, Adrian Huang wrote:
> From: Adrian Huang <ahuang12@lenovo.com>
> 
> In ACPI 6.4 spec, record types "0x0002-0xffff" of FPDT Performance
> Record
> Types [1] and record types "0x0003-0xffff" of Runtime Performance
> Record
> Types [2] are reserved.
> 
> Users might be confused with the FW_BUG message, and they think this
> is the FW issue. Here is the example in a Lenovo box:
> 
>   ACPI: FPDT 0x00000000A820A000 000044 (v01 LENOVO THINKSYS 00000100
> 01000013)
>   ACPI: Reserving FPDT table memory at [mem 0xa820a000-0xa820a043]
>   ACPI FPDT: [Firmware Bug]: Invalid record 4113 found
> 
> So, remove the FW_BUG message to avoid confusion since those types
> are
> reserved in ACPI 6.4 spec.
> 
> [1] 
> https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#fpdt-performance-record-types-table
> [2] 
> https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#runtime-performance-record-types-table
> 
> Cc: Zhang Rui <rui.zhang@intel.com>
> Signed-off-by: Adrian Huang <ahuang12@lenovo.com>

Acked-by: Zhang Rui <rui.zhang@intel.com>

thanks,
rui
> ---
> 
> Changes since v2:
>  * Fix "0x0002-0xFFFF" of FPDT Performance Record Types, per Rui
> 
>  drivers/acpi/acpi_fpdt.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/acpi/acpi_fpdt.c b/drivers/acpi/acpi_fpdt.c
> index 4ee2ad234e3d..6922a44b3ce7 100644
> --- a/drivers/acpi/acpi_fpdt.c
> +++ b/drivers/acpi/acpi_fpdt.c
> @@ -220,8 +220,8 @@ static int fpdt_process_subtable(u64 address, u32
> subtable_type)
>  			break;
>  
>  		default:
> -			pr_err(FW_BUG "Invalid record %d found.\n",
> record_header->type);
> -			return -EINVAL;
> +			/* Other types are reserved in ACPI 6.4 spec.
> */
> +			break;
>  		}
>  	}
>  	return 0;
> @@ -254,8 +254,7 @@ static int __init acpi_init_fpdt(void)
>  					      subtable->type);
>  			break;
>  		default:
> -			pr_info(FW_BUG "Invalid subtable type %d
> found.\n",
> -			       subtable->type);
> +			/* Other types are reserved in ACPI 6.4 spec.
> */
>  			break;
>  		}
>  		offset += sizeof(*subtable);
Rafael J. Wysocki Aug. 25, 2021, 6:02 p.m. UTC | #2
On Thu, Aug 19, 2021 at 10:08 AM Zhang Rui <rui.zhang@intel.com> wrote:
>

> On Thu, 2021-08-19 at 15:14 +0800, Adrian Huang wrote:

> > From: Adrian Huang <ahuang12@lenovo.com>

> >

> > In ACPI 6.4 spec, record types "0x0002-0xffff" of FPDT Performance

> > Record

> > Types [1] and record types "0x0003-0xffff" of Runtime Performance

> > Record

> > Types [2] are reserved.

> >

> > Users might be confused with the FW_BUG message, and they think this

> > is the FW issue. Here is the example in a Lenovo box:

> >

> >   ACPI: FPDT 0x00000000A820A000 000044 (v01 LENOVO THINKSYS 00000100

> > 01000013)

> >   ACPI: Reserving FPDT table memory at [mem 0xa820a000-0xa820a043]

> >   ACPI FPDT: [Firmware Bug]: Invalid record 4113 found

> >

> > So, remove the FW_BUG message to avoid confusion since those types

> > are

> > reserved in ACPI 6.4 spec.

> >

> > [1]

> > https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#fpdt-performance-record-types-table

> > [2]

> > https://uefi.org/specs/ACPI/6.4/05_ACPI_Software_Programming_Model/ACPI_Software_Programming_Model.html#runtime-performance-record-types-table

> >

> > Cc: Zhang Rui <rui.zhang@intel.com>

> > Signed-off-by: Adrian Huang <ahuang12@lenovo.com>

>

> Acked-by: Zhang Rui <rui.zhang@intel.com>


Applied as 5.15 material, thanks!

> > ---

> >

> > Changes since v2:

> >  * Fix "0x0002-0xFFFF" of FPDT Performance Record Types, per Rui

> >

> >  drivers/acpi/acpi_fpdt.c | 7 +++----

> >  1 file changed, 3 insertions(+), 4 deletions(-)

> >

> > diff --git a/drivers/acpi/acpi_fpdt.c b/drivers/acpi/acpi_fpdt.c

> > index 4ee2ad234e3d..6922a44b3ce7 100644

> > --- a/drivers/acpi/acpi_fpdt.c

> > +++ b/drivers/acpi/acpi_fpdt.c

> > @@ -220,8 +220,8 @@ static int fpdt_process_subtable(u64 address, u32

> > subtable_type)

> >                       break;

> >

> >               default:

> > -                     pr_err(FW_BUG "Invalid record %d found.\n",

> > record_header->type);

> > -                     return -EINVAL;

> > +                     /* Other types are reserved in ACPI 6.4 spec.

> > */

> > +                     break;

> >               }

> >       }

> >       return 0;

> > @@ -254,8 +254,7 @@ static int __init acpi_init_fpdt(void)

> >                                             subtable->type);

> >                       break;

> >               default:

> > -                     pr_info(FW_BUG "Invalid subtable type %d

> > found.\n",

> > -                            subtable->type);

> > +                     /* Other types are reserved in ACPI 6.4 spec.

> > */

> >                       break;

> >               }

> >               offset += sizeof(*subtable);

>
diff mbox series

Patch

diff --git a/drivers/acpi/acpi_fpdt.c b/drivers/acpi/acpi_fpdt.c
index 4ee2ad234e3d..6922a44b3ce7 100644
--- a/drivers/acpi/acpi_fpdt.c
+++ b/drivers/acpi/acpi_fpdt.c
@@ -220,8 +220,8 @@  static int fpdt_process_subtable(u64 address, u32 subtable_type)
 			break;
 
 		default:
-			pr_err(FW_BUG "Invalid record %d found.\n", record_header->type);
-			return -EINVAL;
+			/* Other types are reserved in ACPI 6.4 spec. */
+			break;
 		}
 	}
 	return 0;
@@ -254,8 +254,7 @@  static int __init acpi_init_fpdt(void)
 					      subtable->type);
 			break;
 		default:
-			pr_info(FW_BUG "Invalid subtable type %d found.\n",
-			       subtable->type);
+			/* Other types are reserved in ACPI 6.4 spec. */
 			break;
 		}
 		offset += sizeof(*subtable);