Re: [PATCH 1/2] regulator: Remove possible deadlock from regulator_enable

From: David Collins
Date: Mon Mar 28 2011 - 14:22:28 EST


On 03/28/2011 11:11 AM, Mark Brown wrote:

>> -/* locks held by regulator_enable() */
>> +/* Locks are *not* held by regulator_enable(). */
>> static int _regulator_enable(struct regulator_dev *rdev)
>> {
>> - int ret, delay;
>> + struct regulator_dev *supply_rdev = NULL;
>> + int ret = 0, delay;
>>
>> + mutex_lock(&rdev->mutex);
>
> This is going to be terribly confusing - the _ versions of the functions
> all by convention rely on their callers taking the mutex, allowing them
> to be safely used from internal APIs.

_regulator_enable is only being called within regulator_enable and
_regulator_enable. Would it remove the confusion to rename
_regulator_enable to something different?

-David

--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/