Re: [PATCH 1/1] acpi: check return value of acpi_os_map_memory

From: Rafael J. Wysocki
Date: Mon Oct 28 2013 - 06:49:45 EST


On Monday, October 28, 2013 02:04:19 PM RUC_SoftSec wrote:
> Function acpi_os_map_memory() may return a NULL pointer, it should be validated non-NULL before used.
> This bug is found by a static tool developed by RUC_SoftSec, supported by China.X.Orion.
>
> Signed-off-by: RUC_SoftSec <rucsoftsec@xxxxxxxxx>
> ---
> drivers/acpi/osl.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
> index e5f416c..bf8f93f 100644
> --- a/drivers/acpi/osl.c
> +++ b/drivers/acpi/osl.c
> @@ -717,6 +717,8 @@ acpi_os_physical_table_override(struct acpi_table_header *existing_table,
>
> table = acpi_os_map_memory(acpi_tables_addr + table_offset,
> ACPI_HEADER_SIZE);
> + if (table == NULL)

"if (!table)" perhaps?

> + return AE_OK;

And why is it a good idea to return success then?

>
> if (table_offset + table->length > all_tables_size) {
> acpi_os_unmap_memory(table, ACPI_HEADER_SIZE);
>

Thanks!

--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/