Messages in this thread | | | From | "Dilger, Andreas" <> | Subject | Re: [PATCH 4/4] Staging: lustre: sparse lock warning fix | Date | Wed, 20 May 2015 16:51:59 +0000 |
| |
On 2015/05/18, 3:21 PM, "Dan Carpenter" <dan.carpenter@oracle.com> wrote:
>On Mon, May 18, 2015 at 08:34:51PM +0200, Adrian Remonda wrote: >> Fixed sparse warning: context imbalance in 'nrs_resource_put_safe' - >> 'different lock contexts for basic block' by releasing the lock on each >> iteration of the for loop. >> > >That changelog doesn't sound correct at all. That's not a correct >motivation or explanation. > >I reviewed the patch and it's likely going to cause dead locks. The code >is trying to take the spinlock for the first pointer in the array and >release it at the end. Now it takes the first pointer's spinlock a >bunch of times (dead lock) and releases it once (will not happen because >we are already dead).
It isn't clear to me what the checkpatch complaint actually means? Is it that the spin_lock() and spin_unlock() calls have different amounts of indentation?
Cheers, Andreas -- Andreas Dilger
Lustre Software Architect Intel High Performance Data Division
| |