Re: [PATCH 1/1] regulator: core: fix a possible race in disable_work handling

From: Tirupathi Reddy T
Date: Wed Jul 12 2017 - 07:46:15 EST




On 7/12/2017 3:32 PM, Mark Brown wrote:
On Wed, Jul 12, 2017 at 02:59:47PM +0530, Tirupathi Reddy wrote:

regulator_disable_deferred: regulator_disable_work:
mutex_lock(&rdev->mutex); .....
rdev->deferred_disables++; mutex_lock(&rdev->mutex);
mutex_unlock(&rdev->mutex); .....
queue_delayed_work(...) count =rdev->deferred_disables;
..... rdev->deferred_disables = 0;
This shows two things simultaneously holding rdev->mutex...
Fixed this in the new patch version(V2).
https://patchwork.kernel.org/patch/9836529/