diff --git a/drivers/acpi/utils.c b/drivers/acpi/utils.c
index 28c75242fca9c456afb53ffa7b77758cd088ec6b..62944e35fcee2980446a743c0099c8bfc26cbf6e 100644
--- a/drivers/acpi/utils.c
+++ b/drivers/acpi/utils.c
@@ -399,13 +399,13 @@ acpi_evaluate_reference(acpi_handle handle,
 		acpi_handle_debug(list->handles[i], "Found in reference list\n");
 	}
 
-end:
 	if (ACPI_FAILURE(status)) {
 		list->count = 0;
 		kfree(list->handles);
 		list->handles = NULL;
 	}
 
+end:
 	kfree(buffer.pointer);
 
 	return status;