Commit 0d167101 authored by Michal Wilczynski's avatar Michal Wilczynski Committed by Rafael J. Wysocki
Browse files

ACPI: bus: Set driver_data to NULL every time .add() fails



Most ACPI drivers set driver_data in their .add() callbacks, but usually
they don't clear it in the error code path.

Set driver_data to NULL in acpi_device_probe() to prevent stale pointers
from staying around.

Signed-off-by: default avatarMichal Wilczynski <michal.wilczynski@intel.com>
[ rjw: Subject and changelog edits ]
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent c542ce36
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -1029,8 +1029,10 @@ static int acpi_device_probe(struct device *dev)
		return -ENOSYS;

	ret = acpi_drv->ops.add(acpi_dev);
	if (ret)
	if (ret) {
		acpi_dev->driver_data = NULL;
		return ret;
	}

	pr_debug("Driver [%s] successfully bound to device [%s]\n",
		 acpi_drv->name, acpi_dev->pnp.bus_id);