diff options
author | David S. Miller <davem@davemloft.net> | 2008-12-02 19:50:27 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-12-02 19:50:27 -0800 |
commit | aa2ba5f1082dc705745899584aac8416d710c056 (patch) | |
tree | bde0bf4aff036c6bac19a0212194ae1092afb3c9 /drivers/acpi/utils.c | |
parent | 68024541e2e5a8f35e281daaa5068a29e2a538a5 (diff) | |
parent | f6f7b52e2f6149d2ee365717afff315b05720162 (diff) | |
download | op-kernel-dev-aa2ba5f1082dc705745899584aac8416d710c056.zip op-kernel-dev-aa2ba5f1082dc705745899584aac8416d710c056.tar.gz |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts:
drivers/net/ixgbe/ixgbe_main.c
drivers/net/smc91x.c
Diffstat (limited to 'drivers/acpi/utils.c')
-rw-r--r-- | drivers/acpi/utils.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/drivers/acpi/utils.c b/drivers/acpi/utils.c index e827be3..f844941 100644 --- a/drivers/acpi/utils.c +++ b/drivers/acpi/utils.c @@ -259,34 +259,26 @@ acpi_evaluate_integer(acpi_handle handle, struct acpi_object_list *arguments, unsigned long long *data) { acpi_status status = AE_OK; - union acpi_object *element; + union acpi_object element; struct acpi_buffer buffer = { 0, NULL }; - if (!data) return AE_BAD_PARAMETER; - element = kzalloc(sizeof(union acpi_object), irqs_disabled() ? GFP_ATOMIC: GFP_KERNEL); - if (!element) - return AE_NO_MEMORY; - buffer.length = sizeof(union acpi_object); - buffer.pointer = element; + buffer.pointer = &element; status = acpi_evaluate_object(handle, pathname, arguments, &buffer); if (ACPI_FAILURE(status)) { acpi_util_eval_error(handle, pathname, status); - kfree(element); return status; } - if (element->type != ACPI_TYPE_INTEGER) { + if (element.type != ACPI_TYPE_INTEGER) { acpi_util_eval_error(handle, pathname, AE_BAD_DATA); - kfree(element); return AE_BAD_DATA; } - *data = element->integer.value; - kfree(element); + *data = element.integer.value; ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Return value [%llu]\n", *data)); |