On Fri, Sep 12, 2025 at 5:47 PM Zilin Guan <zilin@xxxxxxxxxx> wrote: > > acpi_ut_create_internal_object may allocate memory from a slab cache > via kmem_cache_zalloc, but the code currently frees it with ACPI_FREE, > which calls kfree. This mismatch prevents the object from being > released properly and may lead to memory leaks or other issues. > > Fix this by replacing ACPI_FREE with acpi_ut_delete_object_desc, which > matches the allocation method used for internal objects. > > Signed-off-by: Zilin Guan <zilin@xxxxxxxxxx> Please submit ACPICA updates as pull requests to the upstream ACPICA project on GitHub. Once merged there, corresponding Linux patches can be submitted with Link: tags pointing to the original upstream ACPICA commits. Thanks! > --- > drivers/acpi/acpica/nsxfname.c | 2 +- > drivers/acpi/acpica/utobject.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/acpi/acpica/nsxfname.c b/drivers/acpi/acpica/nsxfname.c > index 1db831545ec8..b6895a48ae68 100644 > --- a/drivers/acpi/acpica/nsxfname.c > +++ b/drivers/acpi/acpica/nsxfname.c > @@ -601,7 +601,7 @@ acpi_status acpi_install_method(u8 *buffer) > error_exit: > > ACPI_FREE(aml_buffer); > - ACPI_FREE(method_obj); > + acpi_ut_delete_object_desc(method_obj); > return (status); > } > ACPI_EXPORT_SYMBOL(acpi_install_method) > diff --git a/drivers/acpi/acpica/utobject.c b/drivers/acpi/acpica/utobject.c > index 272e46208263..8362204b57b5 100644 > --- a/drivers/acpi/acpica/utobject.c > +++ b/drivers/acpi/acpica/utobject.c > @@ -148,7 +148,7 @@ union acpi_operand_object *acpi_ut_create_package_object(u32 count) > package_elements = ACPI_ALLOCATE_ZEROED(((acpi_size)count + > 1) * sizeof(void *)); > if (!package_elements) { > - ACPI_FREE(package_desc); > + acpi_ut_delete_object_desc(package_desc); > return_PTR(NULL); > } > > -- > 2.34.1 > >