Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 786f18c6 authored by Dmitry Torokhov's avatar Dmitry Torokhov Committed by Len Brown
Browse files

ACPI: fix potential OOPS in power driver with CONFIG_ACPI_DEBUG



device was set to null and used before set in a debug printk

Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent b4bd8c66
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -216,10 +216,8 @@ static int acpi_power_off_device(acpi_handle handle)
{
	int result = 0;
	acpi_status status = AE_OK;
	struct acpi_device *device = NULL;
	struct acpi_power_resource *resource = NULL;


	result = acpi_power_get_context(handle, &resource);
	if (result)
		return result;
@@ -230,13 +228,13 @@ static int acpi_power_off_device(acpi_handle handle)
	if (resource->references) {
		ACPI_DEBUG_PRINT((ACPI_DB_INFO,
				  "Resource [%s] is still in use, dereferencing\n",
				  device->pnp.bus_id));
				  resource->device->pnp.bus_id));
		return 0;
	}

	if (resource->state == ACPI_POWER_RESOURCE_STATE_OFF) {
		ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Resource [%s] already off\n",
				  device->pnp.bus_id));
				  resource->device->pnp.bus_id));
		return 0;
	}

@@ -251,8 +249,7 @@ static int acpi_power_off_device(acpi_handle handle)
		return -ENOEXEC;

	/* Update the power resource's _device_ power state */
	device = resource->device;
	device->power.state = ACPI_STATE_D3;
	resource->device->power.state = ACPI_STATE_D3;

	ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Resource [%s] turned off\n",
			  resource->name));