]> git.openfabrics.org - ~emulex/infiniband.git/commitdiff
ACPICA: Clarify ACPI_FREE_BUFFER usage.
authorBob Moore <robert.moore@intel.com>
Tue, 29 Oct 2013 01:29:57 +0000 (09:29 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 31 Oct 2013 13:35:33 +0000 (14:35 +0100)
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>
drivers/acpi/acpica/nsxfeval.c
include/acpi/actypes.h

index a6e3bca485679615a7c7b1eb153bef1270c8df63..ce2a84575a362bf0b138d23091b664e4660e718a 100644 (file)
@@ -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;
        }
 
index 63909d9c2f7a0a406e32b2538dc354ce10c50240..0bb23e6bce4381e70b3bd13ca6d1e5f118e21120 100644 (file)
@@ -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