regulator: core: fix regulator_lock_supply regression
[linux-drm-fsl-dcu.git] / drivers / regulator / core.c
index c70017d5f74bb2d1305eb5d3f35a2885fbf9b51f..daffff83ced2a6177db324c82d38803c9a411da1 100644 (file)
@@ -140,7 +140,8 @@ static void regulator_lock_supply(struct regulator_dev *rdev)
 {
        int i;
 
-       for (i = 0; rdev->supply; rdev = rdev->supply->rdev, i++)
+       mutex_lock(&rdev->mutex);
+       for (i = 1; rdev->supply; rdev = rdev->supply->rdev, i++)
                mutex_lock_nested(&rdev->mutex, i);
 }