diff mbox series

ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects

Message ID 20230226061912.2590679-1-void0red@gmail.com
State New
Headers show
Series ACPICA: check null return of ACPI_ALLOCATE_ZEROED in acpi_db_display_objects | expand

Commit Message

void0red Feb. 26, 2023, 6:19 a.m. UTC
ACPI_ALLOCATE_ZEROED may fails, object_info might be null and will
cause null pointer dereference later.

Signed-off-by: Kang Chen <void0red@gmail.com>
---
 drivers/acpi/acpica/dbnames.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Rafael J. Wysocki March 20, 2023, 5:02 p.m. UTC | #1
On Sun, Feb 26, 2023 at 7:19 AM Kang Chen <void0red@gmail.com> wrote:
>
> ACPI_ALLOCATE_ZEROED may fails, object_info might be null and will
> cause null pointer dereference later.
>
> Signed-off-by: Kang Chen <void0red@gmail.com>

As a rule, ACPICA changes need to be submitted as pull requests to the
upstream ACPICA project on GitHub in the first place.

When this happens, please resend the patch with a Link tag pointing to
the corresponding upstream pull request.

> ---
>  drivers/acpi/acpica/dbnames.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/acpi/acpica/dbnames.c b/drivers/acpi/acpica/dbnames.c
> index 3615e1a6e..b91155ea9 100644
> --- a/drivers/acpi/acpica/dbnames.c
> +++ b/drivers/acpi/acpica/dbnames.c
> @@ -652,6 +652,9 @@ acpi_status acpi_db_display_objects(char *obj_type_arg, char *display_count_arg)
>                 object_info =
>                     ACPI_ALLOCATE_ZEROED(sizeof(struct acpi_object_info));
>
> +               if (!object_info)
> +                       return (AE_NO_MEMORY);
> +
>                 /* Walk the namespace from the root */
>
>                 (void)acpi_walk_namespace(ACPI_TYPE_ANY, ACPI_ROOT_OBJECT,
> --
> 2.34.1
>
diff mbox series

Patch

diff --git a/drivers/acpi/acpica/dbnames.c b/drivers/acpi/acpica/dbnames.c
index 3615e1a6e..b91155ea9 100644
--- a/drivers/acpi/acpica/dbnames.c
+++ b/drivers/acpi/acpica/dbnames.c
@@ -652,6 +652,9 @@  acpi_status acpi_db_display_objects(char *obj_type_arg, char *display_count_arg)
 		object_info =
 		    ACPI_ALLOCATE_ZEROED(sizeof(struct acpi_object_info));
 
+		if (!object_info)
+			return (AE_NO_MEMORY);
+
 		/* Walk the namespace from the root */
 
 		(void)acpi_walk_namespace(ACPI_TYPE_ANY, ACPI_ROOT_OBJECT,