Explorar o código

power_supply: Fix race in power_supply_uevent

Commit 54d29ad33e3483bcc7ca433a21cf294854e5154a (Power Supply: fix race
in device_create) introduced a race in power_supply_uevent. Previously it
checked that power_supply is available by checking for dev->driver_data.
But now dev->driver_data is set before power_supply->dev is initialised.

Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Dmitry Baryshkov %!s(int64=17) %!d(string=hai) anos
pai
achega
56fa18e8f1
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      drivers/power/power_supply_sysfs.c

+ 1 - 1
drivers/power/power_supply_sysfs.c

@@ -201,7 +201,7 @@ int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env)
 
 	dev_dbg(dev, "uevent\n");
 
-	if (!psy) {
+	if (!psy || !psy->dev) {
 		dev_dbg(dev, "No power supply yet\n");
 		return ret;
 	}