[PATCH 2/2] x86: acpi: Add memset to initialize SPCR table

Andy Shevchenko andriy.shevchenko at linux.intel.com
Wed Sep 9 15:09:20 CEST 2020


On Wed, Sep 09, 2020 at 02:33:21PM +0200, Wolfgang Wallner wrote:
> Add a missing memset to acpi_create_spcr().
> 
> The other acpi_create_xxxx() functions perform a memset on their
> structures, acpi_create_spcr() does not and as a result the contents of
> this table are partly uninitialized (and thus random after every reset).

Fixes: tag?
In any case, after addressing below,
Reviewed-by: Andy Shevchenko <andriy.shevchenko at linux.intel.com>

> Signed-off-by: Wolfgang Wallner <wolfgang.wallner at br-automation.com>
> ---
> 
>  arch/x86/lib/acpi_table.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/arch/x86/lib/acpi_table.c b/arch/x86/lib/acpi_table.c
> index 6b827bfa3f..054235843e 100644
> --- a/arch/x86/lib/acpi_table.c
> +++ b/arch/x86/lib/acpi_table.c
> @@ -252,6 +252,8 @@ static void acpi_create_spcr(struct acpi_spcr *spcr)
>  	int space_id;
>  	int ret = -ENODEV;
>  
> +	memset((void *)spcr, 0, sizeof(struct acpi_spcr));
> +
>  	/* Fill out header fields */
>  	acpi_fill_header(header, "SPCR");
>  	header->length = sizeof(struct acpi_spcr);

> @@ -359,6 +361,7 @@ static void acpi_create_spcr(struct acpi_spcr *spcr)
>  		spcr->baud_rate = 0;
>  
>  	/* Fix checksum */
> +
>  	header->checksum = table_compute_checksum((void *)spcr, header->length);
>  }

Unrelated change.

-- 
With Best Regards,
Andy Shevchenko




More information about the U-Boot mailing list