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.shevche...@linux.intel.com>

> Signed-off-by: Wolfgang Wallner <wolfgang.wall...@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


Reply via email to