diff options
author | Bob Moore <robert.moore@intel.com> | 2013-10-29 02:29:57 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-10-31 14:35:33 +0100 |
commit | bb1cab3d52375b5007645ca55d2b55167e5f757b (patch) | |
tree | fa325a582fcda8db5a0455e98890b4b1e317f313 | |
parent | ACPICA: Add EXPORT_ACPI_INTERFACES macro to external interface modules. (diff) | |
download | linux-bb1cab3d52375b5007645ca55d2b55167e5f757b.tar.xz linux-bb1cab3d52375b5007645ca55d2b55167e5f757b.zip |
ACPICA: Clarify ACPI_FREE_BUFFER usage.
Add a comment to clarify reason for using ACPI_FREE_BUFFER directly
instead of ACPI_FREE.
In addition to that, change one instance in which ACPI_FREE_BUFFER()
should be used instead of ACPI_FREE().
[rjw: Subject and changelog]
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/acpi/acpica/nsxfeval.c | 2 | ||||
-rw-r--r-- | include/acpi/actypes.h | 10 |
2 files changed, 8 insertions, 4 deletions
diff --git a/drivers/acpi/acpica/nsxfeval.c b/drivers/acpi/acpica/nsxfeval.c index a6e3bca48567..ce2a84575a36 100644 --- a/drivers/acpi/acpica/nsxfeval.c +++ b/drivers/acpi/acpica/nsxfeval.c @@ -139,7 +139,7 @@ acpi_evaluate_object_typed(acpi_handle handle, /* Caller used ACPI_ALLOCATE_BUFFER, free the return buffer */ - ACPI_FREE(return_buffer->pointer); + ACPI_FREE_BUFFER(*return_buffer); return_buffer->pointer = NULL; } diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h index 63909d9c2f7a..0bb23e6bce43 100644 --- a/include/acpi/actypes.h +++ b/include/acpi/actypes.h @@ -919,9 +919,13 @@ struct acpi_buffer { void *pointer; /* pointer to buffer */ }; -/* Free a buffer created in an struct acpi_buffer via ACPI_ALLOCATE_LOCAL_BUFFER */ - -#define ACPI_FREE_BUFFER(b) ACPI_FREE(b.pointer) +/* + * Free a buffer created in an struct acpi_buffer via ACPI_ALLOCATE_BUFFER. + * Note: We use acpi_os_free here because acpi_os_allocate was used to allocate + * the buffer. This purposefully bypasses the internal allocation tracking + * mechanism (if it is enabled). + */ +#define ACPI_FREE_BUFFER(b) acpi_os_free((b).pointer) /* * name_type for acpi_get_name |